|
|
@@ -330,18 +330,30 @@ public class AlarmEventServiceImpl implements AlarmEventService {
|
|
|
logger.info(ERROR_MSG_DEPT, centerdataTCamera.getCameraCode());
|
|
|
return "";
|
|
|
}
|
|
|
+
|
|
|
+ // 验证事件类型是否配置对应报文码值--只能从数据库配
|
|
|
+ CentereventTEventtype centereventTEventtype = centereventTEventtypeService.selectCentereventTEventtypeByCode(infoVO.getAlarmType());
|
|
|
+ if (StringUtils.isNull(centereventTEventtype)) {
|
|
|
+ logger.info("无法匹配相关事件!报文码值为:{}", infoVO.getAlarmType());
|
|
|
+ return "";
|
|
|
+ }
|
|
|
+
|
|
|
+ ExtendVO extendVO = JSONObject.parseObject(infoVO.getExtend(), ExtendVO.class);
|
|
|
// 事件目录
|
|
|
//四平市双辽市卧虎镇贺家村热感应 + 2024-01-05 10:32:54 + 火情报警
|
|
|
- String eventName = infoVO.getChannelName() + infoVO.getAlarmDateStr() + infoVO.getAlarmTypeName();
|
|
|
- String eventDescription = infoVO.toString(centerdataTCamera);
|
|
|
- String longitude = StringUtils.isEmpty(infoVO.getFirePoint()) ? centerdataTCamera.getLongitude() : infoVO.getFirePoint()[0].getGpsX();
|
|
|
- String latitude = StringUtils.isEmpty(infoVO.getFirePoint()) ? centerdataTCamera.getLatitude() : infoVO.getFirePoint()[0].getGpsY();
|
|
|
+ String eventName = infoVO.getChannelName() + infoVO.getAlarmDateStr() + centereventTEventtype.getEventTypeName();
|
|
|
+// String longitude = StringUtils.isEmpty(infoVO.getFirePoint()) ? centerdataTCamera.getLongitude() : infoVO.getFirePoint()[0].getGpsX();
|
|
|
+// String latitude = StringUtils.isEmpty(infoVO.getFirePoint()) ? centerdataTCamera.getLatitude() : infoVO.getFirePoint()[0].getGpsY();
|
|
|
+
|
|
|
+ String longitude = StringUtils.isEmpty(String.valueOf(extendVO.getGpsxy().getGpsX()))? centerdataTCamera.getLongitude() : String.valueOf(extendVO.getGpsxy().getGpsX());
|
|
|
+ String latitude = StringUtils.isEmpty(String.valueOf(extendVO.getGpsxy().getGpsY()))? centerdataTCamera.getLatitude() : String.valueOf(extendVO.getGpsxy().getGpsY());
|
|
|
+ String eventDescription = infoVO.toString(longitude, latitude);
|
|
|
String reportor = infoVO.getDeviceName();
|
|
|
Date reportTime = DateUtils.timestampToTime(infoVO.getAlarmDate());
|
|
|
String address = centerdataTCamera.getCameraRegion();
|
|
|
String alarmCode = infoVO.getAlarmCode().replace("{", "").replace("}", "");
|
|
|
- CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue("1", null, eventName, eventDescription, longitude, latitude, reportor, reportTime, address, alarmCode, infoVO.getNodeCode());
|
|
|
- centereventTEventcatalogue = this.insertEventCatalogue(centereventTEventcatalogue, centerdataTCamera, daHuaFireEventVO.getCreateTime());
|
|
|
+ CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue(centereventTEventtype.getParentId(), centereventTEventtype.getId(), eventName, eventDescription, longitude, latitude, reportor, reportTime, address, alarmCode, infoVO.getNodeCode());
|
|
|
+ this.insertEventCatalogue(centereventTEventcatalogue, centerdataTCamera, daHuaFireEventVO.getCreateTime());
|
|
|
// 事件部门
|
|
|
this.insertEventDept(centereventTEventcatalogue, listDept);
|
|
|
// 事件日志
|
|
|
@@ -386,10 +398,10 @@ public class AlarmEventServiceImpl implements AlarmEventService {
|
|
|
// 事件目录
|
|
|
String eventType = centereventTEventtype.getParentId();
|
|
|
String eventTypeXl = centereventTEventtype.getId();
|
|
|
- String eventName = infoVO.getChannelName() + DateUtils.parseDateToStr(YYYY_MM_DD_HH_MM_SS, new Date(infoVO.getAlarmDate())) + centereventTEventtype.getEventTypeName();
|
|
|
+ String eventName = infoVO.getChannelName() + infoVO.getAlarmDateStr() + centereventTEventtype.getEventTypeName();
|
|
|
StringBuilder eventDescription = new StringBuilder();
|
|
|
- String longitude = String.valueOf(extendVO.getGpsxy().getGpsX());
|
|
|
- String latitude = String.valueOf(extendVO.getGpsxy().getGpsY());
|
|
|
+ String longitude = StringUtils.isEmpty(String.valueOf(extendVO.getGpsxy().getGpsX()))? centerdataTCamera.getLongitude() : String.valueOf(extendVO.getGpsxy().getGpsX());
|
|
|
+ String latitude = StringUtils.isEmpty(String.valueOf(extendVO.getGpsxy().getGpsY()))? centerdataTCamera.getLatitude() : String.valueOf(extendVO.getGpsxy().getGpsY());
|
|
|
if("987654321".equals(infoVO.getAlarmType())){
|
|
|
// eventDescription.append(infoVO.toString(centerdataTCamera)).append(",").append(extendVO.getImageDescription());
|
|
|
eventDescription.append(infoVO.toString(longitude, latitude)).append(",").append(extendVO.getImageDescription());
|
|
|
@@ -401,19 +413,21 @@ public class AlarmEventServiceImpl implements AlarmEventService {
|
|
|
Date reportTime = DateUtils.timestampToTime(infoVO.getAlarmDate());
|
|
|
String address = centerdataTCamera.getCameraRegion();
|
|
|
CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue(eventType, eventTypeXl, eventName, eventDescription.toString(), longitude, latitude, reportor, reportTime, address, infoVO.getAlarmCode(), infoVO.getNodeCode());
|
|
|
- centereventTEventcatalogue = this.insertEventCatalogue(centereventTEventcatalogue, centerdataTCamera, daHuaFireEventVO.getCreateTime());
|
|
|
+ this.insertEventCatalogue(centereventTEventcatalogue, centerdataTCamera, daHuaFireEventVO.getCreateTime());
|
|
|
// 事件部门
|
|
|
this.insertEventDept(centereventTEventcatalogue, listDept);
|
|
|
// 事件日志
|
|
|
String logId = this.insertEventLog(centereventTEventcatalogue);
|
|
|
- if (StringUtils.isNotBlank(infoVO.getAlarmPicture())) {
|
|
|
- CenterdataTAttach tAttach = new CenterdataTAttach();
|
|
|
- tAttach.setBusId(logId);
|
|
|
- tAttach.setAttachPath(infoVO.getAlarmPicture());
|
|
|
- tAttach.setBusIndx(BUS_INDEX_2);
|
|
|
- tAttach.setBusSource("DH_1");
|
|
|
- tAttach.setFileType(FILE_TYPE_1);
|
|
|
- remoteDataService.insertAttach(tAttach);
|
|
|
+ if (!infoVO.getAlarmPictures().isEmpty()) {
|
|
|
+ infoVO.getAlarmPictures().forEach(picture->{
|
|
|
+ CenterdataTAttach tAttach = new CenterdataTAttach();
|
|
|
+ tAttach.setBusId(logId);
|
|
|
+ tAttach.setAttachPath(picture);
|
|
|
+ tAttach.setBusIndx(BUS_INDEX_2);
|
|
|
+ tAttach.setBusSource("DH_1");
|
|
|
+ tAttach.setFileType(FILE_TYPE_1);
|
|
|
+ remoteDataService.insertAttach(tAttach);
|
|
|
+ });
|
|
|
}
|
|
|
return centereventTEventcatalogue.getEventCode();
|
|
|
}
|