|
@@ -50,6 +50,7 @@ public class LiveDataTask {
|
|
|
|
|
|
|
|
|
|
|
|
|
//获取异步结果
|
|
//获取异步结果
|
|
|
|
|
+ //处理案件平台数据
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public Future<String> alarmTask(String liveData) {
|
|
public Future<String> alarmTask(String liveData) {
|
|
|
try {
|
|
try {
|
|
@@ -236,12 +237,88 @@ public class LiveDataTask {
|
|
|
return new AsyncResult<String>("完成");
|
|
return new AsyncResult<String>("完成");
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-
|
|
|
|
|
- public Future<String> liveTask(Map<String, Object> liveData) {
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 处理思迪数据
|
|
|
|
|
+ * 数据格式:
|
|
|
|
|
+ * {
|
|
|
|
|
+ * "dataTime": "2020-12-02 15:43:57",
|
|
|
|
|
+ * "dataModel": "DataRTU_2011090C07G2_1",
|
|
|
|
|
+ * "data": {
|
|
|
|
|
+ * "m6": "0",
|
|
|
|
|
+ * "m7": "0",
|
|
|
|
|
+ * "s16": "0",
|
|
|
|
|
+ * "k2": "0",
|
|
|
|
|
+ * "k15": "0",
|
|
|
|
|
+ * "deviceId": "2011090C07G2",
|
|
|
|
|
+ * "s3": "0",
|
|
|
|
|
+ * "k3": "0",
|
|
|
|
|
+ * "m9": "0",
|
|
|
|
|
+ * "s1": "0",
|
|
|
|
|
+ * "k8": "0",
|
|
|
|
|
+ * "k9": "0",
|
|
|
|
|
+ * "m15": "0",
|
|
|
|
|
+ * "s4": "1",
|
|
|
|
|
+ * "s6": "1",
|
|
|
|
|
+ * "s23": "0",
|
|
|
|
|
+ * "s24": "0",
|
|
|
|
|
+ * "m4": "0",
|
|
|
|
|
+ * "s2": "0",
|
|
|
|
|
+ * "s14": "0",
|
|
|
|
|
+ * "s19": "0",
|
|
|
|
|
+ * "m11": "0",
|
|
|
|
|
+ * "m16": "0",
|
|
|
|
|
+ * "k1": "0",
|
|
|
|
|
+ * "m12": "0",
|
|
|
|
|
+ * "s13": "0",
|
|
|
|
|
+ * "s15": "0",
|
|
|
|
|
+ * "s17": "0",
|
|
|
|
|
+ * "s18": "0",
|
|
|
|
|
+ * "s20": "0",
|
|
|
|
|
+ * "s22": "0",
|
|
|
|
|
+ * "m2": "0",
|
|
|
|
|
+ * "m3": "0",
|
|
|
|
|
+ * "s8": "1",
|
|
|
|
|
+ * "k4": "0",
|
|
|
|
|
+ * "m1": "1398",
|
|
|
|
|
+ * "m5": "0",
|
|
|
|
|
+ * "s5": "1",
|
|
|
|
|
+ * "k6": "0",
|
|
|
|
|
+ * "k10": "0",
|
|
|
|
|
+ * "m10": "0",
|
|
|
|
|
+ * "m13": "0",
|
|
|
|
|
+ * "k16": "0",
|
|
|
|
|
+ * "s11": "0",
|
|
|
|
|
+ * "s21": "0",
|
|
|
|
|
+ * "s7": "1",
|
|
|
|
|
+ * "m8": "0",
|
|
|
|
|
+ * "s9": "0",
|
|
|
|
|
+ * "m14": "0",
|
|
|
|
|
+ * "k5": "0",
|
|
|
|
|
+ * "k12": "0",
|
|
|
|
|
+ * "k13": "0",
|
|
|
|
|
+ * "k14": "0",
|
|
|
|
|
+ * "RtuNo": "1",
|
|
|
|
|
+ * "模拟量": "0576000000000000000000000000000000000000000000000000000000000000",
|
|
|
|
|
+ * "s10": "0",
|
|
|
|
|
+ * "k11": "0",
|
|
|
|
|
+ * "DeviceNo": "2011090C07G2",
|
|
|
|
|
+ * "开关量": "0000",
|
|
|
|
|
+ * "k7": "0",
|
|
|
|
|
+ * "数字量": "1f0000",
|
|
|
|
|
+ * "s12": "0"
|
|
|
|
|
+ * }
|
|
|
|
|
+ * }
|
|
|
|
|
+ *
|
|
|
|
|
+ * @param liveData
|
|
|
|
|
+ * @return
|
|
|
|
|
+ */
|
|
|
|
|
+ public Future<String> liveTask(String liveData) {
|
|
|
try {
|
|
try {
|
|
|
String token = "8a81e3166b379ce3016b37bab1bc000d";
|
|
String token = "8a81e3166b379ce3016b37bab1bc000d";
|
|
|
- String reportTime = (String) liveData.get("CreateDataTime");
|
|
|
|
|
- String deviceId = String.valueOf(liveData.get("deviceId"));//获取设备编号
|
|
|
|
|
|
|
+ JSONObject jo = JSON.parseObject(liveData);
|
|
|
|
|
+ String reportTime = jo.getString("dataTime");//获取上报时间
|
|
|
|
|
+ JSONObject jsonData = JSON.parseObject(jo.getString("data"));//获取设备信息
|
|
|
|
|
+ String deviceId = String.valueOf(jsonData.get("deviceId"));//获取设备编号
|
|
|
DeviceInfo deviceInfo = deviceInfoService.getDeviceInfoById(deviceId);
|
|
DeviceInfo deviceInfo = deviceInfoService.getDeviceInfoById(deviceId);
|
|
|
if (deviceInfo != null) {
|
|
if (deviceInfo != null) {
|
|
|
String startTime = deviceInfo.getWorkTimeFrom();
|
|
String startTime = deviceInfo.getWorkTimeFrom();
|
|
@@ -251,11 +328,12 @@ public class LiveDataTask {
|
|
|
Date nowDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(reportTime);
|
|
Date nowDate = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(reportTime);
|
|
|
//如果未设置时间或者当前时间在工作范围内
|
|
//如果未设置时间或者当前时间在工作范围内
|
|
|
if (CommonUtils.isEffectiveDate(sf.parse(now), sf.parse(startTime), sf.parse(endTime))) {
|
|
if (CommonUtils.isEffectiveDate(sf.parse(now), sf.parse(startTime), sf.parse(endTime))) {
|
|
|
- int count = sensorInfoService.getSensorCount(deviceId);//获取该设备下的传感器数量
|
|
|
|
|
- if (count > 0) {
|
|
|
|
|
- for (int i = 0; i < count; i++) {//循环插入数据库
|
|
|
|
|
- String seq = "m" + (i + 1);//传感器编号
|
|
|
|
|
- double val = Double.valueOf(liveData.get(seq) + "");
|
|
|
|
|
|
|
+// int count = sensorInfoService.getSensorCount(deviceId);//获取该设备下的传感器数量
|
|
|
|
|
+// if (count > 0) {
|
|
|
|
|
+// for (int i = 0; i < count; i++) {//循环插入数据库
|
|
|
|
|
+// String seq = "m" + (i + 1);//传感器编号
|
|
|
|
|
+ String seq = "m1";//传感器编号
|
|
|
|
|
+ double val = Double.valueOf(jsonData.get(seq) + "");
|
|
|
LiveData data = new LiveData();
|
|
LiveData data = new LiveData();
|
|
|
data.setDeviceId(deviceId);
|
|
data.setDeviceId(deviceId);
|
|
|
data.setReportTime(reportTime);
|
|
data.setReportTime(reportTime);
|
|
@@ -397,10 +475,10 @@ public class LiveDataTask {
|
|
|
liveDataService.acceptLiveData(data);
|
|
liveDataService.acceptLiveData(data);
|
|
|
historyDataService.save(data1);
|
|
historyDataService.save(data1);
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- }
|
|
|
|
|
|
|
+//
|
|
|
|
|
+// }
|
|
|
|
|
+//
|
|
|
|
|
+// }
|
|
|
}
|
|
}
|
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
|
e.printStackTrace();
|
|
e.printStackTrace();
|