load devices in table
configure popup for devices
This commit is contained in:
parent
92ef4cc0c6
commit
b9ba0dbcef
@ -4,7 +4,7 @@
|
|||||||
<component name="JavaScriptSettings">
|
<component name="JavaScriptSettings">
|
||||||
<option name="languageLevel" value="ES6" />
|
<option name="languageLevel" value="ES6" />
|
||||||
</component>
|
</component>
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="11" project-jdk-type="JavaSDK">
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_13" default="true" project-jdk-name="13" project-jdk-type="JavaSDK">
|
||||||
<output url="file://$PROJECT_DIR$/out" />
|
<output url="file://$PROJECT_DIR$/out" />
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
@ -101,12 +101,12 @@ public class MqttService {
|
|||||||
if (timestamp == timestampnow || timestamp == timestampnow + 86400000) { // 86400000 == one day
|
if (timestamp == timestampnow || timestamp == timestampnow + 86400000) { // 86400000 == one day
|
||||||
// valid time
|
// valid time
|
||||||
// TODO: 12.01.20 read right waste type from db and replace below
|
// TODO: 12.01.20 read right waste type from db and replace below
|
||||||
tramsmitMessage(deviceid + "," + "Plastic" + "," + 1);
|
tramsmitMessage(deviceid + "," + getIntTyp("Plastic") + "," + 1);
|
||||||
Log.debug("valid time");
|
Log.debug("valid time");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} while (result.next());
|
} while (result.next());
|
||||||
tramsmitMessage(deviceid + "," + "Plastic" + "," + 0); //transmit zero if not returned before
|
tramsmitMessage(deviceid + "," + getIntTyp("Plastic") + "," + 0); //transmit zero if not returned before
|
||||||
}
|
}
|
||||||
} catch (SQLException | ParseException e) {
|
} catch (SQLException | ParseException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
package com.wasteinformationserver.website.datarequests;
|
package com.wasteinformationserver.website.datarequests;
|
||||||
|
|
||||||
|
import com.wasteinformationserver.basicutils.Log;
|
||||||
import com.wasteinformationserver.db.JDCB;
|
import com.wasteinformationserver.db.JDCB;
|
||||||
import com.wasteinformationserver.website.basicrequest.PostRequest;
|
import com.wasteinformationserver.website.basicrequest.PostRequest;
|
||||||
|
|
||||||
@ -19,25 +20,107 @@ public class DeviceRequest extends PostRequest {
|
|||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
switch (params.get("action")) {
|
switch (params.get("action")) {
|
||||||
case "getdevices":
|
case "getdevices":
|
||||||
ResultSet set = jdcb.executeQuery("SELECT * from devices");
|
ResultSet set = jdcb.executeQuery("SELECT * from devices");
|
||||||
StringBuilder sb = new StringBuilder("{\"data\":[");
|
sb.append("{\"data\":[");
|
||||||
try {
|
try {
|
||||||
while (set.next()) {
|
while (set.next()) {
|
||||||
sb.append("{\"name\":\"" + set.getString("devicename") + "\"}");
|
int deviceid = set.getInt("DeviceID");
|
||||||
|
int cityid = set.getInt("CityID");
|
||||||
|
if (cityid == -1) {
|
||||||
|
//not configured
|
||||||
|
sb.append("{\"deviceid\":\"" + deviceid + "\",\"cityid\":\"" + cityid + "\"}");
|
||||||
|
} else {
|
||||||
|
String devicename = set.getString("DeviceName");
|
||||||
|
String devicelocation = set.getString("DeviceLocation");
|
||||||
|
|
||||||
|
sb.append("{\"deviceid\":\"" + deviceid + "\",\"cityid\":\"" + cityid + "\",\"devicename\":\"" + devicename + "\",\"devicelocation\":\"" + devicelocation + "\"}");
|
||||||
|
}
|
||||||
|
|
||||||
if (!set.isLast()) {
|
if (!set.isLast()) {
|
||||||
sb.append(",");
|
sb.append(",");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
sb.append("]}");
|
sb.append("]}");
|
||||||
return sb.toString();
|
|
||||||
} catch (SQLException e) {
|
} catch (SQLException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
case "getCitynames":
|
||||||
|
set = jdcb.executeQuery("select * from cities");
|
||||||
|
Log.debug(set.toString());
|
||||||
|
sb.append("{");
|
||||||
|
try {
|
||||||
|
String prev = "";
|
||||||
|
while (set.next()) {
|
||||||
|
if (prev.equals(set.getString("name"))) {
|
||||||
|
|
||||||
|
} else {
|
||||||
|
if (!set.isFirst()) {
|
||||||
|
sb.append(",");
|
||||||
|
}
|
||||||
|
sb.append("\"" + set.getString("name") + "\":\"" + set.getString("name") + "\"");
|
||||||
|
}
|
||||||
|
prev = set.getString("name");
|
||||||
|
}
|
||||||
|
} catch (SQLException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
sb.append("}");
|
||||||
|
Log.debug(sb.toString());
|
||||||
|
break;
|
||||||
|
case "getzones":
|
||||||
|
set = jdcb.executeQuery("select * from cities WHERE `name`='" + params.get("cityname") + "' ORDER BY zone ASC");
|
||||||
|
Log.debug(set.toString());
|
||||||
|
sb.append("{\"data\":[");
|
||||||
|
try {
|
||||||
|
int prev = 42;
|
||||||
|
while (set.next()) {
|
||||||
|
if (prev == set.getInt("zone")) {
|
||||||
|
|
||||||
|
} else {
|
||||||
|
sb.append("{\"zone\":\"" + set.getInt("zone") + "\"}");
|
||||||
|
if (!set.isLast()) {
|
||||||
|
sb.append(",");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
prev = set.getInt("zone");
|
||||||
|
}
|
||||||
|
} catch (SQLException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
sb.append("]");
|
||||||
|
sb.append(",\"query\":\"ok\"");
|
||||||
|
sb.append("}");
|
||||||
|
break;
|
||||||
|
case "gettypes":
|
||||||
|
set = jdcb.executeQuery("select * from cities WHERE `name`='" + params.get("cityname") + "' AND `zone`='" + params.get("zonename") + "' ORDER BY zone ASC");
|
||||||
|
Log.debug(set.toString());
|
||||||
|
sb.append("{\"data\":[");
|
||||||
|
try {
|
||||||
|
String prev = "42";
|
||||||
|
while (set.next()) {
|
||||||
|
if (prev == set.getString("wastetype")) {
|
||||||
|
|
||||||
|
} else {
|
||||||
|
sb.append("{\"wastetype\":\"" + set.getString("wastetype") + "\"}");
|
||||||
|
if (!set.isLast()) {
|
||||||
|
sb.append(",");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
prev = set.getString("wastetype");
|
||||||
|
}
|
||||||
|
} catch (SQLException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
sb.append("]");
|
||||||
|
sb.append(",\"query\":\"ok\"");
|
||||||
|
sb.append("}");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
return null;
|
return sb.toString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -183,7 +183,7 @@
|
|||||||
</h3>
|
</h3>
|
||||||
</div><!-- /.card-header -->
|
</div><!-- /.card-header -->
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
<table id="table-pickupdates" class="table table-bordered table-hover">
|
<table id="table-devices" class="table table-bordered table-hover">
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>Device ID</th>
|
<th>Device ID</th>
|
||||||
@ -193,21 +193,7 @@
|
|||||||
<th>X</th>
|
<th>X</th>
|
||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody id="picupdates-tablebody">
|
<tbody id="devices-tablebody">
|
||||||
<tr>
|
|
||||||
<td>42</td>
|
|
||||||
<td>new Device</td>
|
|
||||||
<td>
|
|
||||||
<button type="button" class="btn btn-primary">Configure</button>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>42</td>
|
|
||||||
<td>lukis anziges</td>
|
|
||||||
<td>htl steyr</td>
|
|
||||||
<td>Steyr/2/Plastic</td>
|
|
||||||
<td>del</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
</tbody>
|
||||||
<tfoot>
|
<tfoot>
|
||||||
<tr>
|
<tr>
|
||||||
|
@ -1,8 +1,127 @@
|
|||||||
$(document).ready(function () {
|
$(document).ready(function () {
|
||||||
|
|
||||||
|
|
||||||
$.post('/senddata/Devicedata', 'action=getdevices', function (data) {
|
$.post('/senddata/Devicedata', 'action=getdevices', function (data) {
|
||||||
|
|
||||||
console.log(data);
|
console.log(data);
|
||||||
|
for (var i = 0; i < data.data.length; i++) {
|
||||||
|
var id = data.data[i].deviceid;
|
||||||
|
var cityid = data.data[i].cityid;
|
||||||
|
|
||||||
|
if (cityid == -1) {
|
||||||
|
$("#devices-tablebody").append("<tr><td>" + id + "</td><td>new Device</td><td><button deviceid=\"" + id + "\"type=\"button\" class=\"btn btn-primary configuredevicebutton\">Configure</button></td><td></td><td></td></tr>");
|
||||||
|
} else {
|
||||||
|
var devicename = data.data[i].devicename;
|
||||||
|
var devicelocation = data.data[i].devicelocation;
|
||||||
|
|
||||||
|
$("#devices-tablebody").append("<tr><td>" + id + "</td><td>" + devicename + "</td><td>" + devicelocation + "</td><td>" + cityid + "</td><td>DEL</td></tr>");
|
||||||
|
}
|
||||||
|
console.log();
|
||||||
|
//devices-tablebody
|
||||||
|
|
||||||
|
}
|
||||||
|
$(".configuredevicebutton").click(function (event) {
|
||||||
|
var id = event.target.getAttribute("deviceid");
|
||||||
|
|
||||||
|
$.post('/senddata/Devicedata', 'action=getCitynames', function (data) {
|
||||||
|
Swal.mixin({
|
||||||
|
input: 'text',
|
||||||
|
confirmButtonText: 'Next →',
|
||||||
|
showCancelButton: true,
|
||||||
|
progressSteps: ['1', '2', '3']
|
||||||
|
}).queue([
|
||||||
|
{
|
||||||
|
title: 'Name of device',
|
||||||
|
text: 'Please define a device name'
|
||||||
|
}, {
|
||||||
|
title: 'Location of device',
|
||||||
|
text: 'Please define a device location'
|
||||||
|
}, {
|
||||||
|
title: 'City',
|
||||||
|
text: 'Select your City',
|
||||||
|
input: 'select',
|
||||||
|
inputOptions: data
|
||||||
|
}
|
||||||
|
]).then((result) => {
|
||||||
|
if (result.value) {
|
||||||
|
console.log(result.value);
|
||||||
|
const answers = JSON.stringify(result.value);
|
||||||
|
|
||||||
|
Swal.mixin({
|
||||||
|
input: 'text',
|
||||||
|
confirmButtonText: 'Next →',
|
||||||
|
showCancelButton: true,
|
||||||
|
progressSteps: ['1']
|
||||||
|
}).queue([
|
||||||
|
{
|
||||||
|
title: 'City',
|
||||||
|
text: 'Select your City',
|
||||||
|
input: 'select',
|
||||||
|
inputOptions: {
|
||||||
|
'SRB': 'Serbia', // How do I dynamically set value?
|
||||||
|
'UKR': 'Ukraine',
|
||||||
|
'HRV': 'Croatia'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]).then((result) => {
|
||||||
|
if (result.value) {
|
||||||
|
console.log(result.value);
|
||||||
|
|
||||||
|
Swal.mixin({
|
||||||
|
input: 'text',
|
||||||
|
confirmButtonText: 'Next →',
|
||||||
|
showCancelButton: true,
|
||||||
|
progressSteps: ['1']
|
||||||
|
}).queue([
|
||||||
|
{
|
||||||
|
title: 'City',
|
||||||
|
text: 'Select your City',
|
||||||
|
input: 'select',
|
||||||
|
inputOptions: {
|
||||||
|
'SRB': 'Serbia', // How do I dynamically set value?
|
||||||
|
'UKR': 'Ukraine',
|
||||||
|
'HRV': 'Croatia'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]).then((result) => {
|
||||||
|
if (result.value) {
|
||||||
|
console.log(result.value);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
console.log("click..." + id);
|
||||||
|
});
|
||||||
|
/*
|
||||||
|
,{
|
||||||
|
title: 'Zone',
|
||||||
|
text: 'Select the Waste Zone',
|
||||||
|
input: 'select',
|
||||||
|
inputOptions: {
|
||||||
|
'SRB': 'Serbia', // How do I dynamically set value?
|
||||||
|
'UKR': 'Ukraine',
|
||||||
|
'HRV': 'Croatia'
|
||||||
|
}
|
||||||
|
},{
|
||||||
|
title: 'Type',
|
||||||
|
text: 'Select the Waste type',
|
||||||
|
input: 'select',
|
||||||
|
inputOptions: {
|
||||||
|
'SRB': 'Serbia', // How do I dynamically set value?
|
||||||
|
'UKR': 'Ukraine',
|
||||||
|
'HRV': 'Croatia'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
var test = $('#table-devices').DataTable();
|
||||||
}, 'json');
|
}, 'json');
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user