Compare commits
	
		
			2 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| a586c2308e | |||
| c7a657ce3c | 
@@ -30,6 +30,7 @@ dependencies {
 | 
				
			|||||||
    compile group: 'org.eclipse.paho', name: 'org.eclipse.paho.client.mqttv3', version: '1.2.2'
 | 
					    compile group: 'org.eclipse.paho', name: 'org.eclipse.paho.client.mqttv3', version: '1.2.2'
 | 
				
			||||||
    compile group: 'mysql',name:'mysql-connector-java',version: '8.0.18'
 | 
					    compile group: 'mysql',name:'mysql-connector-java',version: '8.0.18'
 | 
				
			||||||
    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
 | 
					    implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8"
 | 
				
			||||||
 | 
					    implementation 'com.google.code.gson:gson:2.8.6'
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
task run (type: JavaExec){
 | 
					task run (type: JavaExec){
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,5 +1,9 @@
 | 
				
			|||||||
package com.wasteinformationserver.website.datarequests
 | 
					package com.wasteinformationserver.website.datarequests
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.google.gson.Gson
 | 
				
			||||||
 | 
					import com.google.gson.JsonArray
 | 
				
			||||||
 | 
					import com.google.gson.JsonObject
 | 
				
			||||||
 | 
					import com.wasteinformationserver.basicutils.Log
 | 
				
			||||||
import com.wasteinformationserver.basicutils.Log.Log.debug
 | 
					import com.wasteinformationserver.basicutils.Log.Log.debug
 | 
				
			||||||
import com.wasteinformationserver.basicutils.Log.Log.error
 | 
					import com.wasteinformationserver.basicutils.Log.Log.error
 | 
				
			||||||
import com.wasteinformationserver.db.JDBC
 | 
					import com.wasteinformationserver.db.JDBC
 | 
				
			||||||
@@ -19,39 +23,58 @@ class DeviceRequest : PostRequest() {
 | 
				
			|||||||
        }
 | 
					        }
 | 
				
			||||||
        val sb = StringBuilder()
 | 
					        val sb = StringBuilder()
 | 
				
			||||||
        var deviceset: ResultSet
 | 
					        var deviceset: ResultSet
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        val gson = Gson()
 | 
				
			||||||
 | 
					        val elem = gson.toJsonTree(Object())
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        when (params["action"]) {
 | 
					        when (params["action"]) {
 | 
				
			||||||
            "getdevices" -> {
 | 
					            "getdevices" -> {
 | 
				
			||||||
                deviceset = jdbc!!.executeQuery("SELECT * FROM `devices")
 | 
					                deviceset = jdbc!!.executeQuery("SELECT * FROM `devices")
 | 
				
			||||||
 | 
					                elem.asJsonObject.add("data", JsonArray())
 | 
				
			||||||
                sb.append("{\"data\":[")
 | 
					                sb.append("{\"data\":[")
 | 
				
			||||||
                try {
 | 
					                try {
 | 
				
			||||||
                    while (deviceset.next()) {
 | 
					                    while (deviceset.next()) {
 | 
				
			||||||
                        val deviceid = deviceset.getInt("DeviceID")
 | 
					                        val deviceid = deviceset.getInt("DeviceID")
 | 
				
			||||||
                        val cityid = deviceset.getInt("CityID")
 | 
					                        val cityid = deviceset.getInt("CityID")
 | 
				
			||||||
                        if (cityid == -1) {
 | 
					                        if (cityid == -1) {
 | 
				
			||||||
                            sb.append("{\"deviceid\":\"").append(deviceid).append("\",\"cityid\":\"").append(cityid).append("\"}")
 | 
					                            val obj = JsonObject()
 | 
				
			||||||
 | 
					                            obj.addProperty("deviceid", deviceid)
 | 
				
			||||||
 | 
					                            obj.addProperty("cityid", cityid)
 | 
				
			||||||
 | 
					                            elem.asJsonObject.get("data").asJsonArray.add(obj)
 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
                        else {
 | 
					                        else {
 | 
				
			||||||
 | 
					                            val obj = JsonObject()
 | 
				
			||||||
                            val devicename = deviceset.getString("DeviceName")
 | 
					                            val devicename = deviceset.getString("DeviceName")
 | 
				
			||||||
                            val devicelocation = deviceset.getString("DeviceLocation")
 | 
					                            val devicelocation = deviceset.getString("DeviceLocation")
 | 
				
			||||||
                            sb.append("{\"deviceid\":\"").append(deviceid).append("\",\"devicename\":\"").append(devicename).append("\",\"devicelocation\":\"").append(devicelocation).append("\",\"devices\":[")
 | 
					                            obj.addProperty("deviceid", deviceid)
 | 
				
			||||||
 | 
					                            obj.addProperty("devicename", devicename)
 | 
				
			||||||
 | 
					                            obj.addProperty("devicelocation", devicelocation)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                            val locations = JsonArray()
 | 
				
			||||||
 | 
					                            obj.add("locations", locations)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                            elem.asJsonObject.get("data").asJsonArray.add(obj)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                            val devicecities = jdbc.executeQuery("SELECT * FROM `device_city` INNER JOIN `cities` ON device_city.CityID=cities.id WHERE `DeviceID`='$deviceid'")
 | 
					                            val devicecities = jdbc.executeQuery("SELECT * FROM `device_city` INNER JOIN `cities` ON device_city.CityID=cities.id WHERE `DeviceID`='$deviceid'")
 | 
				
			||||||
                            while (devicecities.next()) {
 | 
					                            while (devicecities.next()) {
 | 
				
			||||||
                                val cityidd = devicecities.getInt("id")
 | 
					                                val cityidd = devicecities.getInt("id")
 | 
				
			||||||
                                val cityname = devicecities.getString("name")
 | 
					                                val cityname = devicecities.getString("name")
 | 
				
			||||||
                                val wastetype = devicecities.getString("wastetype")
 | 
					                                val wastetype = devicecities.getString("wastetype")
 | 
				
			||||||
                                val zone = devicecities.getString("zone")
 | 
					                                val zone = devicecities.getString("zone")
 | 
				
			||||||
                                sb.append("{\"cityid\":\"").append(cityidd).append("\",\"cityname\":\"").append(cityname).append("\",\"wastetype\":\"").append(wastetype).append("\",\"zone\":\"").append(zone).append("\"}")
 | 
					
 | 
				
			||||||
                                if (!devicecities.isLast) {
 | 
					                                val objc = JsonObject()
 | 
				
			||||||
                                    sb.append(",")
 | 
					                                objc.addProperty("cityid", cityidd)
 | 
				
			||||||
                                }
 | 
					                                objc.addProperty("cityname", cityname)
 | 
				
			||||||
 | 
					                                objc.addProperty("wastetype", wastetype)
 | 
				
			||||||
 | 
					                                objc.addProperty("zone", zone)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					                                locations.add(objc)
 | 
				
			||||||
 | 
					                                // todo better var names
 | 
				
			||||||
 | 
					                                // todo implement in js and other methods
 | 
				
			||||||
                            }
 | 
					                            }
 | 
				
			||||||
                            sb.append("]}")
 | 
					 | 
				
			||||||
                        }
 | 
					 | 
				
			||||||
                        if (!deviceset.isLast) {
 | 
					 | 
				
			||||||
                            sb.append(",")
 | 
					 | 
				
			||||||
                        }
 | 
					                        }
 | 
				
			||||||
                    }
 | 
					                    }
 | 
				
			||||||
                    sb.append("]}")
 | 
					                    Log.debug(gson.toJson(elem))
 | 
				
			||||||
                } catch (e: SQLException) {
 | 
					                } catch (e: SQLException) {
 | 
				
			||||||
                    e.printStackTrace()
 | 
					                    e.printStackTrace()
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user