From c33490c4fc8ab7d32fdbbe122e6b3bf99eac3cde Mon Sep 17 00:00:00 2001 From: xy <748613696@qq.com> Date: Wed, 15 Oct 2025 20:51:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=91=E5=89=8D=E7=BD=AE=E6=94=B9=E9=80=A0-?= =?UTF-8?q?=E6=9A=82=E6=80=81=E6=95=B0=E6=8D=AE=E8=A1=A5=E5=8F=AC=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/CsDeviceServiceImpl.java | 22 ++++++++++++------- .../service/impl/CsEventServiceImpl.java | 17 +++++++++----- .../consumer/UpdateLedgerConsumer.java | 3 +-- 3 files changed, 27 insertions(+), 15 deletions(-) diff --git a/iot-access/access-boot/src/main/java/com/njcn/access/service/impl/CsDeviceServiceImpl.java b/iot-access/access-boot/src/main/java/com/njcn/access/service/impl/CsDeviceServiceImpl.java index 0641bcc..5458b8c 100644 --- a/iot-access/access-boot/src/main/java/com/njcn/access/service/impl/CsDeviceServiceImpl.java +++ b/iot-access/access-boot/src/main/java/com/njcn/access/service/impl/CsDeviceServiceImpl.java @@ -38,7 +38,6 @@ import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -328,7 +327,12 @@ public class CsDeviceServiceImpl implements ICsDeviceService { param.setNDid(nDid); param.setStatus(1); param.setRunStatus(1); - param.setProcess(2); + boolean isConnectDev = DicDataEnum.CONNECT_DEV.getCode().equals(dictTreeFeignClient.queryById(csEquipmentDeliveryVO.getDevType()).getData().getCode()); + if (isConnectDev) { + param.setProcess(2); + } else { + param.setProcess(4); + } csEquipmentDeliveryService.devResetFactory(param); //清除关系表 QueryWrapper csLedgerQueryWrapper = new QueryWrapper<>(); @@ -374,12 +378,6 @@ public class CsDeviceServiceImpl implements ICsDeviceService { @Transactional(rollbackFor = Exception.class) public String wlDevRegister(String nDid) { String result = "fail"; - // 设备状态判断 - checkDeviceStatus(nDid); - // 询问设备支持的主题信息,并将支持的主题入库 - askAndStoreTopics(nDid); - // MQTT询问装置用的模板,并判断库中是否存在模板 - checkDeviceModel(nDid); // 根据模板接入设备 DeviceLogDTO logDto = new DeviceLogDTO(); logDto.setUserName(RequestUtil.getUserNickname()); @@ -387,6 +385,14 @@ public class CsDeviceServiceImpl implements ICsDeviceService { logDto.setOperate("便携式设备"+nDid+"注册、接入"); logDto.setResult(1); try { + Thread.sleep(5000); + resetFactory(nDid); + // 设备状态判断 + checkDeviceStatus(nDid); + // 询问设备支持的主题信息,并将支持的主题入库 + askAndStoreTopics(nDid); + // MQTT询问装置用的模板,并判断库中是否存在模板 + checkDeviceModel(nDid); Thread.sleep(2000); //获取版本 String version = csTopicService.getVersion(nDid); diff --git a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsEventServiceImpl.java b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsEventServiceImpl.java index bea16bb..08b88ac 100644 --- a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsEventServiceImpl.java +++ b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsEventServiceImpl.java @@ -11,10 +11,10 @@ import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Objects; +import java.text.SimpleDateFormat; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; +import java.util.*; import java.util.stream.Collectors; /** @@ -33,12 +33,19 @@ public class CsEventServiceImpl extends ServiceImpl im @Transactional(rollbackFor = Exception.class) public List updateCsEvent(CsEventParam csEventParam) { List eventList = new ArrayList<>(); + + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSSSSS"); + LocalDateTime dateTime = LocalDateTime.parse(csEventParam.getStartTime(), formatter); + // 减去1毫秒 + LocalDateTime newDateTime = dateTime.minusNanos(1000000); + String startTime = newDateTime.format(formatter); + //1.将波形文件关联事件 LambdaUpdateWrapper lambdaUpdateWrapper = new LambdaUpdateWrapper<>(); lambdaUpdateWrapper.set(CsEventPO::getWavePath,csEventParam.getPath()).eq(CsEventPO::getLineId,csEventParam.getLineId()) .eq(CsEventPO::getDeviceId,csEventParam.getDeviceId()) .in(CsEventPO::getType, Arrays.asList(0,1)) - .between(CsEventPO::getStartTime,csEventParam.getStartTime(),csEventParam.getEndTime()); + .between(CsEventPO::getStartTime,startTime,csEventParam.getEndTime()); if (Objects.nonNull(csEventParam.getLocation())) { lambdaUpdateWrapper.eq(CsEventPO::getLocation, csEventParam.getLocation()); } diff --git a/iot-message/message-boot/src/main/java/com/njcn/message/consumer/UpdateLedgerConsumer.java b/iot-message/message-boot/src/main/java/com/njcn/message/consumer/UpdateLedgerConsumer.java index 896c7f1..6b98eb5 100644 --- a/iot-message/message-boot/src/main/java/com/njcn/message/consumer/UpdateLedgerConsumer.java +++ b/iot-message/message-boot/src/main/java/com/njcn/message/consumer/UpdateLedgerConsumer.java @@ -16,7 +16,6 @@ import lombok.extern.slf4j.Slf4j; import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; import org.apache.rocketmq.spring.core.RocketMQListener; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.List; @@ -33,6 +32,7 @@ import java.util.Objects; @RocketMQMessageListener( topic = BusinessTopic.REPLY_TOPIC, consumerGroup = BusinessTopic.REPLY_TOPIC, + selectorExpression = "Test_Tag", consumeThreadNumber = 10, enableMsgTrace = true ) @@ -47,7 +47,6 @@ public class UpdateLedgerConsumer extends EnhanceConsumerMessageHandler