|
|
@@ -8,7 +8,9 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.google.common.collect.Lists;
|
|
|
import com.xunmei.common.core.constant.ErrorMsgConstants;
|
|
|
-import com.xunmei.common.core.domain.iot.domain.*;
|
|
|
+import com.xunmei.common.core.domain.iot.domain.IotAlarmDefenceArea;
|
|
|
+import com.xunmei.common.core.domain.iot.domain.IotAlarmSubsystem;
|
|
|
+import com.xunmei.common.core.domain.iot.domain.IotAlarmSubsystemLog;
|
|
|
import com.xunmei.common.core.domain.mediator.domain.IotAlarmData;
|
|
|
import com.xunmei.common.core.domain.mediator.domain.IotAlarmSystemField;
|
|
|
import com.xunmei.common.core.enums.iot.DeviceTypeEnum;
|
|
|
@@ -37,7 +39,6 @@ import com.xunmei.host.websocket.utils.WebSocketUtils;
|
|
|
import com.xunmei.system.api.domain.iot.IotDeviceInfo;
|
|
|
import com.xunmei.system.api.domain.iot.IotDeviceStatus;
|
|
|
import com.xunmei.system.api.domain.iot.IotDeviceStatusLog;
|
|
|
-import com.xunmei.system.api.enums.AlarmHostSensorStatus;
|
|
|
import com.xunmei.system.api.enums.ProtectionStatus;
|
|
|
import com.xunmei.system.api.util.LogUtils;
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
@@ -135,7 +136,7 @@ public class IotAlarmHostServiceImpl implements IIotAlarmHostService, RouterServ
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRES_NEW)
|
|
|
+ /*@Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRES_NEW)
|
|
|
public JSONObject changeAlarmHostSensorStatus(WebsocketExecuteReq req) {
|
|
|
try {
|
|
|
LogUtils.STATUS_INFO_STATUS_SENSOR.info("【报警主机传感器状态事件】【token:{}】【msgId:{}】【接收参数:{}】", req.getServerInfo().getIotCode(), req.getId(), JSON.toJSONString(req));
|
|
|
@@ -207,7 +208,7 @@ public class IotAlarmHostServiceImpl implements IIotAlarmHostService, RouterServ
|
|
|
throw new RuntimeException("处理报警主机传感器状态事件出错", e);
|
|
|
}
|
|
|
return WebsocketResult.getSuccessPayload();
|
|
|
- }
|
|
|
+ }*/
|
|
|
|
|
|
@Override
|
|
|
public void subSystemControl(Serializable id, boolean isArm) {
|
|
|
@@ -344,7 +345,7 @@ public class IotAlarmHostServiceImpl implements IIotAlarmHostService, RouterServ
|
|
|
JSONObject jsb;
|
|
|
switch (event) {
|
|
|
case WebSocketConstants.SENSOR_STATUS:
|
|
|
- jsb = changeAlarmHostSensorStatus(req);
|
|
|
+ jsb = changeAlarmHostInputStatus(req);
|
|
|
return WebsocketResult.reply(req, jsb);
|
|
|
case WebSocketConstants.SUB_SYSTEM_STATUS:
|
|
|
jsb = changeSubSystemStatus(req);
|
|
|
@@ -356,7 +357,8 @@ public class IotAlarmHostServiceImpl implements IIotAlarmHostService, RouterServ
|
|
|
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
- public void changeAlarmHostInputStatus(WebsocketExecuteReq req) {
|
|
|
+ public JSONObject changeAlarmHostInputStatus(WebsocketExecuteReq req) {
|
|
|
+ String iotCode = req.getServerInfo().getIotCode();
|
|
|
try {
|
|
|
LogUtils.STATUS_INFO_STATUS_SENSOR.info("【报警主机传感器状态事件】【token:{}】【msgId:{}】【接收参数:{}】", req.getServerInfo().getIotCode(), req.getId(), JSON.toJSONString(req));
|
|
|
if (req.getData() != null) {
|
|
|
@@ -365,28 +367,36 @@ public class IotAlarmHostServiceImpl implements IIotAlarmHostService, RouterServ
|
|
|
AlarmHostSensorVO resParam = JSONObject.parseObject(req.getData().toString(), AlarmHostSensorVO.class);
|
|
|
String index = resParam.getIndex();
|
|
|
if (resParam == null) {
|
|
|
- LogUtils.STATUS_INFO_STATUS_SENSOR.error("报警主机传感器状态事件:产品名称={},设备名称={},设备状态为空", productName, deviceName);
|
|
|
- return;
|
|
|
+ String str = "报警主机传感器状态事件:【token:%s】,【产品名称:%s】,【设备名称:%s】,设备状态数据为空";
|
|
|
+ String logMsg = String.format(str, iotCode, productName, deviceName);
|
|
|
+ LogUtils.STATUS_INFO_STATUS_SENSOR.info(logMsg);
|
|
|
+ return WebsocketResult.getErrorPayload(logMsg);
|
|
|
}
|
|
|
if (StringUtils.isBlank(index)) {
|
|
|
- LogUtils.STATUS_INFO_STATUS_SENSOR.error("报警主机传感器状态事件:产品名称={},设备名称={},index为空", productName, deviceName);
|
|
|
- return;
|
|
|
+ String str = "报警主机传感器状态事件:【token:%s】,【产品名称:%s】,【设备名称:%s】,传感器index为空";
|
|
|
+ String logMsg = String.format(str, iotCode, productName, deviceName);
|
|
|
+ LogUtils.STATUS_INFO_STATUS_SENSOR.info(logMsg);
|
|
|
+ return WebsocketResult.getErrorPayload(logMsg);
|
|
|
}
|
|
|
if (resParam.getStatus().equals(IotInputStatusEnum.ACTIVITY.getState())) {
|
|
|
- LogUtils.STATUS_INFO_STATUS_SENSOR.debug("报警主机传感器状态事件:产品名称={},设备名称={},index={},活动状态丢弃", productName, deviceName, index);
|
|
|
- return;
|
|
|
- }
|
|
|
|
|
|
- try {
|
|
|
- this.saveInputStatus(req.getServerInfo().getIotCode(), productName, deviceName, resParam);
|
|
|
- } catch (Exception e) {
|
|
|
- LogUtils.STATUS_INFO_STATUS_SENSOR.info("报警主机传感器状态事件: 处理出现异常{}", e);
|
|
|
+ String str = "报警主机传感器状态事件:【token:%s】,【产品名称:%s】,【设备名称:%s】,【传感器index:%s】,活动状态丢弃";
|
|
|
+ String logMsg = String.format(str, iotCode, productName, deviceName, index);
|
|
|
+ LogUtils.STATUS_INFO_STATUS_SENSOR.debug(logMsg);
|
|
|
+ return WebsocketResult.getErrorPayload(logMsg);
|
|
|
}
|
|
|
+ this.saveInputStatus(req.getServerInfo().getIotCode(), productName, deviceName, resParam);
|
|
|
+ return WebsocketResult.getSuccessPayload();
|
|
|
}
|
|
|
+ String str = "报警主机传感器状态事件:【token:%s】,上报数据为空";
|
|
|
+ String logMsg = String.format(str, iotCode);
|
|
|
+ LogUtils.STATUS_INFO_STATUS_SENSOR.info(logMsg);
|
|
|
+ return WebsocketResult.getErrorPayload(logMsg);
|
|
|
} catch (Exception e) {
|
|
|
- e.printStackTrace();
|
|
|
- LogUtils.STATUS_INFO_STATUS_SENSOR.error("处理报警主机传感器状态事件出错", e);
|
|
|
- throw new RuntimeException(e);
|
|
|
+ String str = "报警主机传感器状态事件:【token:%s】,【异常信息:%s】,处理报警主机传感器状态事件出错";
|
|
|
+ String logMsg = String.format(str, iotCode, e);
|
|
|
+ LogUtils.STATUS_INFO_STATUS_SENSOR.debug(logMsg);
|
|
|
+ return WebsocketResult.getErrorPayload(logMsg);
|
|
|
}
|
|
|
}
|
|
|
|