diff --git a/iot-access/access-boot/src/main/java/com/njcn/access/handler/MqttMessageHandler.java b/iot-access/access-boot/src/main/java/com/njcn/access/handler/MqttMessageHandler.java index 02719a5..96f52e6 100644 --- a/iot-access/access-boot/src/main/java/com/njcn/access/handler/MqttMessageHandler.java +++ b/iot-access/access-boot/src/main/java/com/njcn/access/handler/MqttMessageHandler.java @@ -413,6 +413,7 @@ public class MqttMessageHandler { //todo 后期告警可能也是在这处理,通过是告警还是事件来区分暂态和稳态 case 0: log.info("处理事件"); + log.info("事件报文为:" + new String(message.getPayload(), StandardCharsets.UTF_8)); EventDto eventDto = gson.fromJson(new String(message.getPayload(), StandardCharsets.UTF_8), EventDto.class); JSONObject jsonObject0 = JSONObject.parseObject(JSON.toJSONString(eventDto)); AppEventMessage appEventMessage = JSONObject.toJavaObject(jsonObject0, AppEventMessage.class); @@ -442,6 +443,7 @@ public class MqttMessageHandler { response.setPri(AccessEnum.FIRST_CHANNEL.getCode()); response.setType(Integer.parseInt(TypeEnum.TYPE_15.getCode())); response.setCode(200); + log.info("应答事件:" + new Gson().toJson(response)); publisher.send("/Dev/DataRsp/"+version+"/"+nDid,new Gson().toJson(response),1,false); } break; diff --git a/iot-analysis/analysis-zl-event/zl-event-boot/pom.xml b/iot-analysis/analysis-zl-event/zl-event-boot/pom.xml index 8e1a370..599e6db 100644 --- a/iot-analysis/analysis-zl-event/zl-event-boot/pom.xml +++ b/iot-analysis/analysis-zl-event/zl-event-boot/pom.xml @@ -122,7 +122,7 @@ com.spotify docker-maven-plugin - 1.0.0 + 1.2.2 diff --git a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsWaveServiceImpl.java b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsWaveServiceImpl.java index 4822639..cdf2117 100644 --- a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsWaveServiceImpl.java +++ b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/CsWaveServiceImpl.java @@ -111,6 +111,7 @@ public class CsWaveServiceImpl implements ICsWaveService { * 时间处理 */ public void channelTimeRange(String fileName, long time, long subtleTime, Double millisecond, String deviceId, String lineId) { + long endTime; // 将startTime减去8小时(8 * 3600秒) time -= 8 * 3600; // 将millisecond转换为长整型,并乘以1000以获取微秒 @@ -119,14 +120,17 @@ public class CsWaveServiceImpl implements ICsWaveService { long finalTime = subtleTime + millisecondValue; // 如果finalTime大于等于1000000,将startTime增加1秒,finalTime减去1000000 if (finalTime >= 1000000) { - time += 1; + endTime = time + 1; finalTime -= 1000000; + } else { + endTime = time; } SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - String formatTime = format.format(time * 1000); + String formatTime1 = format.format(time * 1000); + String formatTime2 = format.format(endTime * 1000); WaveTimeDto waveTimeDto = new WaveTimeDto(); - waveTimeDto.setStartTime(formatTime + "." + subtleTime); - waveTimeDto.setEndTime(formatTime + "." + finalTime); + waveTimeDto.setStartTime(formatTime1 + "." + subtleTime); + waveTimeDto.setEndTime(formatTime2 + "." + finalTime); waveTimeDto.setDeviceId(deviceId); waveTimeDto.setLineId(lineId); redisUtil.saveByKeyWithExpire(AppRedisKey.TIME+fileName,waveTimeDto,60L); diff --git a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/EventServiceImpl.java b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/EventServiceImpl.java index 7251219..b601935 100644 --- a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/EventServiceImpl.java +++ b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/service/impl/EventServiceImpl.java @@ -196,11 +196,16 @@ public class EventServiceImpl implements IEventService { * 时间转换 */ public LocalDateTime timeFormat(Long time1, Long time2) { + String time; //设置格式 SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //todo 这边暂时先这样处理,减去8小时。 String timeText = format.format((time1-8*3600) * 1000); - String time = timeText + "." + time2; + if (time2 == 0){ + time = timeText + ".000000"; + } else { + time = timeText + "." + time2; + } DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSSSSS"); return LocalDateTime.parse(time, fmt); } diff --git a/iot-message/message-boot/src/main/java/com/njcn/message/consumer/AppEventConsumer.java b/iot-message/message-boot/src/main/java/com/njcn/message/consumer/AppEventConsumer.java index ce0b671..7ec92f7 100644 --- a/iot-message/message-boot/src/main/java/com/njcn/message/consumer/AppEventConsumer.java +++ b/iot-message/message-boot/src/main/java/com/njcn/message/consumer/AppEventConsumer.java @@ -54,7 +54,7 @@ public class AppEventConsumer extends EnhanceConsumerMessageHandler