load devices in table
configure popup for devices
This commit is contained in:
parent
92ef4cc0c6
commit
b9ba0dbcef
@ -4,7 +4,7 @@
|
||||
<component name="JavaScriptSettings">
|
||||
<option name="languageLevel" value="ES6" />
|
||||
</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" />
|
||||
</component>
|
||||
</project>
|
@ -101,12 +101,12 @@ public class MqttService {
|
||||
if (timestamp == timestampnow || timestamp == timestampnow + 86400000) { // 86400000 == one day
|
||||
// valid time
|
||||
// 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");
|
||||
return;
|
||||
}
|
||||
} 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) {
|
||||
e.printStackTrace();
|
||||
|
@ -1,5 +1,6 @@
|
||||
package com.wasteinformationserver.website.datarequests;
|
||||
|
||||
import com.wasteinformationserver.basicutils.Log;
|
||||
import com.wasteinformationserver.db.JDCB;
|
||||
import com.wasteinformationserver.website.basicrequest.PostRequest;
|
||||
|
||||
@ -19,25 +20,107 @@ public class DeviceRequest extends PostRequest {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
switch (params.get("action")) {
|
||||
case "getdevices":
|
||||
ResultSet set = jdcb.executeQuery("SELECT * from devices");
|
||||
StringBuilder sb = new StringBuilder("{\"data\":[");
|
||||
sb.append("{\"data\":[");
|
||||
try {
|
||||
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()) {
|
||||
sb.append(",");
|
||||
}
|
||||
}
|
||||
sb.append("]}");
|
||||
return sb.toString();
|
||||
} catch (SQLException e) {
|
||||
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(",");
|
||||
}
|
||||
return null;
|
||||
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;
|
||||
}
|
||||
return sb.toString();
|
||||
}
|
||||
}
|
||||
|
@ -183,7 +183,7 @@
|
||||
</h3>
|
||||
</div><!-- /.card-header -->
|
||||
<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>
|
||||
<tr>
|
||||
<th>Device ID</th>
|
||||
@ -193,21 +193,7 @@
|
||||
<th>X</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="picupdates-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 id="devices-tablebody">
|
||||
</tbody>
|
||||
<tfoot>
|
||||
<tr>
|
||||
|
@ -1,8 +1,127 @@
|
||||
$(document).ready(function () {
|
||||
|
||||
|
||||
$.post('/senddata/Devicedata', 'action=getdevices', function (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');
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user