diff --git a/fastbee-gateway/fastbee-mq/src/main/java/com/fastbee/mq/redischannel/consumer/DeviceOtherMsgConsumer.java b/fastbee-gateway/fastbee-mq/src/main/java/com/fastbee/mq/redischannel/consumer/DeviceOtherMsgConsumer.java index d4a212d..ee00102 100644 --- a/fastbee-gateway/fastbee-mq/src/main/java/com/fastbee/mq/redischannel/consumer/DeviceOtherMsgConsumer.java +++ b/fastbee-gateway/fastbee-mq/src/main/java/com/fastbee/mq/redischannel/consumer/DeviceOtherMsgConsumer.java @@ -106,14 +106,28 @@ public class DeviceOtherMsgConsumer { if(jsonObject.getStr("type")!=null){ //上报正常数据 if(jsonObject.getStr("type").equals("waterEleData")){ - String data1 = jsonObject.getStr("data"); + JSONObject data1 = jsonObject.getJSONObject("data"); + //收到开阀定时报文 - if(JSONUtil.parseObj(data1).get("action").equals("timeMsg")){ + if(data1.get("action").equals("timeMsg")){ pumpUsageRecords.setMessageContent(JSONUtil.toJsonStr(jsonObject)); + // int i = ngWaterPumpUsageRecordsMapper.insertNgWaterPumpUsageRecords(pumpUsageRecords); // if(i<1){ // System.err.println("--------------------------保存使用记录失败!---------------------------"); // } + //同步设备运行状态 + //获取设备当前运行状态 + Integer valveState = data1.getInt("valveState"); + Integer runStatus = null; + if(valveState==0){ + runStatus=2; + } else if (valveState==1) { + runStatus=1; + } + if(runStatus!=null){ + new LambdaUpdateChainWrapper<>(deviceReportInfoMapper).set(DeviceReportInfo::getRunStatus,runStatus).eq(DeviceReportInfo::getSerialNumber,serialNumber).update(); + } } //收到关阀时定时报文 else if(JSONUtil.parseObj(data1).get("action").equals("safeMsg")){