Bläddra i källkod

Merge branch 'feature_119' into dev

lyq 1 år sedan
förälder
incheckning
77119c334f

+ 0 - 2
event-ui/vue.config.js

@@ -40,8 +40,6 @@ module.exports = {
     proxy: {
       // detail: https://cli.vuejs.org/config/#devserver-proxy
       [process.env.VUE_APP_BASE_API]: {
-        // target: `http://117.78.49.164:3031`,
-        // target: `http://10.0.0.14:3031`,
         target: `http://127.0.0.1:3031`,
         changeOrigin: true,
         pathRewrite: {

+ 0 - 8
src/main/java/com/sooka/sponest/event/centereventteventcatalogue/controller/AlarmEventController.java

@@ -1,16 +1,11 @@
 package com.sooka.sponest.event.centereventteventcatalogue.controller;
 
-import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
-import com.dahuatech.icc.exception.ClientException;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.StringUtils;
-import com.ruoyi.common.core.web.domain.AjaxResult;
-import com.sooka.sponest.event.centereventteventcatalogue.domain.DaHuaEventBO;
 import com.sooka.sponest.event.centereventteventcatalogue.domain.dahua.DaHuaFireEventVO;
 import com.sooka.sponest.event.centereventteventcatalogue.domain.dahua.DaHuaOtherEventVO;
 import com.sooka.sponest.event.centereventteventcatalogue.domain.haikang.HaiKangEventVo;
-import com.sooka.sponest.event.centereventteventcatalogue.domain.sensor.SensorEventVo;
 import com.sooka.sponest.event.centereventteventcatalogue.service.AlarmEventService;
 import com.sooka.sponest.event.centereventtreportmessage.domain.CentereventTReportmessage;
 import com.sooka.sponest.event.centereventtreportmessage.service.ICentereventTReportmessageService;
@@ -24,8 +19,6 @@ import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.text.SimpleDateFormat;
-import java.util.Date;
 import java.util.List;
 
 @Api(tags = "海康")
@@ -143,7 +136,6 @@ public class AlarmEventController {
     }
 
 
-
 //    /**
 //     * 签收后图片异常补救接口
 //     *

+ 37 - 0
src/main/java/com/sooka/sponest/event/centereventteventcatalogue/controller/CentereventTEventcatalogueController.java

@@ -1,5 +1,6 @@
 package com.sooka.sponest.event.centereventteventcatalogue.controller;
 
+import com.alibaba.fastjson.JSON;
 import com.ruoyi.common.core.constant.HttpStatus;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.SpringUtils;
@@ -31,8 +32,10 @@ import com.sooka.sponest.event.remoteapi.domain.CenterdataTAttach;
 import com.sooka.sponest.event.utils.EventProducerUtil;
 import com.sooka.sponest.event.utils.ExcelUtil;
 import com.sooka.sponest.event.utils.RemoteApiUtil;
+import com.sooka.sponest.monitor.api.RemoteExchangeService;
 import com.sooka.sponest.monitor.api.RemoteMonitorService;
 import com.sooka.sponest.monitor.api.domain.CenterdataTAidevicedept;
+import com.sooka.sponest.monitor.api.domain.FireEventVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -381,4 +384,38 @@ public class CentereventTEventcatalogueController extends BaseController {
             return AjaxResult.success(centereventTEventcatalogueService.eventhandleDownload(id));
         }
     }
+
+    /**
+     * 119事件推送
+     *
+     * @param fireEventVO
+     * @return
+     */
+    @PostMapping("/push3rdSystemEvent")
+    public R push3rdSystemEvent(@Validated @RequestBody FireEventVO fireEventVO) {
+        if (StringUtils.isBlank(fireEventVO.getEventId()) || StringUtils.isBlank(fireEventVO.getEventCode())) {
+            return R.ok(HttpStatus.UNSUPPORTED_TYPE, "参数异常");
+        }
+        // 101森林火情、102秸秆禁烧、103建筑物火情、1002消防占道、510水压监测异常、1001电瓶车进电梯
+        if (!Arrays.asList("101", "102", "103", "510", "1001", "1002", "1003", "1004").contains(fireEventVO.getEventType())) {
+            return R.ok(HttpStatus.UNSUPPORTED_TYPE, "无法推送该类型事件");
+        }
+        List<String> pictures = fireEventVO.getEventPicture().stream().map(item -> item.substring(item.indexOf("group1"))).collect(Collectors.toList());
+        fireEventVO.setPictureUrlList(pictures);
+        R result = SpringUtils.getBean(RemoteExchangeService.class).receiveEventData(fireEventVO);
+        logger.info("事件接受参数:{}, 事件结果返回:{}", JSON.toJSONString(fireEventVO), JSON.toJSONString(result));
+        if (200 == result.getCode()) {
+            // log
+            CentereventTFireLog log = new CentereventTFireLog();
+            log.setId(IdUtils.simpleUUID());
+            log.setEventCode(fireEventVO.getEventCode());
+            log.setLogContent(SecurityUtils.getLoginUser().getSysUser().getNickName() + "推送该事件至119接处警");
+            centereventTFireLogService.insertCentereventTFireLog(log);
+            CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue();
+            centereventTEventcatalogue.setId(fireEventVO.getEventId());
+            centereventTEventcatalogue.setIsPush("1");
+            return R.ok(centereventTEventcatalogueService.updateCentereventTEventcatalogue(centereventTEventcatalogue));
+        }
+        return result;
+    }
 }

+ 59 - 6
src/main/java/com/sooka/sponest/event/centereventteventcatalogue/controller/FireIncidentController.java

@@ -6,15 +6,20 @@ import com.dahuatech.icc.exception.ClientException;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.core.web.domain.AjaxResult;
+import com.ruoyi.common.security.utils.SecurityUtils;
+import com.ruoyi.system.api.model.LoginUser;
 import com.sooka.sponest.event.centereventteventcatalogue.domain.DaHuaEventBO;
 import com.sooka.sponest.event.centereventteventcatalogue.domain.sensor.SensorEventVo;
 import com.sooka.sponest.event.centereventteventcatalogue.service.AlarmEventService;
+import com.sooka.sponest.event.centereventteventtype.domain.CentereventTEventtype;
+import com.sooka.sponest.event.centereventteventtype.service.ICentereventTEventtypeService;
 import com.sooka.sponest.event.centereventtreportmessage.domain.CentereventTReportmessage;
 import com.sooka.sponest.event.centereventtreportmessage.service.ICentereventTReportmessageService;
-import io.swagger.annotations.ApiOperation;
+import com.sooka.sponest.monitor.api.domain.FireEventVO;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -35,8 +40,12 @@ public class FireIncidentController {
     @Autowired
     private ICentereventTReportmessageService centereventTReportmessageService;
 
+    @Autowired
+    private ICentereventTEventtypeService centereventTEventtypeService;
+
     /**
      * 传感器事件上报
+     *
      * @param sensorEventVo
      * @return R
      */
@@ -49,7 +58,7 @@ public class FireIncidentController {
             logger.error(e.getMessage());
         }
         if (StringUtils.isBlank(eventCode)) {
-            eventCode = String.valueOf(System.currentTimeMillis()) + "_";
+            eventCode = System.currentTimeMillis() + "_";
         }
         try {
             String[] array = eventCode.split("_");
@@ -66,14 +75,14 @@ public class FireIncidentController {
 
     /**
      * 事件回查图片
-     * @param eventBO
-     *  eventCode 事件编号
-     *  logId  事件日志id
+     *
+     * @param eventBO eventCode 事件编号
+     *                logId  事件日志id
      * @return AjaxResult
      * @throws ClientException 异常类
      */
     @PostMapping("/updateFireEventImage")
-    public AjaxResult  updateFireEventImage(@RequestBody DaHuaEventBO eventBO) throws ClientException {
+    public AjaxResult updateFireEventImage(@RequestBody DaHuaEventBO eventBO) throws ClientException {
         CentereventTReportmessage centereventTReportmessage = null;
         if (StringUtils.isNotBlank(eventBO.getEventCode()) && StringUtils.isNotBlank(eventBO.getLogId())) {
             // 通过eventCode获取报文信息
@@ -89,4 +98,48 @@ public class FireIncidentController {
         eventBO.setDbType("0");
         return AjaxResult.success(alarmEventService.updateFireEventImage(eventBO));
     }
+
+    /**
+     * 119事件上报
+     *
+     * @param fireEventVO
+     * @return
+     */
+    @PostMapping("/insert3rdSystemEvent")
+    public R insert3rdSystemEvent(@Validated @RequestBody FireEventVO fireEventVO) {
+        // 验证token
+        LoginUser loginUser = SecurityUtils.getLoginUser();
+        if (StringUtils.isNull(loginUser)) {
+            logger.error("权限认证失败---{}", fireEventVO);
+            return R.fail("权限认证失败");
+        }
+        // 根据事件小类,反查事件大类
+        CentereventTEventtype eventtype = centereventTEventtypeService.selectCentereventTEventtypeById(fireEventVO.getEventType());
+        if (StringUtils.isNull(eventtype)) {
+            logger.error("不支持的事件类型---{}", fireEventVO);
+            return R.fail("不支持的事件类型");
+        }
+        StringBuilder eventCode = new StringBuilder();
+        try {
+            fireEventVO.setEventSupType(eventtype.getParentId());
+            // 处理上报逻辑
+            eventCode.append(alarmEventService.insert3rdSystemEvent(fireEventVO));
+        } catch (Exception e) {
+            logger.error(e.getMessage());
+        }
+        if (StringUtils.isBlank(eventCode.toString())) {
+            eventCode.append(System.currentTimeMillis());
+        }
+        // 写入报文
+        try {
+            CentereventTReportmessage tReportMessage = new CentereventTReportmessage();
+            tReportMessage.setId(eventCode.toString());
+            tReportMessage.setSource("119接处警-" + eventtype.getEventTypeName());
+            tReportMessage.setContext(JSON.toJSONString(fireEventVO));
+            centereventTReportmessageService.insertCentereventTReportmessage(tReportMessage);
+        } catch (Exception e) {
+            logger.error(e.getMessage());
+        }
+        return R.ok(null, "接收成功");
+    }
 }

+ 17 - 1
src/main/java/com/sooka/sponest/event/centereventteventcatalogue/domain/CentereventTEventcatalogue.java

@@ -23,7 +23,10 @@ public class CentereventTEventcatalogue extends BaseBusinessEntity {
 
     }
 
-    public CentereventTEventcatalogue(String eventType, String eventTypeXl, String eventName, String eventDescription, String longitude, String latitude, String reportor, Date reportTime, String address) {
+    public CentereventTEventcatalogue(String eventType, String eventTypeXl, String eventName, String eventDescription, String longitude, String latitude,
+                                      String reportor, Date reportTime, String address, String reportSource, String eventStatus, String eventStatusValue,
+                                      String createBy, String createName, Date createTime) {
+        super(createBy, createName, createTime);
         this.eventType = eventType;
         this.eventTypeXl = eventTypeXl;
         this.eventName = eventName;
@@ -33,6 +36,9 @@ public class CentereventTEventcatalogue extends BaseBusinessEntity {
         this.reportor = reportor;
         this.reportTime = reportTime;
         this.address = address;
+        this.reportSource = reportSource;
+        this.eventStatus = eventStatus;
+        this.eventStatusValue = eventStatusValue;
     }
 
     private static final long serialVersionUID = 1L;
@@ -192,6 +198,8 @@ public class CentereventTEventcatalogue extends BaseBusinessEntity {
 
     private String isExamine;// 是否审核
 
+    private String isPush;// 是否推送
+
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private Date gdTime;// 归档时间
 
@@ -425,6 +433,14 @@ public class CentereventTEventcatalogue extends BaseBusinessEntity {
         this.isExamine = isExamine;
     }
 
+    public String getIsPush() {
+        return isPush;
+    }
+
+    public void setIsPush(String isPush) {
+        this.isPush = isPush;
+    }
+
     public void setStatusFlag(String statusFlag) {
         this.statusFlag = statusFlag;
     }

+ 5 - 0
src/main/java/com/sooka/sponest/event/centereventteventcatalogue/service/AlarmEventService.java

@@ -7,6 +7,7 @@ import com.sooka.sponest.event.centereventteventcatalogue.domain.dahua.DaHuaOthe
 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.monitor.api.domain.FireEventVO;
 
 public interface AlarmEventService {
 
@@ -29,4 +30,8 @@ public interface AlarmEventService {
 
     // 传感器事件
     String insertSensorEvent(SensorEventVo sensorEventVo);
+
+
+    // 119接处警
+    String insert3rdSystemEvent(FireEventVO fireEventVO);
 }

+ 96 - 50
src/main/java/com/sooka/sponest/event/centereventteventcatalogue/service/impl/AlarmEventServiceImpl.java

@@ -8,6 +8,7 @@ import com.ruoyi.common.core.utils.DateUtils;
 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.common.security.utils.SecurityUtils;
 import com.sooka.sponest.event.centereventtdeptevent.domain.CentereventDeptEvent;
 import com.sooka.sponest.event.centereventtdeptevent.service.ICentereventDeptEventService;
 import com.sooka.sponest.event.centereventteventcatalogue.domain.CentereventTEventcatalogue;
@@ -30,6 +31,7 @@ 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.FireEventVO;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -94,8 +96,9 @@ public class AlarmEventServiceImpl implements AlarmEventService {
         String reportor = eventsVo.getSrcName();
         Date reportTime = eventsVo.getData().getSendTime();
         String address = eventsVo.getData().getAlarm().getPlaceName();
-        CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue("1", null, eventName, eventDescription, longitude, latitude, reportor, reportTime, address);
-        centereventTEventcatalogue = this.insertEventCatalogue(centereventTEventcatalogue, centerdataTCamera, null);
+        CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue("1", null, eventName, eventDescription, longitude, latitude, reportor, reportTime, address,
+                REPORTING_SOURCE_1, "上报", FOREST_EVENT_STATUS_1, centerdataTCamera.getId(), centerdataTCamera.getCameraName(), DateUtils.getNowDate());
+        centereventTEventcatalogue = this.insertEventCatalogue(centereventTEventcatalogue);
         // 事件部门
         this.insertEventDept(centereventTEventcatalogue, listDept);
         // 事件日志
@@ -154,8 +157,9 @@ public class AlarmEventServiceImpl implements AlarmEventService {
         String reportor = eventsVo.getSrcName();
         Date reportTime = haiKangEventVo.getSendTime();
         String address = eventsVo.getData().getText()[0].getOrgName();
-        CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue(eventType, eventTypeXl, eventName, eventDescription, longitude, latitude, reportor, reportTime, address);
-        centereventTEventcatalogue = this.insertEventCatalogue(centereventTEventcatalogue, centerdataTCamera, null);
+        CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue(eventType, eventTypeXl, eventName, eventDescription, longitude, latitude, reportor, reportTime, address,
+                REPORTING_SOURCE_1, "上报", FOREST_EVENT_STATUS_1, centerdataTCamera.getId(), centerdataTCamera.getCameraName(), DateUtils.getNowDate());
+        centereventTEventcatalogue = this.insertEventCatalogue(centereventTEventcatalogue);
         // 事件部门
         this.insertEventDept(centereventTEventcatalogue, listDept);
         // 事件日志
@@ -173,55 +177,61 @@ public class AlarmEventServiceImpl implements AlarmEventService {
     }
 
     // 事件目录
-    private CentereventTEventcatalogue insertEventCatalogue(CentereventTEventcatalogue centereventTEventcatalogue, CenterdataTCamera centerdataTCamera, Date createTime) {
+    private CentereventTEventcatalogue insertEventCatalogue(CentereventTEventcatalogue eventcatalogue) {
         //生成uuid
         String eventCode = IdUtils.simpleUUID();
-        centereventTEventcatalogue.setId(eventCode);
-        centereventTEventcatalogue.setEventCode(eventCode);
-
-        if (null == centereventTEventcatalogue.getReportSource()) {
-            centereventTEventcatalogue.setReportSource(REPORTING_SOURCE_1);//reporting_source_1
+        eventcatalogue.setId(eventCode);
+        eventcatalogue.setEventCode(eventCode);
+        eventcatalogue.setIsUrged(SYS_ISURGE_2);// sys_isurge_2
+        eventcatalogue.setEventStatus(null == eventcatalogue.getEventStatus() ? "上报" : eventcatalogue.getEventStatus());
+        eventcatalogue.setEventStatusValue(null == eventcatalogue.getEventStatusValue() ? FOREST_EVENT_STATUS_1 : eventcatalogue.getEventStatusValue());// forest_event_status_1
+        if (null == eventcatalogue.getCreateTime()) {
+            eventcatalogue.setCreateTime(DateUtils.getNowDate());
         }
-        centereventTEventcatalogue.setIsUrged(SYS_ISURGE_2);//sys_isurge_2
-        centereventTEventcatalogue.setEventStatus("上报");
-        centereventTEventcatalogue.setEventStatusValue(FOREST_EVENT_STATUS_1);//forest_event_status_1
-        centereventTEventcatalogue.setCreateBy(centerdataTCamera.getId());
-        centereventTEventcatalogue.setCreateName(centerdataTCamera.getCameraName());
-        centereventTEventcatalogue.setCreateTime(null == createTime ? DateUtils.getNowDate() : createTime);
-        centereventTEventcatalogueService.insertCentereventTEventcatalogue(centereventTEventcatalogue);
-        return centereventTEventcatalogue;
+        centereventTEventcatalogueService.insertCentereventTEventcatalogue(eventcatalogue);
+        return eventcatalogue;
     }
 
     // 事件部门
-    private void insertEventDept(CentereventTEventcatalogue centereventTEventcatalogue, List<CenterdataTAidevicedept> listDept) {
+    private void insertEventDept(CentereventTEventcatalogue eventcatalogue, List<CenterdataTAidevicedept> listDept) {
         listDept.forEach(item -> {
-            CentereventDeptEvent centereventTDeptEvent = new CentereventDeptEvent();
-            centereventTDeptEvent.setId(IdUtils.fastSimpleUUID());
-            centereventTDeptEvent.setEventCode(centereventTEventcatalogue.getEventCode());
-            centereventTDeptEvent.setDeptId(item.getMapDeptId());
-            centereventTDeptEvent.setDeptName(item.getMapDeptName());
-            centereventTDeptEvent.setIsUrged(SYS_ISURGE_2);
-            centereventTDeptEvent.setEventStatus("上报");
-            centereventTDeptEvent.setEventStatusValue(FOREST_EVENT_STATUS_1);
-            centereventTDeptEvent.setDeptHandleType(DEPT_HANDLE_TYPE_2);
-            centereventTDeptEvent.setCreateName(centereventTEventcatalogue.getCreateName());
-            centereventTDeptEvent.setCreateTime(centereventTEventcatalogue.getCreateTime());
-            centereventTDeptEventService.insertCentereventTDeptEvent(centereventTDeptEvent);
+            CentereventDeptEvent deptEvent = new CentereventDeptEvent();
+            deptEvent.setId(IdUtils.fastSimpleUUID());
+            deptEvent.setEventCode(eventcatalogue.getEventCode());
+            deptEvent.setDeptId(item.getMapDeptId());
+            deptEvent.setDeptName(item.getMapDeptName());
+            deptEvent.setIsUrged(SYS_ISURGE_2);
+            deptEvent.setEventStatus(eventcatalogue.getEventStatus());
+            deptEvent.setEventStatusValue(eventcatalogue.getEventStatusValue());
+            if (REPORTING_SOURCE_5.equals(eventcatalogue.getReportSource())) {
+                deptEvent.setDeptHandleType(DEPT_HANDLE_TYPE_1);
+                deptEvent.setCreateBy(eventcatalogue.getCreateBy());
+            } else {
+                deptEvent.setDeptHandleType(DEPT_HANDLE_TYPE_2);
+            }
+            deptEvent.setCreateName(eventcatalogue.getCreateName());
+            deptEvent.setCreateTime(eventcatalogue.getCreateTime());
+            centereventTDeptEventService.insertCentereventTDeptEvent(deptEvent);
         });
     }
 
     // 事件日志
-    private String insertEventLog(CentereventTEventcatalogue centereventTEventcatalogue) {
-        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_3);
-        centereventTFireLog.setCreateName(centereventTEventcatalogue.getCreateName());
-        centereventTFireLog.setCreateTime(centereventTEventcatalogue.getCreateTime());
-        centereventTFireLogService.insertCentereventTFireLog(centereventTFireLog);
-        return centereventTFireLog.getId();
+    private String insertEventLog(CentereventTEventcatalogue eventcatalogue) {
+        CentereventTFireLog fireLog = new CentereventTFireLog();
+        fireLog.setId(IdUtils.simpleUUID());
+        fireLog.setEventCode(eventcatalogue.getEventCode());
+        fireLog.setLogContent(eventcatalogue.getEventName() + System.getProperty("line.separator") + eventcatalogue.getEventDescription());
+        fireLog.setOperation(BUS_OPER_TYPE_2);
+        if (REPORTING_SOURCE_5.equals(eventcatalogue.getReportSource())) {
+            fireLog.setOperationType(LOG_OPER_TYPE_4);
+            fireLog.setCreateBy(eventcatalogue.getCreateBy());
+        } else {
+            fireLog.setOperationType(LOG_OPER_TYPE_3);
+        }
+        fireLog.setCreateName(eventcatalogue.getCreateName());
+        fireLog.setCreateTime(eventcatalogue.getCreateTime());
+        centereventTFireLogService.insertCentereventTFireLog(fireLog);
+        return fireLog.getId();
     }
 
 
@@ -250,6 +260,7 @@ public class AlarmEventServiceImpl implements AlarmEventService {
             return "";
         }
         // 事件目录
+        //四平市双辽市卧虎镇贺家村热感应 + 2024-01-05 10:32:54 + 火情报警
         String eventName = daHuaFireEventVO.getInfo().getChannelName() + daHuaFireEventVO.getInfo().getAlarmDateStr() + daHuaFireEventVO.getInfo().getAlarmTypeName();
         String eventDescription = daHuaFireEventVO.getInfo().toString(centerdataTCamera);
         String longitude = StringUtils.isEmpty(daHuaFireEventVO.getInfo().getFirePoint()) ? centerdataTCamera.getLongitude() : daHuaFireEventVO.getInfo().getFirePoint()[0].getGpsX();
@@ -257,8 +268,9 @@ public class AlarmEventServiceImpl implements AlarmEventService {
         String reportor = daHuaFireEventVO.getInfo().getDeviceName();
         Date reportTime = DateUtils.timestampToTime(daHuaFireEventVO.getInfo().getAlarmDate());
         String address = centerdataTCamera.getCameraRegion();
-        CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue("1", null, eventName, eventDescription, longitude, latitude, reportor, reportTime, address);
-        centereventTEventcatalogue = this.insertEventCatalogue(centereventTEventcatalogue, centerdataTCamera, daHuaFireEventVO.getCreateTime());
+        CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue("1", null, eventName, eventDescription, longitude, latitude, reportor, reportTime, address,
+                REPORTING_SOURCE_1, "上报", FOREST_EVENT_STATUS_1, centerdataTCamera.getId(), centerdataTCamera.getCameraName(), daHuaFireEventVO.getCreateTime());
+        centereventTEventcatalogue = this.insertEventCatalogue(centereventTEventcatalogue);
         // 事件部门
         this.insertEventDept(centereventTEventcatalogue, listDept);
         // 事件日志
@@ -351,8 +363,9 @@ public class AlarmEventServiceImpl implements AlarmEventService {
         String reportor = centerdataTCamera.getCameraName();
         Date reportTime = DateUtils.timestampToTime(daHuaOtherEventVO.getAlarmTime());
         String address = daHuaOtherEventVO.getAddress();
-        CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue(eventType, eventTypeXl, eventName, eventDescription, longitude, latitude, reportor, reportTime, address);
-        centereventTEventcatalogue = this.insertEventCatalogue(centereventTEventcatalogue, centerdataTCamera, daHuaOtherEventVO.getCreateTime());
+        CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue(eventType, eventTypeXl, eventName, eventDescription, longitude, latitude, reportor, reportTime, address,
+                REPORTING_SOURCE_1, "上报", FOREST_EVENT_STATUS_1, centerdataTCamera.getId(), centerdataTCamera.getCameraName(), daHuaOtherEventVO.getCreateTime());
+        centereventTEventcatalogue = this.insertEventCatalogue(centereventTEventcatalogue);
         // 事件部门
         this.insertEventDept(centereventTEventcatalogue, listDept);
         // 事件日志
@@ -384,10 +397,9 @@ public class AlarmEventServiceImpl implements AlarmEventService {
         // 事件目录
         CentereventTEventtype eventtype = centereventTEventtypeService.selectCentereventTEventtypeById(sensorEventVo.getEventTypeXl());
         String eventName = sensorEventVo.getReportor() + DateUtils.parseDateToStr(YYYY_MM_DD_HH_MM_SS, sensorEventVo.getReportTime()) + eventtype.getEventTypeName();
-        CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue(sensorEventVo.getEventType(), sensorEventVo.getEventTypeXl(), eventName, sensorEventVo.getEventDescription(), sensorEventVo.getLongitude(), sensorEventVo.getLatitude(), sensorEventVo.getReportor(), sensorEventVo.getReportTime(), sensorEventVo.getAddress());
-        centereventTEventcatalogue.setReportSource(REPORTING_SOURCE_4);
-        CenterdataTCamera centerdataTCamera = new CenterdataTCamera(sensorEventVo.getSensorId(), sensorEventVo.getReportor());
-        centereventTEventcatalogue = this.insertEventCatalogue(centereventTEventcatalogue, centerdataTCamera, null);
+        CentereventTEventcatalogue centereventTEventcatalogue = new CentereventTEventcatalogue(sensorEventVo.getEventType(), sensorEventVo.getEventTypeXl(), eventName, sensorEventVo.getEventDescription(), sensorEventVo.getLongitude(), sensorEventVo.getLatitude(), sensorEventVo.getReportor(), sensorEventVo.getReportTime(), sensorEventVo.getAddress(),
+                REPORTING_SOURCE_4, "上报", FOREST_EVENT_STATUS_1, sensorEventVo.getSensorId(), sensorEventVo.getReportor(), DateUtils.getNowDate());
+        centereventTEventcatalogue = this.insertEventCatalogue(centereventTEventcatalogue);
         // 事件部门
         this.insertEventDept(centereventTEventcatalogue, listDept);
         // 事件日志
@@ -403,4 +415,38 @@ public class AlarmEventServiceImpl implements AlarmEventService {
         }
         return centereventTEventcatalogue.getEventCode() + "_" + eventtype.getEventTypeName();
     }
+
+    /**
+     * 119平台上报事件
+     *
+     * @param fireEventVO
+     * @return
+     */
+    @Override
+    public String insert3rdSystemEvent(FireEventVO fireEventVO) {
+        // 事件信息
+        CentereventTEventcatalogue eventcatalogue = new CentereventTEventcatalogue(fireEventVO.getEventSupType(), fireEventVO.getEventType(), fireEventVO.getEventName(), fireEventVO.getEventDescription(),
+                fireEventVO.getEventLongitude(), fireEventVO.getEventLatitude(), fireEventVO.getEventReporter(), fireEventVO.getEventReportTime(), fireEventVO.getEventLocation(), REPORTING_SOURCE_5,
+                "签收", FOREST_EVENT_STATUS_2, SecurityUtils.getLoginUser().getSysUser().getUserId().toString(), SecurityUtils.getLoginUser().getSysUser().getNickName(), DateUtils.getNowDate());
+        eventcatalogue.setDeptId(SecurityUtils.getLoginUser().getSysUser().getDeptId());
+        eventcatalogue.setDeptName(SecurityUtils.getLoginUser().getSysUser().getDeptNames());
+        eventcatalogue = this.insertEventCatalogue(eventcatalogue);
+        // 事件部门
+        List<CenterdataTAidevicedept> listDept = new ArrayList<>();
+        listDept.add(new CenterdataTAidevicedept(eventcatalogue.getDeptId(), eventcatalogue.getDeptName()));
+        this.insertEventDept(eventcatalogue, listDept);
+        String logId = this.insertEventLog(eventcatalogue);
+        List<CenterdataTAttach> attachList = new ArrayList<>();
+        for (String picture : fireEventVO.getPictureUrlList()) {
+            CenterdataTAttach attach = new CenterdataTAttach();
+            attach.setBusId(logId);
+            attach.setAttachPath(picture);
+            attach.setBusIndx(BUS_INDEX_1);
+            attach.setBusSource("3RD");
+            attach.setFileType(FILE_TYPE_1);
+            attachList.add(attach);
+        }
+        remoteDataService.delAndInsertBatch(JSON.toJSONString(attachList));
+        return eventcatalogue.getEventCode();
+    }
 }

+ 2 - 2
src/main/java/com/sooka/sponest/event/centereventteventcatalogue/service/impl/CentereventTEventcatalogueServiceImpl.java

@@ -184,7 +184,7 @@ public class CentereventTEventcatalogueServiceImpl extends BaseService implement
             centereventTFireLog.setOperationType(LOG_OPER_TYPE_1);
         } else {
             //APP上报图片
-            centereventTFireLog.setOperationType("log_oper_type_2");
+            centereventTFireLog.setOperationType(LOG_OPER_TYPE_2);
         }
         centereventTEventcatalogue.setReportor(SecurityUtils.getLoginUser().getSysUser().getNickName());
         centereventTEventcatalogue.setReportTime(new Date());
@@ -568,7 +568,7 @@ public class CentereventTEventcatalogueServiceImpl extends BaseService implement
         centereventTLog.setLatitude(centereventTEventcatalogue.getLatitude());
         centereventTLog.setLongitude(centereventTEventcatalogue.getLongitude());
         if ("APP".equals(centereventtDeptEventBO.getCzlx())) {
-            centereventTLog.setOperationType("log_oper_type_2");
+            centereventTLog.setOperationType(LOG_OPER_TYPE_2);
         } else {
             centereventTLog.setOperationType(LOG_OPER_TYPE_1);
         }

+ 26 - 3
src/main/java/com/sooka/sponest/event/centereventteventtype/controller/CentereventTEventtypeController.java

@@ -40,9 +40,30 @@ public class CentereventTEventtypeController extends BaseController {
     public TableDataInfo list(CentereventTEventtype centereventTEventtype) {
         startPage();
         List<CentereventTEventtype> list = centereventTEventtypeService.selectCentereventTEventtypeList(centereventTEventtype);
+        for (CentereventTEventtype type : list) {
+            dateChange(type);
+        }
         return getDataTable(list);
     }
 
+    private void dateChange(CentereventTEventtype type) {
+        long reminderTimeDay = Long.parseLong(type.getReminderTime()) / 1440;
+        long reminderTimeHour = (Long.parseLong(type.getReminderTime()) % 1440) / 60;
+        long reminderTimeMinute = (Long.parseLong(type.getReminderTime()) % 1440) % 60;
+        type.setReminderTimeDay(String.valueOf(reminderTimeDay));
+        type.setReminderTimeHour(String.valueOf(reminderTimeHour));
+        type.setReminderTimeMinute(String.valueOf(reminderTimeMinute));
+        String reminderTime;
+        if (reminderTimeDay != 0) {
+            reminderTime = reminderTimeDay + "天" + reminderTimeHour + "时" + reminderTimeMinute + "分";
+        } else if (reminderTimeHour != 0) {
+            reminderTime = reminderTimeHour + "时" + reminderTimeMinute + "分";
+        } else {
+            reminderTime = reminderTimeMinute + "分";
+        }
+        type.setReminderTime(reminderTime);
+    }
+
     /**
      * 查询事件类型列表
      */
@@ -70,7 +91,9 @@ public class CentereventTEventtypeController extends BaseController {
     @RequiresPermissions("eventtype:eventtype:query")
     @GetMapping(value = "/{id}")
     public AjaxResult getInfo(@PathVariable("id") String id) {
-        return AjaxResult.success(centereventTEventtypeService.selectCentereventTEventtypeById(id));
+        CentereventTEventtype type = centereventTEventtypeService.selectCentereventTEventtypeById(id);
+        dateChange(type);
+        return AjaxResult.success(type);
     }
 
     /**
@@ -81,7 +104,7 @@ public class CentereventTEventtypeController extends BaseController {
     @PostMapping
     public AjaxResult add(@RequestBody CentereventTEventtype centereventTEventtype) {
         int num = centereventTEventtypeService.insertCentereventTEventtype(centereventTEventtype);
-        if (num == 0){
+        if (num == 0) {
             return AjaxResult.error("催办时间不能为0!");
         }
         return AjaxResult.success();
@@ -95,7 +118,7 @@ public class CentereventTEventtypeController extends BaseController {
     @PutMapping
     public AjaxResult edit(@RequestBody CentereventTEventtype centereventTEventtype) {
         int num = centereventTEventtypeService.updateCentereventTEventtype(centereventTEventtype);
-        if (num == 0){
+        if (num == 0) {
             return AjaxResult.error("催办时间不能为0!");
         }
         return AjaxResult.success();

+ 2 - 26
src/main/java/com/sooka/sponest/event/centereventteventtype/service/impl/CentereventTEventtypeServiceImpl.java

@@ -38,29 +38,7 @@ public class CentereventTEventtypeServiceImpl implements ICentereventTEventtypeS
      */
     @Override
     public List<CentereventTEventtype> selectCentereventTEventtypeList(CentereventTEventtype centereventTEventtype) {
-        List<CentereventTEventtype> list = centereventTEventtypeMapper.selectCentereventTEventtypeList(centereventTEventtype);
-        for (CentereventTEventtype type : list) {
-            dateChange(type);
-        }
-        return list;
-    }
-
-    private void dateChange(CentereventTEventtype type) {
-        long reminderTimeDay = Long.parseLong(type.getReminderTime()) / 1440;
-        long reminderTimeHour = (Long.parseLong(type.getReminderTime()) % 1440) / 60;
-        long reminderTimeMinute = (Long.parseLong(type.getReminderTime()) % 1440) % 60;
-        type.setReminderTimeDay(String.valueOf(reminderTimeDay));
-        type.setReminderTimeHour(String.valueOf(reminderTimeHour));
-        type.setReminderTimeMinute(String.valueOf(reminderTimeMinute));
-        String reminderTime;
-        if (reminderTimeDay != 0) {
-            reminderTime = reminderTimeDay + "天" + reminderTimeHour + "时" + reminderTimeMinute + "分";
-        } else if (reminderTimeHour != 0) {
-            reminderTime = reminderTimeHour + "时" + reminderTimeMinute + "分";
-        } else {
-            reminderTime = reminderTimeMinute + "分";
-        }
-        type.setReminderTime(reminderTime);
+        return centereventTEventtypeMapper.selectCentereventTEventtypeList(centereventTEventtype);
     }
 
     /**
@@ -71,9 +49,7 @@ public class CentereventTEventtypeServiceImpl implements ICentereventTEventtypeS
      */
     @Override
     public CentereventTEventtype selectCentereventTEventtypeById(String id) {
-        CentereventTEventtype type = centereventTEventtypeMapper.selectCentereventTEventtypeById(id);
-        dateChange(type);
-        return type;
+        return centereventTEventtypeMapper.selectCentereventTEventtypeById(id);
     }
 
     /**

+ 4 - 0
src/main/java/com/sooka/sponest/event/utils/EventConstants.java

@@ -18,11 +18,13 @@ public class EventConstants {
     // 事件来源
     public static final String REPORTING_SOURCE_1 = "reporting_source_1";// AI
     public static final String REPORTING_SOURCE_4 = "reporting_source_4";// 传感器
+    public static final String REPORTING_SOURCE_5 = "reporting_source_5";// 第三方协查
 
     // 是否催办
     public static final String SYS_ISURGE_2 = "sys_isurge_2";// 否
 
     // 部门类型
+    public static final String DEPT_HANDLE_TYPE_1 = "dept_handleType_1";// 责任单位
     public static final String DEPT_HANDLE_TYPE_2 = "dept_handleType_2";// 配合单位
     public static final String DEPT_HANDLE_TYPE_3 = "dept_handleType_3";// 行管局
 
@@ -32,7 +34,9 @@ public class EventConstants {
 
     // 日志操作类型
     public static final String LOG_OPER_TYPE_1 = "log_oper_type_1";
+    public static final String LOG_OPER_TYPE_2 = "log_oper_type_2";
     public static final String LOG_OPER_TYPE_3 = "log_oper_type_3";// AI反馈
+    public static final String LOG_OPER_TYPE_4 = "log_oper_type_4";// 第三方协查
 
     // 附件索引
     public static final String BUS_INDEX_1 = "bus_indx_forest";// 火情事件

+ 0 - 3
src/main/resources/bootstrap.yml

@@ -1,6 +1,3 @@
-# Tomcat
-server:
-  port: 10003
 # Spring
 spring:
   main:

+ 3 - 1
src/main/resources/mapper/centereventteventcatalogue/CentereventTEventcatalogueMapper.xml

@@ -35,10 +35,11 @@
         <result property="address" column="address"/>
         <result property="escalation" column="escalation"/>
         <result property="isExamine" column="is_examine"/>
+        <result property="isPush" column="is_push"/>
     </resultMap>
 
     <sql id="selectCentereventTEventcatalogueVo">
-        select id, event_code, event_type, event_type_xl, event_name, event_description, report_source, longitude, latitude, reportor,report_time, is_urged, event_status, event_status_value, create_by, create_name, create_time, update_by, update_name, update_time, data_status, dept_id, dept_name, IFNULL(version, 0) version, urge_count, address, escalation, is_examine from centerevent_t_eventcatalogue
+        select id, event_code, event_type, event_type_xl, event_name, event_description, report_source, longitude, latitude, reportor,report_time, is_urged, event_status, event_status_value, create_by, create_name, create_time, update_by, update_name, update_time, data_status, dept_id, dept_name, IFNULL(version, 0) version, urge_count, address, escalation, is_examine, is_push from centerevent_t_eventcatalogue
     </sql>
 
     <select id="selectCentereventTEventcatalogueListByPc" parameterType="CentereventTEventcatalogue"
@@ -266,6 +267,7 @@
             <if test="address != null ">address = #{address},</if>
             <if test="escalation != null ">escalation = #{escalation},</if>
             <if test="isExamine != null ">is_examine = #{isExamine},</if>
+            <if test="isPush != null ">is_push = #{isPush},</if>
             <if test="gdTime != null ">gd_time = #{gdTime},</if>
         </trim>
         where id = #{id}