From 4e9dd5201ce7932b92d58784a8b190257a595bc1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=AE=E7=AC=91=E7=9D=80=E9=9D=A2=E5=AF=B9=E6=98=8E?= =?UTF-8?q?=E5=A4=A9?= <752558143@qq.com> Date: Sun, 14 Jul 2024 14:49:27 +0800 Subject: [PATCH] =?UTF-8?q?mqtt=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../pcn/api/busi/IMesEquipmentLogExtService.java | 3 +++ .../mes/pcn/apiservice/mqtt/PcnMqttCallback.java | 1 + .../serviceimpl/base/MesEquipmentLogService.java | 23 +++++++++++++++++++++- .../equiplog/MesEquipmentLogExtService.java | 9 +++++++++ 4 files changed, 35 insertions(+), 1 deletion(-) diff --git a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesEquipmentLogExtService.java b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesEquipmentLogExtService.java index 644a5d6..97be0cd 100644 --- a/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesEquipmentLogExtService.java +++ b/modules/i3plus-ext-mes-pcn-api/src/main/java/cn/estsh/i3plus/ext/mes/pcn/api/busi/IMesEquipmentLogExtService.java @@ -28,4 +28,7 @@ public interface IMesEquipmentLogExtService { @ApiOperation(value = "验证设备通信质量") Boolean checkEquipQuality(Integer quality); + @ApiOperation(value = "根据设备ID 查询设备ID分表所有采集数据") + MesEquipmentLog queryMesEquipmentLog( Integer equipId, Long equipVariableId); + } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/mqtt/PcnMqttCallback.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/mqtt/PcnMqttCallback.java index 1f8ab8c..e8144a8 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/mqtt/PcnMqttCallback.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/mqtt/PcnMqttCallback.java @@ -4,6 +4,7 @@ import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesEquipmentLogService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.config.MqttConfig; import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.SpringUtils; import cn.estsh.i3plus.ext.mes.pcn.pojo.mqtt.EquipLogMqttMsg; +import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentVariable; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import lombok.extern.slf4j.Slf4j; diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesEquipmentLogService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesEquipmentLogService.java index bb441fa..16eb0e1 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesEquipmentLogService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesEquipmentLogService.java @@ -15,7 +15,9 @@ import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentLogDetail; import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentRecord; import cn.estsh.i3plus.pojo.mes.bean.MesEquipmentVariable; import cn.estsh.i3plus.pojo.mes.repository.MesEquipmentLogDetailRepository; +import cn.estsh.i3plus.pojo.mes.repository.MesEquipmentLogRepository; import cn.estsh.i3plus.pojo.mes.repository.MesEquipmentRecordRepository; +import cn.estsh.i3plus.pojo.mes.repository.MesEquipmentVariableRepository; import cn.estsh.i3plus.pojo.mes.util.MesExtEnumUtil; import cn.estsh.impp.framework.boot.util.ImppRedis; import lombok.extern.slf4j.Slf4j; @@ -39,12 +41,17 @@ public class MesEquipmentLogService implements IMesEquipmentLogService { public static final Logger LOGGER = LoggerFactory.getLogger(CommonConstWords.SYSTEM_LOG); @Autowired + private MesEquipmentVariableRepository equipmentVariableRepository; + + @Autowired private MesEquipmentLogExtService mesEquipmentLogExtService; @Autowired private MesEquipmentExtService mesEquipmentExtService; @Autowired private MesEquipmentLogDetailRepository mesEquipmentLogDetailRepository; @Autowired + private MesEquipmentLogRepository mesEquipmentLogRepository; + @Autowired private MesEquipmentRecordRepository mesEquipmentRecordRepository; @Autowired private SnowflakeIdMaker snowflakeIdMaker; @@ -148,6 +155,20 @@ public class MesEquipmentLogService implements IMesEquipmentLogService { @Override public void updateValue(EquipLogMqttMsg equipLogMqttMsg) { - mesEquipmentLogExtService.updateEquipmentLogValue("CK01", Integer.valueOf(equipLogMqttMsg.getPTCode()), Long.valueOf(equipLogMqttMsg.getTagAddress()), equipLogMqttMsg.getValue()); + DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(); + DdlPreparedPack.getStringEqualPack(equipLogMqttMsg.getTagAddress(), "tagAddress", ddlPackBean); + MesEquipmentVariable mesEquipmentVariable = equipmentVariableRepository.getByProperty(ddlPackBean); + if (mesEquipmentVariable == null) { + LOGGER.info("tagAddress 不存在【{}】", equipLogMqttMsg.getTagAddress()); + } + MesEquipmentLog equipmentLog = mesEquipmentLogExtService.queryMesEquipmentLog(Integer.valueOf(equipLogMqttMsg.getPTCode()), mesEquipmentVariable.getId()); + ConvertBean.serviceModelUpdate(equipmentLog, "mqtt"); + mesEquipmentLogRepository.update(equipmentLog); + + MesEquipmentLogDetail mesEquipmentLogDetail = new MesEquipmentLogDetail(); + BeanUtils.copyProperties(equipmentLog, mesEquipmentLogDetail); + mesEquipmentLogDetail.setId(null); + mesEquipmentLogDetailRepository.save(mesEquipmentLogDetail); + } } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/equiplog/MesEquipmentLogExtService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/equiplog/MesEquipmentLogExtService.java index 98c7557..ee4c111 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/equiplog/MesEquipmentLogExtService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/equiplog/MesEquipmentLogExtService.java @@ -170,4 +170,13 @@ public class MesEquipmentLogExtService implements IMesEquipmentLogExtService { return CollectionUtils.isEmpty(equipVariableIdList) ? null : equipVariableIdList.stream().filter(o -> !StringUtils.isEmpty(o)).distinct().collect(Collectors.toList()); } + @Override + public MesEquipmentLog queryMesEquipmentLog(Integer equipId, Long equipVariableId) { + + DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(); + DdlPreparedPack.getNumEqualPack(equipId, "equipId", ddlPackBean); + DdlPreparedPack.getNumEqualPack(equipVariableId, "equipVariableId", ddlPackBean); + + return equipmentLogRepository.getByProperty(ddlPackBean); + } }