Commit b5043884 authored by bijingchen's avatar bijingchen

1.优化获取警情检测接口代码 2. 增加温湿度接口 3.增加温湿度定时任务

parent b268bb53
...@@ -226,7 +226,7 @@ public class MainConfig extends JFinalConfig { ...@@ -226,7 +226,7 @@ public class MainConfig extends JFinalConfig {
// modbusCodeLogService.save("",1); // modbusCodeLogService.save("",1);
// serverController.DemoDataServer(); // serverController.DemoDataServer();
new ScheduledTaskExample().run(); // new ScheduledTaskExample().run();
} }
......
...@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON; ...@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.archser.sams.model.SlAlertLog; import com.archser.sams.model.SlAlertLog;
import com.archser.sams.model.SlEnvironmentLog;
import com.archser.sams.util.HttpRequestUtil; import com.archser.sams.util.HttpRequestUtil;
import com.jfinal.kit.Kv; import com.jfinal.kit.Kv;
import com.jfinal.plugin.activerecord.Db; import com.jfinal.plugin.activerecord.Db;
...@@ -11,16 +12,18 @@ import com.jfinal.plugin.activerecord.Record; ...@@ -11,16 +12,18 @@ import com.jfinal.plugin.activerecord.Record;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List; import java.util.List;
public class ArchiveInterfaceService { public class ArchiveInterfaceService {
static final String url = "http://10.19.57.223:3334/DeviceManager"; static final String url = "http://10.19.57.223:3334/DeviceManager";
//漏水检测接口 //警情检测接口
public void alertList() { public void alertList() {
System.err.println("进入alertList>>>"); System.err.println("进入alertList>>>");
Kv kv = new Kv(); Kv kv = new Kv();
kv.set("server_name", "可视化").set("device_id", "0").set("alert_type", "") kv.set("server_name", "警情检测").set("device_id", "0").set("alert_type", "")
.set("start_day", "2023-1-1").set("end_day", "2023-12-30") .set("start_day", "2023-1-1").set("end_day", "2023-12-30")
.set("isDispose", "-1"); .set("isDispose", "-1");
String jsonKv = JSONObject.toJSONString(kv); String jsonKv = JSONObject.toJSONString(kv);
...@@ -29,10 +32,12 @@ public class ArchiveInterfaceService { ...@@ -29,10 +32,12 @@ public class ArchiveInterfaceService {
List<Record> list1 = new ArrayList<>(); List<Record> list1 = new ArrayList<>();
List<Record> list2 = new ArrayList<>(); List<Record> list2 = new ArrayList<>();
List<Record> list3 = new ArrayList<>(); List<Record> list3 = new ArrayList<>();
List<Record> list4 = new ArrayList<>();
List<Record> ls = Db.find("select id from sl_library where name IN ('一号库房', '二号库房','三号库房','智能库房','不动产库房')"); List<Record> ls = Db.find("select id from sl_library where name IN ('一号库房', '二号库房','智能库房','不动产库房')");
List<Record> le = Db.find("SELECT id FROM sl_equipment WHERE LIB_ID IN(select id from sl_library where name IN ('一号库房', '二号库房','三号库房','智能库房','不动产库房'))and name = '漏水感应模块'"); List<Record> loushui = Db.find("SELECT id FROM sl_equipment WHERE LIB_ID IN(select id from sl_library where name IN ('一号库房', '二号库房','智能库房','不动产库房'))and name = '漏水感应模块'");
List<Record> yunceyi = Db.find("SELECT id FROM sl_equipment WHERE LIB_ID IN(select id from sl_library where name IN ('一号库房', '二号库房','智能库房','不动产库房'))and name = '云测仪'");
List<Record> hengshiji = Db.find("SELECT id FROM sl_equipment WHERE LIB_ID IN(select id from sl_library where name IN ('一号库房', '二号库房','智能库房','不动产库房'))and name = '恒湿机'");
JSONObject jsonObject = JSON.parseObject(result); JSONObject jsonObject = JSON.parseObject(result);
JSONArray data = jsonObject.getJSONArray("data"); JSONArray data = jsonObject.getJSONArray("data");
int code = jsonObject.getInteger("code"); int code = jsonObject.getInteger("code");
...@@ -42,77 +47,42 @@ public class ArchiveInterfaceService { ...@@ -42,77 +47,42 @@ public class ArchiveInterfaceService {
if (code == 20029) { if (code == 20029) {
for (int i = 0; i < data.size(); i++) { for (int i = 0; i < data.size(); i++) {
List<Record> tableinfo = Db.find("select * from sl_alert_log where WRITEBACK = " + data.getJSONObject(i).getInteger("ID")); List<Record> tableinfo = Db.find("select * from sl_alert_log where WRITEBACK = " + data.getJSONObject(i).getInteger("ID"));
System.err.println("tableinfo>>>"+tableinfo.size()); System.err.println("tableinfo>>>" + tableinfo.size());
if (tableinfo.size() == 0) { if (tableinfo.size() == 0) {
System.err.println(data.getJSONObject(i).get("ROOMNAME")); if (!data.getJSONObject(i).get("ALARTTYPECONTENT").equals("上线")) {
if (data.getJSONObject(i).get("DEVICETYPENAME").equals("漏水探测器")) {
if (data.getJSONObject(i).get("ROOMNAME").equals("库房一")) { if (data.getJSONObject(i).get("ROOMNAME").equals("库房一")) {
if (data.getJSONObject(i).get("DEVICETYPENAME").equals("漏水探测器") && !data.getJSONObject(i).get("ALARTTYPECONTENT").equals("上线")) { processAlertData(list, loushui.get(0), ls.get(0), data.getJSONObject(i), sdf);
// list.add(new Record().set("ID", SlAlertLog.SEQ_NEXTVAL) } else if (data.getJSONObject(i).get("ROOMNAME").equals("库房二")) {
// .set("EQUIPMENT_ID", le.get(0).get("id")) processAlertData(list1, loushui.get(1), ls.get(1), data.getJSONObject(i), sdf);
// .set("ALERT_TYPE_ID", 2) } else if (data.getJSONObject(i).get("ROOMNAME").equals("智能库房")) {
// .set("LIB_ID", ls.get(0).get("id")) processAlertData(list2, loushui.get(2), ls.get(2), data.getJSONObject(i), sdf);
// .set("TIME", sdf.format(data.getJSONObject(i).get("UPDATEDATE"))) } else if (data.getJSONObject(i).get("ROOMNAME").equals("不动产库房")) {
// .set("STATUS", data.getJSONObject(i).getInteger("isDispose") == 0 ? 0 : 9) processAlertData(list3, loushui.get(3), ls.get(3), data.getJSONObject(i), sdf);
// .set("RELIEVE", data.getJSONObject(i).get("isDispose"))
// .set("INFO", data.getJSONObject(i).get("ALARTTYPECONTENT"))
// .set("WRITEBACK", data.getJSONObject(i).getInteger("ID")));
processAlertData(list, le.get(0), ls.get(0), data.getJSONObject(i), sdf);
} }
} else if (data.getJSONObject(i).get("DEVICETYPENAME").equals("云测仪")) {
if (data.getJSONObject(i).get("ROOMNAME").equals("库房一")) {
processAlertData(list, yunceyi.get(0), ls.get(0), data.getJSONObject(i), sdf);
} else if (data.getJSONObject(i).get("ROOMNAME").equals("库房二")) { } else if (data.getJSONObject(i).get("ROOMNAME").equals("库房二")) {
if (data.getJSONObject(i).get("DEVICETYPENAME").equals("漏水探测器") && !data.getJSONObject(i).get("ALARTTYPECONTENT").equals("上线")) { processAlertData(list1, yunceyi.get(1), ls.get(1), data.getJSONObject(i), sdf);
// list1.add(new Record().set("ID", SlAlertLog.SEQ_NEXTVAL) } else if (data.getJSONObject(i).get("ROOMNAME").equals("智能库房")) {
// .set("EQUIPMENT_ID", le.get(1).get("id")) processAlertData(list2, yunceyi.get(2), ls.get(2), data.getJSONObject(i), sdf);
// .set("ALERT_TYPE_ID", 2) } else if (data.getJSONObject(i).get("ROOMNAME").equals("不动产库房")) {
// .set("LIB_ID", ls.get(1).get("id")) processAlertData(list3, yunceyi.get(3), ls.get(3), data.getJSONObject(i), sdf);
// .set("TIME", sdf.format(data.getJSONObject(i).get("UPDATEDATE")))
// .set("STATUS", data.getJSONObject(i).getInteger("isDispose") == 0 ? 0 : 9)
// .set("RELIEVE", data.getJSONObject(i).get("isDispose"))
// .set("INFO", data.getJSONObject(i).get("ALARTTYPECONTENT"))
// .set("WRITEBACK", data.getJSONObject(i).getInteger("ID")));
processAlertData(list1, le.get(1), ls.get(1), data.getJSONObject(i), sdf);
}
} else if (data.getJSONObject(i).get("ROOMNAME").equals("库房三")) {
if (data.getJSONObject(i).get("DEVICETYPENAME").equals("漏水探测器") && !data.getJSONObject(i).get("ALARTTYPECONTENT").equals("上线")) {
// list2.add(new Record().set("ID", SlAlertLog.SEQ_NEXTVAL)
// .set("EQUIPMENT_ID", le.get(2).get("id"))
// .set("ALERT_TYPE_ID", 2)
// .set("LIB_ID", ls.get(2).get("id"))
// .set("TIME", sdf.format(data.getJSONObject(i).get("UPDATEDATE")))
// .set("STATUS", data.getJSONObject(i).getInteger("isDispose") == 0 ? 0 : 9)
// .set("RELIEVE", data.getJSONObject(i).get("isDispose"))
// .set("INFO", data.getJSONObject(i).get("ALARTTYPECONTENT"))
// .set("WRITEBACK", data.getJSONObject(i).getInteger("ID")));
processAlertData(list2, le.get(2), ls.get(2), data.getJSONObject(i), sdf);
} }
} else if (data.getJSONObject(i).get("DEVICETYPENAME").equals("恒湿机")) {
if (data.getJSONObject(i).get("ROOMNAME").equals("库房一")) {
processAlertData(list, hengshiji.get(0), ls.get(0), data.getJSONObject(i), sdf);
} else if (data.getJSONObject(i).get("ROOMNAME").equals("库房二")) {
processAlertData(list1, hengshiji.get(1), ls.get(1), data.getJSONObject(i), sdf);
} else if (data.getJSONObject(i).get("ROOMNAME").equals("智能库房")) { } else if (data.getJSONObject(i).get("ROOMNAME").equals("智能库房")) {
if (data.getJSONObject(i).get("DEVICETYPENAME").equals("漏水探测器") && !data.getJSONObject(i).get("ALARTTYPECONTENT").equals("上线")) { processAlertData(list2, hengshiji.get(2), ls.get(2), data.getJSONObject(i), sdf);
// list3.add(new Record().set("ID", SlAlertLog.SEQ_NEXTVAL) } else if (data.getJSONObject(i).get("ROOMNAME").equals("不动产库房")) {
// .set("EQUIPMENT_ID", le.get(3).get("id")) processAlertData(list3, hengshiji.get(3), ls.get(3), data.getJSONObject(i), sdf);
// .set("ALERT_TYPE_ID", 2) }
// .set("LIB_ID", ls.get(3).get("id")) }
// .set("TIME", sdf.format(data.getJSONObject(i).get("UPDATEDATE"))) }
// .set("STATUS", data.getJSONObject(i).getInteger("isDispose") == 0 ? 0 : 9) } else {
// .set("RELIEVE", data.getJSONObject(i).get("isDispose"))
// .set("INFO", data.getJSONObject(i).get("ALARTTYPECONTENT"))
// .set("WRITEBACK", data.getJSONObject(i).getInteger("ID")));
processAlertData(list3, le.get(3), ls.get(3), data.getJSONObject(i), sdf);
}
} else if(data.getJSONObject(i).get("ROOMNAME").equals("不动产库房")){
if (data.getJSONObject(i).get("DEVICETYPENAME").equals("漏水探测器") && !data.getJSONObject(i).get("ALARTTYPECONTENT").equals("上线")) {
// list4.add(new Record().set("ID", SlAlertLog.SEQ_NEXTVAL)
// .set("EQUIPMENT_ID", le.get(4).get("id"))
// .set("ALERT_TYPE_ID", 2)
// .set("LIB_ID", ls.get(4).get("id"))
// .set("TIME", sdf.format(data.getJSONObject(i).get("UPDATEDATE")))
// .set("STATUS", data.getJSONObject(i).getInteger("isDispose") == 0 ? 0 : 9)
// .set("RELIEVE", data.getJSONObject(i).get("isDispose"))
// .set("INFO", data.getJSONObject(i).get("ALARTTYPECONTENT"))
// .set("WRITEBACK", data.getJSONObject(i).getInteger("ID")));
processAlertData(list4, le.get(4), ls.get(4), data.getJSONObject(i), sdf);
}
}
}else {
System.err.println("重复数据-跳过》》》》"); System.err.println("重复数据-跳过》》》》");
continue; continue;
} }
...@@ -122,7 +92,6 @@ public class ArchiveInterfaceService { ...@@ -122,7 +92,6 @@ public class ArchiveInterfaceService {
allList.addAll(list1); allList.addAll(list1);
allList.addAll(list2); allList.addAll(list2);
allList.addAll(list3); allList.addAll(list3);
allList.addAll(list4);
Db.batchSave("sl_alert_log", allList, allList.size()); Db.batchSave("sl_alert_log", allList, allList.size());
System.err.println("结束alertList>>>"); System.err.println("结束alertList>>>");
...@@ -141,4 +110,72 @@ public class ArchiveInterfaceService { ...@@ -141,4 +110,72 @@ public class ArchiveInterfaceService {
.set("INFO", dataObject.get("ALARTTYPECONTENT")) .set("INFO", dataObject.get("ALARTTYPECONTENT"))
.set("WRITEBACK", dataObject.getInteger("ID"))); .set("WRITEBACK", dataObject.getInteger("ID")));
} }
//获取库房
public void GetRoow() {
Db.delete("DELETE from sl_environment_log");
System.err.println("删除 sl_environment_log 数据》》》》");
List<Record> hengshiji = Db.find("SELECT id FROM sl_equipment WHERE LIB_ID IN(select id from sl_library where name IN ('一号库房', '二号库房','智能库房','不动产库房'))and name = '恒湿机'");
Kv kv = new Kv();
kv.set("server_name", "库房");
String jsonKv = JSONObject.toJSONString(kv);
String result = HttpRequestUtil.sendPost(url + "/GetRooms", jsonKv);
JSONObject jsonObject = JSON.parseObject(result);
JSONArray data = jsonObject.getJSONArray("data");
int code = jsonObject.getInteger("code");
if (code == 20003) {
for (int i = 0; i < data.size(); i++) {
if (data.getJSONObject(i).get("room_name").equals("库房一")) {
GetRoomWSD24List(2, hengshiji.get(0));
} else if (data.getJSONObject(i).get("room_name").equals("库房二")) {
GetRoomWSD24List(3, hengshiji.get(1));
} else if (data.getJSONObject(i).get("room_name").equals("智能库房")) {
GetRoomWSD24List(4, hengshiji.get(3));
} else if (data.getJSONObject(i).get("room_name").equals("不动产库房")) {
GetRoomWSD24List(1, hengshiji.get(3));
}
}
}
}
//获取温湿度
public void GetRoomWSD24List(int index, Record equipment) {
System.err.println("GetRoomWSD24List>>>");
SimpleDateFormat sdf = new SimpleDateFormat("yyy-MM-dd HH:mm:ss");
Kv kv = new Kv();
List<Record> list = new ArrayList<>();
kv.set("server_name", "温湿度").set("room_id", index).set("day", "0");
System.err.println(kv);
String jsonKv = JSONObject.toJSONString(kv);
String result = HttpRequestUtil.sendPost(url + "/GetRoomWSD24List", jsonKv);
JSONObject jsonObject = JSON.parseObject(result);
JSONArray data = jsonObject.getJSONArray("data");
int code = jsonObject.getInteger("code");
System.err.println(code);
if (code == 20015) {
for (int i = 0; i < data.size(); i++) {
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, data.getJSONObject(i).getInteger("time"));
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
Date dateTime = calendar.getTime();
list.add(new Record()
.set("ID", SlEnvironmentLog.SEQ_NEXTVAL)
.set("EQUIPMENT_ID", equipment.get("id"))
.set("START_TIME",sdf.format(dateTime))
.set("TEMP_LO", data.getJSONObject(i).get("temp"))
.set("TEMP_HI", data.getJSONObject(i).get("temp"))
.set("HUMIDITY_LO", data.getJSONObject(i).get("hum"))
.set("HUMIDITY_HI", data.getJSONObject(i).get("hum"))
.set("TEMP_LO_TIME", sdf.format(dateTime))
.set("TEMP_HI_TIME", sdf.format(dateTime))
.set("HUMIDITY_LO_TIME", sdf.format(dateTime))
.set("HUMIDITY_HI_TIME", sdf.format(dateTime))
.set("TEMP", data.getJSONObject(i).get("temp"))
.set("HUMIDITY", data.getJSONObject(i).get("hum")));
}
Db.batchSave("sl_environment_log", list, list.size());
System.err.println("结束GetRoomWSD24List>>>");
}
}
} }
...@@ -10,6 +10,7 @@ public class ScheduledTaskExample implements ITask { ...@@ -10,6 +10,7 @@ public class ScheduledTaskExample implements ITask {
System.out.println("定时任务执行"); System.out.println("定时任务执行");
ArchiveInterfaceService archiveInterfaceService = new ArchiveInterfaceService(); ArchiveInterfaceService archiveInterfaceService = new ArchiveInterfaceService();
archiveInterfaceService.alertList(); archiveInterfaceService.alertList();
archiveInterfaceService.GetRoow();
System.err.println("定时任务结束"); System.err.println("定时任务结束");
// ArchiveInterfaceController archiveInterfaceController = new ArchiveInterfaceController(); // ArchiveInterfaceController archiveInterfaceController = new ArchiveInterfaceController();
// archiveInterfaceController.list(); // archiveInterfaceController.list();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment