|
@@ -9,6 +9,7 @@ import com.ruoyi.common.core.utils.SpringUtils;
|
|
|
import com.ruoyi.common.core.utils.StringUtils;
|
|
|
import com.ruoyi.common.core.utils.uuid.IdUtils;
|
|
|
import com.ruoyi.system.api.RemoteDeptService;
|
|
|
+import com.ruoyi.system.api.RemoteFileService;
|
|
|
import com.ruoyi.system.api.domain.SysDept;
|
|
|
import com.sooka.sponest.event.centereventtdeptevent.domain.CentereventDeptEvent;
|
|
|
import com.sooka.sponest.event.centereventtdeptevent.service.ICentereventDeptEventService;
|
|
@@ -18,6 +19,9 @@ import com.sooka.sponest.event.centereventteventcatalogue.domain.dahua.*;
|
|
|
import com.sooka.sponest.event.centereventteventcatalogue.domain.haikang.EventsVo;
|
|
|
import com.sooka.sponest.event.centereventteventcatalogue.domain.haikang.HaiKangEventVo;
|
|
|
import com.sooka.sponest.event.centereventteventcatalogue.domain.sensor.SensorEventVo;
|
|
|
+import com.sooka.sponest.event.centereventteventcatalogue.domain.tower.TowerEventVo;
|
|
|
+import com.sooka.sponest.event.centereventteventcatalogue.domain.vo.DroneVO;
|
|
|
+import com.sooka.sponest.event.centereventteventcatalogue.mapper.AlarmEventMapper;
|
|
|
import com.sooka.sponest.event.centereventteventcatalogue.service.AlarmEventService;
|
|
|
import com.sooka.sponest.event.centereventteventcatalogue.service.ICentereventTEventcatalogueService;
|
|
|
import com.sooka.sponest.event.centereventteventtype.domain.CentereventTEventtype;
|
|
@@ -26,21 +30,26 @@ import com.sooka.sponest.event.centereventtfirelog.domain.CentereventTFireLog;
|
|
|
import com.sooka.sponest.event.centereventtfirelog.service.ICentereventTFireLogService;
|
|
|
import com.sooka.sponest.event.remoteapi.RemoteDataService;
|
|
|
import com.sooka.sponest.event.remoteapi.domain.CenterdataTAttach;
|
|
|
+import com.sooka.sponest.event.utils.GWHttpUtilsTest65;
|
|
|
+import com.sooka.sponest.event.utils.NetworkImageToMultipartFile;
|
|
|
import com.sooka.sponest.event.utils.RemoteApiUtil;
|
|
|
import com.sooka.sponest.monitor.api.RemoteMonitorService;
|
|
|
import com.sooka.sponest.monitor.api.domain.CenterdataTAidevicedept;
|
|
|
import com.sooka.sponest.monitor.api.domain.CenterdataTCamera;
|
|
|
+import com.sooka.sponest.monitor.api.domain.CentermonitorTUav;
|
|
|
import org.apache.commons.collections4.MapUtils;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
+import org.springframework.http.HttpEntity;
|
|
|
+import org.springframework.http.HttpHeaders;
|
|
|
+import org.springframework.http.MediaType;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
+import org.springframework.web.client.RestTemplate;
|
|
|
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.List;
|
|
|
+import java.util.*;
|
|
|
|
|
|
import static com.ruoyi.common.core.utils.DateUtils.YYYY_MM_DD_HH_MM_SS;
|
|
|
import static com.sooka.sponest.event.utils.EventConstants.*;
|
|
@@ -65,9 +74,18 @@ public class AlarmEventServiceImpl implements AlarmEventService {
|
|
|
@Autowired
|
|
|
private ICentereventTEventtypeService centereventTEventtypeService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private RemoteFileService fileService;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private AlarmEventMapper alarmEventMapper;
|
|
|
+
|
|
|
@Value("${sooka.dahuaservice.detail}")
|
|
|
private String detailUrl;
|
|
|
|
|
|
+ @Value("${sooka.supermap.datasetUrl}")
|
|
|
+ private String datasetUrl;
|
|
|
+
|
|
|
static final String ERROR_MSG_CHANNEL = "无法匹配相关设备!通道编号为:{}";
|
|
|
|
|
|
static final String ERROR_MSG_DEPT = "无法匹配相关部门!摄像头编号为:{}";
|
|
@@ -187,6 +205,10 @@ public class AlarmEventServiceImpl implements AlarmEventService {
|
|
|
centereventTEventcatalogue.setIsUrged(SYS_ISURGE_2);//sys_isurge_2
|
|
|
centereventTEventcatalogue.setEventStatus("上报");
|
|
|
centereventTEventcatalogue.setEventStatusValue(FOREST_EVENT_STATUS_1);//forest_event_status_1
|
|
|
+ // 自动研判误报,218工程车、222区域入侵、237违章建筑
|
|
|
+ if ("218".equals(centereventTEventcatalogue.getEventTypeXl()) || "222".equals(centereventTEventcatalogue.getEventTypeXl()) || "237".equals(centereventTEventcatalogue.getEventTypeXl())) {
|
|
|
+ test(centereventTEventcatalogue);
|
|
|
+ }
|
|
|
centereventTEventcatalogue.setCreateBy(centerdataTCamera.getId());
|
|
|
centereventTEventcatalogue.setCreateName(centerdataTCamera.getCameraName());
|
|
|
centereventTEventcatalogue.setCreateTime(null == createTime ? DateUtils.getNowDate() : createTime);
|
|
@@ -194,6 +216,41 @@ public class AlarmEventServiceImpl implements AlarmEventService {
|
|
|
return centereventTEventcatalogue;
|
|
|
}
|
|
|
|
|
|
+ private void test(CentereventTEventcatalogue centereventTEventcatalogue) {
|
|
|
+ try {
|
|
|
+ HttpHeaders headers = new HttpHeaders();
|
|
|
+ headers.setContentType(MediaType.APPLICATION_JSON);
|
|
|
+ for (String url : datasetUrl.split(";")) {
|
|
|
+ JSONObject requestBody = JSONObject.parseObject("{" +
|
|
|
+ "\"getFeatureMode\": \"SPATIAL\"," +
|
|
|
+ "\"datasetNames\": " + url.split("&datasetNames=")[1] + "," +
|
|
|
+ "\"geometry\": {" +
|
|
|
+ "\"id\": 0," +
|
|
|
+ "\"style\": null," +
|
|
|
+ "\"parts\": [1]," +
|
|
|
+ "\"points\": [{" +
|
|
|
+ "\"y\": " + Double.parseDouble(centereventTEventcatalogue.getLatitude()) + "," +
|
|
|
+ "\"x\": " + Double.parseDouble(centereventTEventcatalogue.getLongitude()) +
|
|
|
+ "}]," +
|
|
|
+ "\"type\": \"POINT\"}," +
|
|
|
+ "\"spatialQueryMode\": \"INTERSECT\"" +
|
|
|
+ "}");
|
|
|
+ HttpEntity<JSONObject> entity = new HttpEntity<>(requestBody, headers);
|
|
|
+ RestTemplate restTemplate = new RestTemplate();
|
|
|
+ JSONObject result = restTemplate.postForEntity(url.split("&datasetNames=")[0], entity, JSONObject.class).getBody();
|
|
|
+ logger.info(result.toJSONString());
|
|
|
+ // {"features":[],"featureUriList":[],"datasetInfos":[],"totalCount":0,"featureCount":0}
|
|
|
+ if (result.getLong("totalCount") != 0 && result.getLong("featureCount") != 0) {
|
|
|
+ centereventTEventcatalogue.setEventStatus("误报");
|
|
|
+ centereventTEventcatalogue.setEventStatusValue("forest_event_status_3");
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ } catch (Exception e) {
|
|
|
+ logger.error(e.getMessage());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
// 事件部门
|
|
|
private void insertEventDept(CentereventTEventcatalogue centereventTEventcatalogue, List<CenterdataTAidevicedept> listDept) {
|
|
|
listDept.forEach(item -> {
|
|
@@ -222,6 +279,12 @@ public class AlarmEventServiceImpl implements AlarmEventService {
|
|
|
centereventTFireLog.setOperationType(LOG_OPER_TYPE_3);
|
|
|
centereventTFireLog.setCreateName(centereventTEventcatalogue.getCreateName());
|
|
|
centereventTFireLog.setCreateTime(centereventTEventcatalogue.getCreateTime());
|
|
|
+ if(StringUtils.isNotEmpty(centereventTEventcatalogue.getLongitude())){
|
|
|
+ centereventTFireLog.setLongitude(centereventTEventcatalogue.getLongitude());
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotEmpty(centereventTEventcatalogue.getLatitude())){
|
|
|
+ centereventTFireLog.setLatitude(centereventTEventcatalogue.getLatitude());
|
|
|
+ }
|
|
|
centereventTFireLogService.insertCentereventTFireLog(centereventTFireLog);
|
|
|
return centereventTFireLog.getId();
|
|
|
}
|
|
@@ -377,6 +440,7 @@ public class AlarmEventServiceImpl implements AlarmEventService {
|
|
|
return "请刷新后重试";
|
|
|
}
|
|
|
|
|
|
+ @Transactional
|
|
|
@Override
|
|
|
public String insertDaHuaOtherEvent(DaHuaOtherEventVO daHuaOtherEventVO) {
|
|
|
// 验证是否配置摄像头通道
|
|
@@ -400,7 +464,7 @@ public class AlarmEventServiceImpl implements AlarmEventService {
|
|
|
// 事件目录
|
|
|
String eventType = centereventTEventtype.getParentId();
|
|
|
String eventTypeXl = centereventTEventtype.getId();
|
|
|
- String eventName = centerdataTCamera.getCameraName() + DateUtils.parseDateToStr(YYYY_MM_DD_HH_MM_SS, DateUtils.timestampToTime(daHuaOtherEventVO.getOccurrenceTime())) + daHuaOtherEventVO.getAlarmName();
|
|
|
+ String eventName = centerdataTCamera.getCameraName() + DateUtils.parseDateToStr(YYYY_MM_DD_HH_MM_SS, DateUtils.timestampToTime(daHuaOtherEventVO.getOccurrenceTime())) + centereventTEventtype.getEventTypeName();
|
|
|
String eventDescription = daHuaOtherEventVO.toString();
|
|
|
String longitude = daHuaOtherEventVO.getLongitude();
|
|
|
String latitude = daHuaOtherEventVO.getLatitude();
|
|
@@ -430,6 +494,120 @@ public class AlarmEventServiceImpl implements AlarmEventService {
|
|
|
|
|
|
@Transactional
|
|
|
@Override
|
|
|
+ public String insertTowerEvent(TowerEventVo towerEventVo) {
|
|
|
+ // 验证是否配置摄像头
|
|
|
+ CenterdataTCamera centerdataTCamera = SpringUtils.getBean(RemoteMonitorService.class).getCameraByChinaTowerDeviceCode(towerEventVo.getDeviceCode());
|
|
|
+ if (StringUtils.isNull(centerdataTCamera)) {
|
|
|
+ logger.info("无法匹配相关设备!铁塔摄像头为:{}", towerEventVo.getDeviceCode());
|
|
|
+ return "";
|
|
|
+ }
|
|
|
+ // 验证是否配置指挥中心
|
|
|
+ List<CenterdataTAidevicedept> listDept = SpringUtils.getBean(RemoteMonitorService.class).listForCommandCenter(centerdataTCamera.getId(), "1", "1").getData();
|
|
|
+ if (StringUtils.isEmpty(listDept)) {
|
|
|
+ logger.info(ERROR_MSG_DEPT, towerEventVo.getDeviceCode());
|
|
|
+ return "";
|
|
|
+ }
|
|
|
+ // 验证事件类型是否配置对应报文码值--只能从数据库配
|
|
|
+ CentereventTEventtype centereventTEventtype = centereventTEventtypeService.selectCentereventTEventtypeByCodeTower(towerEventVo.getAlarmType());
|
|
|
+ if (StringUtils.isNull(centereventTEventtype)) {
|
|
|
+ logger.info("无法匹配相关事件!报文码值为:{}", towerEventVo.getAlarmType());
|
|
|
+ return "";
|
|
|
+ }
|
|
|
+ // 事件目录
|
|
|
+ String eventType = centereventTEventtype.getParentId();
|
|
|
+ String eventTypeXl = centereventTEventtype.getId();
|
|
|
+ String eventName = towerEventVo.getDeviceName() + DateUtils.parseDateToStr(YYYY_MM_DD_HH_MM_SS, towerEventVo.getAlarmTime()) + centereventTEventtype.getEventTypeName();
|
|
|
+ String eventDescription = towerEventVo.toString();
|
|
|
+ String longitude = towerEventVo.getEventLongitude();
|
|
|
+ String latitude = towerEventVo.getEventLatitude();
|
|
|
+ String reportor = towerEventVo.getDeviceName();
|
|
|
+ Date reportTime = towerEventVo.getAlarmTime();
|
|
|
+ String address = towerEventVo.getAddress();
|
|
|
+ CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue(eventType, eventTypeXl, eventName, eventDescription, longitude, latitude, reportor, reportTime, address);
|
|
|
+ centereventTEventcatalogue = this.insertEventCatalogue(centereventTEventcatalogue, centerdataTCamera, null);
|
|
|
+ // 事件部门
|
|
|
+ this.insertEventDept(centereventTEventcatalogue, listDept);
|
|
|
+ // 事件日志
|
|
|
+ String logId = this.insertEventLog(centereventTEventcatalogue);
|
|
|
+ String orderCode = SpringUtils.getBean(RemoteMonitorService.class).getOrderCodeByChinaTowerDeviceCode(towerEventVo.getDeviceCode());
|
|
|
+ if (StringUtils.isNotBlank(towerEventVo.getOriginalPictureUrl())) {
|
|
|
+ String[] pictures = towerEventVo.getOriginalPictureUrl().split(",");
|
|
|
+ for (String picture : pictures) {
|
|
|
+ CenterdataTAttach tAttach = new CenterdataTAttach();
|
|
|
+ tAttach.setBusId(logId);
|
|
|
+ tAttach.setAttachPath(GWHttpUtilsTest65.encrypt(picture, orderCode));
|
|
|
+ tAttach.setBusIndx(BUS_INDEX_2);
|
|
|
+ tAttach.setBusSource("TT_1");
|
|
|
+ tAttach.setFileType(FILE_TYPE_1);
|
|
|
+ remoteDataService.insertAttach(tAttach);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(towerEventVo.getAlarmPictureUrl())) {
|
|
|
+ String[] pictures = towerEventVo.getAlarmPictureUrl().split(",");
|
|
|
+ for (String picture : pictures) {
|
|
|
+ CenterdataTAttach tAttach = new CenterdataTAttach();
|
|
|
+ tAttach.setBusId(logId);
|
|
|
+ tAttach.setAttachPath(GWHttpUtilsTest65.encrypt(picture, orderCode));
|
|
|
+ tAttach.setBusIndx(BUS_INDEX_2);
|
|
|
+ tAttach.setBusSource("TT_1");
|
|
|
+ tAttach.setFileType(FILE_TYPE_1);
|
|
|
+ remoteDataService.insertAttach(tAttach);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(towerEventVo.getAlarmVideoUrl())) {
|
|
|
+ CenterdataTAttach tAttach = new CenterdataTAttach();
|
|
|
+ tAttach.setBusId(logId);
|
|
|
+ tAttach.setAttachPath(GWHttpUtilsTest65.encrypt(towerEventVo.getAlarmVideoUrl(), orderCode));
|
|
|
+ tAttach.setBusIndx(BUS_INDEX_2);
|
|
|
+ tAttach.setBusSource("TT_1");
|
|
|
+ tAttach.setFileType(FILE_TYPE_2);
|
|
|
+ remoteDataService.insertAttach(tAttach);
|
|
|
+ }
|
|
|
+ return centereventTEventcatalogue.getEventCode();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public String updateFireEventImage(TowerEventVo towerEventVo, String logId) {
|
|
|
+ List<CenterdataTAttach> attachList = new ArrayList<>();
|
|
|
+ String orderCode = SpringUtils.getBean(RemoteMonitorService.class).getOrderCodeByChinaTowerDeviceCode(towerEventVo.getDeviceCode());
|
|
|
+ if (StringUtils.isNotBlank(towerEventVo.getOriginalPictureUrl())) {
|
|
|
+ String[] pictures = towerEventVo.getOriginalPictureUrl().split(",");
|
|
|
+ for (String picture : pictures) {
|
|
|
+ CenterdataTAttach tAttach = new CenterdataTAttach();
|
|
|
+ tAttach.setBusId(logId);
|
|
|
+ tAttach.setAttachPath(GWHttpUtilsTest65.encrypt(picture, orderCode));
|
|
|
+ tAttach.setBusIndx(BUS_INDEX_2);
|
|
|
+ tAttach.setBusSource("TT_1");
|
|
|
+ tAttach.setFileType(FILE_TYPE_1);
|
|
|
+ attachList.add(tAttach);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(towerEventVo.getAlarmPictureUrl())) {
|
|
|
+ String[] pictures = towerEventVo.getAlarmPictureUrl().split(",");
|
|
|
+ for (String picture : pictures) {
|
|
|
+ CenterdataTAttach tAttach = new CenterdataTAttach();
|
|
|
+ tAttach.setBusId(logId);
|
|
|
+ tAttach.setAttachPath(GWHttpUtilsTest65.encrypt(picture, orderCode));
|
|
|
+ tAttach.setBusIndx(BUS_INDEX_2);
|
|
|
+ tAttach.setBusSource("TT_1");
|
|
|
+ tAttach.setFileType(FILE_TYPE_1);
|
|
|
+ attachList.add(tAttach);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(towerEventVo.getAlarmVideoUrl())) {
|
|
|
+ CenterdataTAttach tAttach = new CenterdataTAttach();
|
|
|
+ tAttach.setBusId(logId);
|
|
|
+ tAttach.setAttachPath(GWHttpUtilsTest65.encrypt(towerEventVo.getAlarmVideoUrl(), orderCode));
|
|
|
+ tAttach.setBusIndx(BUS_INDEX_2);
|
|
|
+ tAttach.setBusSource("TT_1");
|
|
|
+ tAttach.setFileType(FILE_TYPE_2);
|
|
|
+ attachList.add(tAttach);
|
|
|
+ }
|
|
|
+ return remoteDataService.delAndInsertBatch(JSON.toJSONString(attachList)).getMsg();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Transactional
|
|
|
+ @Override
|
|
|
public String insertSensorEvent(SensorEventVo sensorEventVo) {
|
|
|
// 验证是否配置指挥中心
|
|
|
List<CenterdataTAidevicedept> listDept = SpringUtils.getBean(RemoteMonitorService.class).listForCommandCenter(sensorEventVo.getSensorId(), "1", "1").getData();
|
|
@@ -512,4 +690,101 @@ public class AlarmEventServiceImpl implements AlarmEventService {
|
|
|
this.insertEventLog(centereventTEventcatalogue);
|
|
|
return centereventTEventcatalogue.getEventCode() + "_" + eventtype.getEventTypeName();
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public int insertDroneEvent(List<DroneVO> alarmData) {
|
|
|
+ Map<Object, Object> eventType = new HashMap<>();
|
|
|
+ eventType.put("Sheep","222");
|
|
|
+ eventType.put("Car","218");
|
|
|
+
|
|
|
+ Map<Object, Object> eventLabel = new HashMap<>();
|
|
|
+ eventLabel.put("Sheep","区域入侵");
|
|
|
+ eventLabel.put("Car","工程车检测");
|
|
|
+
|
|
|
+ // 将告警图片转换为本地图片
|
|
|
+ alarmData.parallelStream().forEach(item -> {
|
|
|
+ item.setId(IdUtils.simpleUUID());
|
|
|
+ try {
|
|
|
+ Optional.ofNullable(NetworkImageToMultipartFile.downloadImageToMultipartFile(item.getPhotoPath()))
|
|
|
+ .map(multipartFile -> fileService.upload(multipartFile).getData())
|
|
|
+ .ifPresent(data -> item.setLocalPath(data.getUrl()));
|
|
|
+ } catch (Exception e) {
|
|
|
+ logger.error("Failed to process image for item {}: {}", item.getId(), e.getMessage());
|
|
|
+ }
|
|
|
+ });
|
|
|
+ // 通过无人机id, 获取无人机信息和绑定的指挥中心
|
|
|
+ alarmData.forEach(alarm->{
|
|
|
+ CentermonitorTUav data = SpringUtils.getBean(RemoteMonitorService.class).selectUavByUavId(alarm.getCopterId()).getData();
|
|
|
+ /**
|
|
|
+ * 牛羊 Sheep:222
|
|
|
+ * 车辆 Car: 218
|
|
|
+ */
|
|
|
+
|
|
|
+ String eventName = data.getUavName()+"上报"+MapUtils.getString(eventLabel, alarm.getAlarmType())+"事件";
|
|
|
+ String eventDescription = "基站:"+data.getBaseStationName()+",无人机:"+data.getUavName()+",经度:"+alarm.getLongitude()+",纬度:"+alarm.getLatitude()+",海拔:"+alarm.getAltitude();
|
|
|
+
|
|
|
+ //创建事件主体, 写入事件表.
|
|
|
+ CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue("2", MapUtils.getString(eventType, alarm.getAlarmType()), eventName, eventDescription, alarm.getLongitude(), alarm.getLatitude(), data.getUavName(), alarm.getCreationTime(), "");
|
|
|
+ centereventTEventcatalogue.setLongitude(alarm.getLongitude());
|
|
|
+ centereventTEventcatalogue.setLatitude(alarm.getLatitude());
|
|
|
+ centereventTEventcatalogue.setReportSource(REPORTING_SOURCE_6);
|
|
|
+ CenterdataTCamera centerdataTCamera = new CenterdataTCamera();
|
|
|
+ centerdataTCamera.setId(alarm.getCopterId());
|
|
|
+ centerdataTCamera.setCameraName(data.getUavName());
|
|
|
+ centereventTEventcatalogue = this.insertEventCatalogue(centereventTEventcatalogue, centerdataTCamera, alarm.getCreationTime());
|
|
|
+
|
|
|
+ String eventCode = centereventTEventcatalogue.getEventCode();
|
|
|
+ String createName = centereventTEventcatalogue.getCreateName();
|
|
|
+ Date createTime = centereventTEventcatalogue.getCreateTime();
|
|
|
+ // 事件部门
|
|
|
+ data.getDeptList().forEach(item -> {
|
|
|
+ CentereventDeptEvent centereventTDeptEvent = new CentereventDeptEvent();
|
|
|
+ centereventTDeptEvent.setId(IdUtils.fastSimpleUUID());
|
|
|
+ centereventTDeptEvent.setEventCode(eventCode);
|
|
|
+ centereventTDeptEvent.setDeptId(item.getDeptId());
|
|
|
+ centereventTDeptEvent.setDeptName(item.getDeptName());
|
|
|
+ centereventTDeptEvent.setIsUrged(SYS_ISURGE_2);
|
|
|
+ centereventTDeptEvent.setEventStatus("上报");
|
|
|
+ centereventTDeptEvent.setEventStatusValue(FOREST_EVENT_STATUS_1);
|
|
|
+ centereventTDeptEvent.setDeptHandleType(DEPT_HANDLE_TYPE_2);
|
|
|
+ centereventTDeptEvent.setCreateBy(alarm.getCopterId());
|
|
|
+ centereventTDeptEvent.setCreateName(createName);
|
|
|
+ centereventTDeptEvent.setCreateTime(createTime);
|
|
|
+ centereventTDeptEventService.insertCentereventTDeptEvent(centereventTDeptEvent);
|
|
|
+ });
|
|
|
+
|
|
|
+
|
|
|
+ //事件日志
|
|
|
+ CentereventTFireLog centereventTFireLog = new CentereventTFireLog();
|
|
|
+ centereventTFireLog.setId(IdUtils.simpleUUID());
|
|
|
+ centereventTFireLog.setEventCode(centereventTEventcatalogue.getEventCode());
|
|
|
+ centereventTFireLog.setLogContent(centereventTEventcatalogue.getEventName() + System.getProperty("line.separator") + centereventTEventcatalogue.getEventDescription());
|
|
|
+ centereventTFireLog.setOperation(BUS_OPER_TYPE_2);
|
|
|
+ centereventTFireLog.setOperationType(LOG_OPER_TYPE_4);
|
|
|
+ centereventTFireLog.setCreateBy(alarm.getCopterId());
|
|
|
+ centereventTFireLog.setCreateName(centereventTEventcatalogue.getCreateName());
|
|
|
+ centereventTFireLog.setCreateTime(centereventTEventcatalogue.getCreateTime());
|
|
|
+ if(StringUtils.isNotEmpty(centereventTEventcatalogue.getLongitude())){
|
|
|
+ centereventTFireLog.setLongitude(centereventTEventcatalogue.getLongitude());
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotEmpty(centereventTEventcatalogue.getLatitude())){
|
|
|
+ centereventTFireLog.setLatitude(centereventTEventcatalogue.getLatitude());
|
|
|
+ }
|
|
|
+ centereventTFireLogService.insertCentereventTFireLog(centereventTFireLog);
|
|
|
+
|
|
|
+ //事件附件
|
|
|
+ if (StringUtils.isNotBlank(alarm.getLocalPath())) {
|
|
|
+ CenterdataTAttach tAttach = new CenterdataTAttach();
|
|
|
+ tAttach.setBusId(centereventTFireLog.getId());
|
|
|
+ tAttach.setAttachPath(alarm.getLocalPath());
|
|
|
+ tAttach.setBusIndx(BUS_INDEX_2);
|
|
|
+ tAttach.setBusSource("UAV_1");
|
|
|
+ tAttach.setFileType(FILE_TYPE_1);
|
|
|
+ remoteDataService.insertAttach(tAttach);
|
|
|
+ }
|
|
|
+ });
|
|
|
+
|
|
|
+ return alarmEventMapper.insertDrone(alarmData);
|
|
|
+ }
|
|
|
}
|