diff --git a/iot-analysis/analysis-zl-event/zl-event-api/src/main/java/com/njcn/zlevent/pojo/constant/ZlConstant.java b/iot-analysis/analysis-zl-event/zl-event-api/src/main/java/com/njcn/zlevent/pojo/constant/ZlConstant.java index 513ada3..4fd3594 100644 --- a/iot-analysis/analysis-zl-event/zl-event-api/src/main/java/com/njcn/zlevent/pojo/constant/ZlConstant.java +++ b/iot-analysis/analysis-zl-event/zl-event-api/src/main/java/com/njcn/zlevent/pojo/constant/ZlConstant.java @@ -36,6 +36,11 @@ public interface ZlConstant { */ String WAVE_PARAM_RCDKEEPTIME = "Wave_Param_RcdKeepTime"; + /** + * 暂态持续时间 + */ + String EVT_PARAM_TM = "Evt_Param_Tm"; + } 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 7c2c8aa..2c8de7e 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 @@ -134,6 +134,9 @@ public class EventServiceImpl implements IEventService { } csEvent.setLocation(param.getData().toString()); } else { + if (Objects.equals(param.getName(),ZlConstant.EVT_PARAM_TM)){ + csEvent.setPersistTime(Double.parseDouble(param.getData().toString())); + } fields.put(param.getName(),param.getData()); } //fixme 这边前置传递的应该是UTC时间,但是前置说是传递的北京时间,讨论了一下没太理解。这边暂时先这样处理,influx入库处理成北京时间,减去8小时。 diff --git a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/utils/SendEventUtils.java b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/utils/SendEventUtils.java index baa4934..85a0569 100644 --- a/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/utils/SendEventUtils.java +++ b/iot-analysis/analysis-zl-event/zl-event-boot/src/main/java/com/njcn/zlevent/utils/SendEventUtils.java @@ -87,6 +87,7 @@ public class SendEventUtils { public void sendUser(Integer eventType,String type,String devId, String eventName, LocalDateTime eventTime, String id) { int code; List users = new ArrayList<>(); + List devCodeList; List csEventSendMsgList = new ArrayList<>(); NoticeUserDto noticeUserDto = new NoticeUserDto(); @@ -116,7 +117,7 @@ public class SendEventUtils { code = 0; //暂态事件 users = getEventUser(devId,0); - devCodeList = users.stream().map(User::getDevCode).collect(Collectors.toList()); + devCodeList = users.stream().map(User::getDevCode).distinct().collect(Collectors.toList()); noticeUserDto.setPushClientId(devCodeList); noticeUserDto.setTitle("暂态事件"); //记录需要通知的用户和事件关系 @@ -133,7 +134,7 @@ public class SendEventUtils { code = 1; //稳态事件 users = getEventUser(devId,1); - devCodeList = users.stream().map(User::getDevCode).collect(Collectors.toList()); + devCodeList = users.stream().map(User::getDevCode).distinct().collect(Collectors.toList()); noticeUserDto.setPushClientId(devCodeList); noticeUserDto.setTitle("稳态事件"); //记录需要通知的用户和事件关系 @@ -182,7 +183,7 @@ public class SendEventUtils { case "3": //Ⅱ、Ⅲ级告警推送相关用户及业务管理员 users = getEventUser(devId,3); - devCodeList = users.stream().map(User::getDevCode).collect(Collectors.toList()); + devCodeList = users.stream().map(User::getDevCode).distinct().collect(Collectors.toList()); noticeUserDto.setPushClientId(devCodeList); //记录需要通知的用户和事件关系 List list4 = users.stream().map(User::getId).collect(Collectors.toList());