459242451@qq.com 3 жил өмнө
parent
commit
e93b48b7ee
20 өөрчлөгдсөн 221 нэмэгдсэн , 61 устгасан
  1. 13 10
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/NoticeInfoListiner.java
  2. 17 4
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/IncidentController.java
  3. 15 0
      ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/ResourceController.java
  4. 1 1
      ruoyi-admin/src/main/resources/bootstrap.yml
  5. 8 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/Incident.java
  6. 4 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/IncidentProcess.java
  7. 17 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/BacklogMessageUpdateBo.java
  8. 11 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/IncidentBo.java
  9. 4 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/IncidentProcessBo.java
  10. 1 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/MessagePushUser.java
  11. 4 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/vo/IncidentProcessVo.java
  12. 12 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/vo/IncidentVo.java
  13. 9 2
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/feign/FeignBacklogInfoService.java
  14. 11 1
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/feign/fallback/FeignBacklogInfoFallback.java
  15. 44 38
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/IIncidentProcessService.java
  16. 1 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/IIncidentTaskService.java
  17. 11 3
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/DhServiceImpl.java
  18. 28 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/IncidentProcessServiceImpl.java
  19. 7 0
      ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/IncidentServiceImpl.java
  20. 3 2
      ruoyi-zhdd/src/main/resources/mapper/zhdd/IncidentMapper.xml

+ 13 - 10
ruoyi-admin/src/main/java/com/ruoyi/web/controller/task/NoticeInfoListiner.java

@@ -1,5 +1,6 @@
 package com.ruoyi.web.controller.task;
 
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.lang.Validator;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.json.JSONObject;
@@ -72,7 +73,7 @@ public class NoticeInfoListiner {
             log.info("订阅事件消息 => {}", msg);
             // 查询事件信息并发送消息
             MessagePushBo messagePushBo = new MessagePushBo();
-            // (1-应急处置消息、2-应急处置待办、3-资源管理待办)
+            // (1-应急处置消息、2-应急处置待办、3-资源管理待办、4-事件派发普通消息)
             String messageType = msg.substring(0, 1);
             String type = msg.substring(1, 2);
             String title = "未知";
@@ -89,17 +90,17 @@ public class NoticeInfoListiner {
             } else if ("2".equals(messageType) || "3".equals(messageType)) {
                 incidentProcess.setStatus(2);
             }
-            /*if ("A".equals(type)) {
+            if ("A".equals(type)) {
                 IncidentVo incidentVo = incidentService.queryById(msg.substring(2));
                 title = StrUtil.concat(true, "应急事件:", incidentVo.getName());
-                synopsis = "请查看应急事件";
+                synopsis = "系统给您派发了应急事件,请查看";
                 text = StrUtil.concat(true, incidentVo.getAddr(), "发生应急事件,请关注消息,做好应急准备");
-                incidentProcess.setDes("事件接报");
-                incidentProcess.setIncidentStatus(1);
+                incidentProcess.setDes("事件派发");
+                incidentProcess.setIncidentStatus(2);
                 incidentProcess.setIncidentId(msg.substring(2));
-                messageUser = incidentVo.getExprJson();
-            } else*/
-            if ("B".equals(type)) {
+                messageUser = JSONUtil.toJsonStr(CollUtil.unionDistinct(JSONUtil.toList(incidentVo.getCommanderUser(), MessagePushUser.class), JSONUtil.toList(incidentVo.getMadinDeptUser(), MessagePushUser.class),
+                    StrUtil.isNotBlank(incidentVo.getAssistDeptUser()) ? JSONUtil.toList(incidentVo.getAssistDeptUser(), MessagePushUser.class) : new ArrayList<>()));
+            } else if ("B".equals(type)) {
                 // 查询处置方案
                 IncidentTaskVo incidentTaskVo = incidentTaskService.queryById(msg.substring(2));
                 log.info("查询的处置方案:{}", incidentTaskVo);
@@ -118,6 +119,7 @@ public class NoticeInfoListiner {
                     text = incidentTaskVo.getTaskName();
                     url = "http://sqmb.xt.wenhq.top:8083/#/warehouse/detail";
                 }
+                incidentProcess.setTaskId(incidentTaskVo.getId());
             }
             if (StrUtil.isBlank(messageUser)) {
                 sendFlag = false;
@@ -151,7 +153,8 @@ public class NoticeInfoListiner {
                     backlogMessagePushBo.setUserId(userIds);
                     log.info("待办消息发送 => {}", backlogMessagePushBo);
                     if (!"dev".equals(env)) {
-                        feignBacklogInfoService.backlogMessagePush(backlogMessagePushBo);
+                        Object o = feignBacklogInfoService.backlogMessagePush(backlogMessagePushBo);
+                        log.info("发送待办消息结果:{}", o);
                     }
                 }
 
@@ -164,7 +167,7 @@ public class NoticeInfoListiner {
                     if (StrUtil.isNotBlank(sysUser.getPhonenumber()) && Validator.isMobile(sysUser.getPhonenumber())) {
                         SmsOutbox smsOutbox = new SmsOutbox();
                         smsOutbox.setDestaddr(sysUser.getPhonenumber());
-                        smsOutbox.setMessagecontent("有新的应急事件或应急方案,请注意查看!");
+                        smsOutbox.setMessagecontent("有新的应急事件或应急方案,请登录APP注意查看!");
                         smsOutbox.setRequesttime(new Date());
                         smsOutboxes.add(smsOutbox);
                     }

+ 17 - 4
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/IncidentController.java

@@ -87,7 +87,7 @@ public class IncidentController extends BaseController {
     private final IIncidentTaskService incidentTaskService;
     //    private final IIncidentTaskPersonService incidentTaskPersonService;
 //    private final IIncidentTaskCommandService incidentTaskCommandService;
-    private final IIncidentProcessService iIncidentProcessService;
+    private final IIncidentProcessService processService;
     private final IPlanTaskService planTaskService;
     private final IPlanService planService;
     private final IPlanFileService planFileService;
@@ -163,8 +163,10 @@ public class IncidentController extends BaseController {
         map.put("planFile", planFileVos);
         // 查询处置方案
         map.put("task", incidentTaskService.listTaskInfo(id));
-        List<IncidentProcess> list = iIncidentProcessService.list(Wrappers.<IncidentProcess>lambdaQuery()
-            .eq(IncidentProcess::getIncidentId, id).orderByAsc(IncidentProcess::getCreateTime));
+        List<IncidentProcess> list = processService.list(Wrappers.<IncidentProcess>lambdaQuery()
+            .eq(IncidentProcess::getIncidentId, id)
+            .in(IncidentProcess::getIncidentStatus, 3, 4, 5)
+            .orderByAsc(IncidentProcess::getCreateTime));
         if (!"dev".equals(env)) {
             for (IncidentProcess incidentProcess : list) {
                 if (incidentProcess.getStatus() == 1) {
@@ -314,7 +316,7 @@ public class IncidentController extends BaseController {
 //            }
 //            map.put("incidentCommand", incidentTaskCommandVos);
             // 查询处置过程
-            List<IncidentProcess> incidentProcess = iIncidentProcessService.list(Wrappers.<IncidentProcess>lambdaQuery()
+            List<IncidentProcess> incidentProcess = processService.list(Wrappers.<IncidentProcess>lambdaQuery()
                 .eq(IncidentProcess::getIncidentId, incidentTaskVo.getIncidentId()).orderByDesc(IncidentProcess::getCreateTime));
             if (incidentProcess != null && incidentProcess.size() > 0) {
                 IncidentProcess processData = incidentProcess.get(0);
@@ -353,6 +355,17 @@ public class IncidentController extends BaseController {
         return toAjax(incidentTaskService.copyTask(oldId, newId) ? 1 : 0);
     }
 
+    @ApiOperation("待办消息办结")
+    @RepeatSubmit()
+    @PostMapping("/backLogFinish")
+    public AjaxResult<Void> backLogFinish(@RequestBody JSONObject jsonObject) {
+        String id = jsonObject.getStr("processId");
+        if (StrUtil.isBlank(id)) {
+            return AjaxResult.error("参数存在空值!");
+        }
+        return toAjax(processService.backLogFinish(id) ? 1 : 0);
+    }
+
     /**
      * 删除零时生成的文件
      */

+ 15 - 0
ruoyi-admin/src/main/java/com/ruoyi/web/controller/zhdd/ResourceController.java

@@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.http.HttpStatus;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.annotation.RepeatSubmit;
 import com.ruoyi.common.annotation.Security;
@@ -16,6 +17,7 @@ import com.ruoyi.common.core.validate.EditGroup;
 import com.ruoyi.common.core.validate.QueryGroup;
 import com.ruoyi.common.enums.BusinessType;
 import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.zhdd.domain.Resource;
 import com.ruoyi.zhdd.domain.ResourceDetail;
 import com.ruoyi.zhdd.domain.bo.ResourceBo;
 import com.ruoyi.zhdd.domain.vo.ResourceVo;
@@ -134,6 +136,11 @@ public class ResourceController extends BaseController {
 //        if (user != null) {
 //            bo.setDeptId(user.getOrgId());
 //        }
+        // 判断名称是否存在
+        ResourceVo voOne = iResourceService.getVoOne(Wrappers.<Resource>lambdaQuery().eq(Resource::getName, bo.getName()));
+        if (voOne != null) {
+            return AjaxResult.error("名称已存在!");
+        }
         return toAjax(iResourceService.insertResource(bo) ? 1 : 0);
     }
 
@@ -147,6 +154,14 @@ public class ResourceController extends BaseController {
     @PutMapping()
     @Security
     public AjaxResult<Void> edit(@Validated(EditGroup.class) @RequestBody ResourceBo bo) {
+        // 判断名称是否存在
+        ResourceVo resourceVo = iResourceService.queryById(bo.getId());
+        if (!resourceVo.getName().equals(bo.getName())) {
+            ResourceVo voOne = iResourceService.getVoOne(Wrappers.<Resource>lambdaQuery().eq(Resource::getName, bo.getName()));
+            if (voOne != null) {
+                return AjaxResult.error("名称已存在!");
+            }
+        }
         return toAjax(iResourceService.updateResource(bo) ? 1 : 0);
     }
 

+ 1 - 1
ruoyi-admin/src/main/resources/bootstrap.yml

@@ -1,6 +1,6 @@
 spring:
   profiles:
-    active: dev
+    active: test
 ruoyi:
   # 名称
   name: YJZH-SQ

+ 8 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/Incident.java

@@ -143,14 +143,22 @@ public class Incident implements Serializable {
      */
     private Integer status;
 
+    private String commander;
+
+    private String commanderUser;
+
     /**
      * 主办单位
      */
     private String madinDept;
 
+    private String madinDeptUser;
+
     /**
      * 协办单位 多个数据用,分割
      */
     private String assistDept;
 
+    private String assistDeptUser;
+
 }

+ 4 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/IncidentProcess.java

@@ -50,6 +50,10 @@ public class IncidentProcess implements Serializable {
 
     private Integer incidentStatus;
 
+    private String taskId;
+
+    private String backLogFlag;
+
     /**
      * 过程创建时间
      */

+ 17 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/BacklogMessageUpdateBo.java

@@ -0,0 +1,17 @@
+package com.ruoyi.zhdd.domain.bo;
+
+import lombok.Data;
+
+/**
+ * @Description: 待办消息请求体
+ * @Author: huangcheng
+ * @Date: 2022/1/12
+ * @Version V1.0
+ */
+@Data
+public class BacklogMessageUpdateBo {
+    private String uuid;
+    // 待办类型(华设固定给“3”)
+    private String type = "3";
+    private String status = "1";
+}

+ 11 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/IncidentBo.java

@@ -132,18 +132,29 @@ public class IncidentBo extends BaseEntity {
     @ApiModelProperty(value = "事件状态 1:预警,2:事件 3:归档")
     private Integer status;
 
+    @ApiModelProperty(value = "总指挥")
+    private String commander;
+
+    @ApiModelProperty(value = "总指挥用户结构")
+    private String commanderUser;
+
     /**
      * 主办单位
      */
     @ApiModelProperty(value = "主办单位")
     private String madinDept;
 
+    @ApiModelProperty(value = "主办单位用户结构")
+    private String madinDeptUser;
+
     /**
      * 协办单位 多个数据用,分割
      */
     @ApiModelProperty(value = "协办单位 多个数据用,分割")
     private String assistDept;
 
+    @ApiModelProperty(value = "协办单位用户结构")
+    private String assistDeptUser;
 
     /**
      * 分页大小

+ 4 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/IncidentProcessBo.java

@@ -46,6 +46,10 @@ public class IncidentProcessBo extends BaseEntity {
 
     private Integer incidentStatus;
 
+    private String taskId;
+
+    private String backLogFlag;
+
 
     /**
      * 分页大小

+ 1 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/bo/MessagePushUser.java

@@ -13,4 +13,5 @@ public class MessagePushUser {
     private String userId;
     private String readState = "0";
     private String nickName;
+    private String deptId;
 }

+ 4 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/vo/IncidentProcessVo.java

@@ -46,6 +46,10 @@ public class IncidentProcessVo {
 
     private Integer incidentStatus;
 
+    private String taskId;
+
+    private String backLogFlag;
+
     @Excel(name = "创建人")
     @ApiModelProperty("创建人")
     private String createBy;

+ 12 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/domain/vo/IncidentVo.java

@@ -132,6 +132,12 @@ public class IncidentVo {
     @ApiModelProperty("事件状态 1:预警,2:事件 3:归档")
     private Integer status;
 
+    @ApiModelProperty(value = "总指挥")
+    private String commander;
+
+    @ApiModelProperty(value = "总指挥用户结构")
+    private String commanderUser;
+
     /**
      * 主办单位
      */
@@ -139,6 +145,9 @@ public class IncidentVo {
     @ApiModelProperty("主办单位")
     private String madinDept;
 
+    @ApiModelProperty(value = "主办单位用户结构")
+    private String madinDeptUser;
+
     /**
      * 协办单位 多个数据用,分割
      */
@@ -146,6 +155,9 @@ public class IncidentVo {
     @ApiModelProperty("协办单位 多个数据用,分割")
     private String assistDept;
 
+    @ApiModelProperty(value = "协办单位用户结构")
+    private String assistDeptUser;
+
     @Excel(name = "创建人")
     @ApiModelProperty("创建人")
     private String createBy;

+ 9 - 2
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/feign/FeignBacklogInfoService.java

@@ -1,11 +1,15 @@
 package com.ruoyi.zhdd.feign;
 
 import com.ruoyi.zhdd.domain.bo.BacklogMessagePushBo;
+import com.ruoyi.zhdd.domain.bo.BacklogMessageUpdateBo;
 import com.ruoyi.zhdd.feign.fallback.FeignNoticeInfoFallback;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 
+import java.util.List;
+
 /**
  * @Description: 联旺待办消息接口
  * @Author: huangcheng
@@ -16,11 +20,14 @@ import org.springframework.web.bind.annotation.RequestBody;
 public interface FeignBacklogInfoService {
 
     /**
-     * 接待办事项推送口s
+     * 接待办事项推送口
      *
      * @param backlogMessagePushBo
      */
     @PostMapping("/backlog")
-    void backlogMessagePush(@RequestBody BacklogMessagePushBo backlogMessagePushBo);
+    Object backlogMessagePush(@RequestBody BacklogMessagePushBo backlogMessagePushBo);
+
+    @PutMapping("/backlog")
+    Object backlogMessageUpdate(@RequestBody List<BacklogMessageUpdateBo> backlogMessageUpdateBos);
 
 }

+ 11 - 1
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/feign/fallback/FeignBacklogInfoFallback.java

@@ -1,10 +1,13 @@
 package com.ruoyi.zhdd.feign.fallback;
 
 import com.ruoyi.zhdd.domain.bo.BacklogMessagePushBo;
+import com.ruoyi.zhdd.domain.bo.BacklogMessageUpdateBo;
 import com.ruoyi.zhdd.feign.FeignBacklogInfoService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Component;
 
+import java.util.List;
+
 /**
  * @Description: TODO
  * @Author: huangcheng
@@ -16,7 +19,14 @@ import org.springframework.stereotype.Component;
 public class FeignBacklogInfoFallback implements FeignBacklogInfoService {
 
     @Override
-    public void backlogMessagePush(BacklogMessagePushBo backlogMessagePushBo) {
+    public Object backlogMessagePush(BacklogMessagePushBo backlogMessagePushBo) {
         log.error("待办消息发送失败");
+        return null;
+    }
+
+    @Override
+    public Object backlogMessageUpdate(List<BacklogMessageUpdateBo> backlogMessageUpdateBos) {
+        log.error("待办消息办结失败");
+        return null;
     }
 }

+ 44 - 38
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/IIncidentProcessService.java

@@ -1,10 +1,10 @@
 package com.ruoyi.zhdd.service;
 
-import com.ruoyi.zhdd.domain.IncidentProcess;
-import com.ruoyi.zhdd.domain.vo.IncidentProcessVo;
-import com.ruoyi.zhdd.domain.bo.IncidentProcessBo;
 import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
 import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.zhdd.domain.IncidentProcess;
+import com.ruoyi.zhdd.domain.bo.IncidentProcessBo;
+import com.ruoyi.zhdd.domain.vo.IncidentProcessVo;
 
 import java.util.Collection;
 import java.util.List;
@@ -16,41 +16,47 @@ import java.util.List;
  * @date 2021-09-28
  */
 public interface IIncidentProcessService extends IServicePlus<IncidentProcess, IncidentProcessVo> {
-	/**
-	 * 查询单个
-	 * @return
-	 */
-	IncidentProcessVo queryById(String id);
-
-	/**
-	 * 查询列表
-	 */
+    /**
+     * 查询单个
+     *
+     * @return
+     */
+    IncidentProcessVo queryById(String id);
+
+    /**
+     * 查询列表
+     */
     TableDataInfo<IncidentProcessVo> queryPageList(IncidentProcessBo bo);
 
-	/**
-	 * 查询列表
-	 */
-	List<IncidentProcessVo> queryList(IncidentProcessBo bo);
-
-	/**
-	 * 根据新增业务对象插入事件处置流程
-	 * @param bo 事件处置流程新增业务对象
-	 * @return
-	 */
-	String insertByBo(IncidentProcessBo bo);
-
-	/**
-	 * 根据编辑业务对象修改事件处置流程
-	 * @param bo 事件处置流程编辑业务对象
-	 * @return
-	 */
-	Boolean updateByBo(IncidentProcessBo bo);
-
-	/**
-	 * 校验并删除数据
-	 * @param ids 主键集合
-	 * @param isValid 是否校验,true-删除前校验,false-不校验
-	 * @return
-	 */
-	Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
+    /**
+     * 查询列表
+     */
+    List<IncidentProcessVo> queryList(IncidentProcessBo bo);
+
+    /**
+     * 根据新增业务对象插入事件处置流程
+     *
+     * @param bo 事件处置流程新增业务对象
+     * @return
+     */
+    String insertByBo(IncidentProcessBo bo);
+
+    /**
+     * 根据编辑业务对象修改事件处置流程
+     *
+     * @param bo 事件处置流程编辑业务对象
+     * @return
+     */
+    Boolean updateByBo(IncidentProcessBo bo);
+
+    /**
+     * 校验并删除数据
+     *
+     * @param ids     主键集合
+     * @param isValid 是否校验,true-删除前校验,false-不校验
+     * @return
+     */
+    Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
+
+    boolean backLogFinish(String id);
 }

+ 1 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/IIncidentTaskService.java

@@ -62,4 +62,5 @@ public interface IIncidentTaskService extends IServicePlus<IncidentTask, Inciden
     List<IncidentTaskVo> listTaskInfo(String id);
 
     boolean copyTask(String oldId, String newId);
+
 }

+ 11 - 3
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/DhServiceImpl.java

@@ -1,5 +1,7 @@
 package com.ruoyi.zhdd.service.impl;
 
+import cn.hutool.core.convert.Convert;
+import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.crypto.SecureUtil;
 import cn.hutool.http.HttpRequest;
 import cn.hutool.http.HttpUtil;
@@ -84,12 +86,18 @@ public class DhServiceImpl implements IDhService {
             jsonOne.set("signature", signature);
             jsonOne.set("randomKey", randomKey);
             jsonOne.set("encryptType", encryptType);
+            jsonOne.set("expiredTime", 86400);
             String postTwo = HttpUtil.post(dhAuthorizeUrl, jsonOne.toString());
             JSONObject postTwoJson = JSONUtil.parseObj(postTwo);
             if (postTwoJson.containsKey("token")) {
                 token = postTwoJson.getStr("token");
+                int duration = postTwoJson.getInt("duration");
+                log.info("大华创建会话的过期时间:{}", duration);
+                if (ObjectUtil.isEmpty(duration)) {
+                    duration = 120;
+                }
                 // 存入redis缓存
-                RedisUtils.setCacheObject(Constants.CACHE_DH_TOKEN, token, 120, TimeUnit.SECONDS);
+                RedisUtils.setCacheObject(Constants.CACHE_DH_TOKEN, token, Convert.toInt(duration * 0.7), TimeUnit.SECONDS);
 //                RedisUtils.setCacheObject(Constants.CACHE_DH_TOKEN_REFRESH, token);
             } else {
                 log.error("大华=第二次创建会话失败:{}", postTwoJson);
@@ -176,7 +184,7 @@ public class DhServiceImpl implements IDhService {
     }
 
     public static void main(String[] args) {
-        String token = "";
+        /*String token = "";
         String userName = "shujuceshi";
         JSONObject jsonOne = new JSONObject();
         jsonOne.set("userName", userName);
@@ -215,7 +223,7 @@ public class DhServiceImpl implements IDhService {
         } else {
             log.error("大华=第一次创建会话失败:{}", postOneJson);
         }
-        System.out.println(token);
+        System.out.println(token);*/
     }
 
 }

+ 28 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/IncidentProcessServiceImpl.java

@@ -9,12 +9,18 @@ import com.ruoyi.common.core.page.TableDataInfo;
 import com.ruoyi.common.utils.PageUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.zhdd.domain.IncidentProcess;
+import com.ruoyi.zhdd.domain.bo.BacklogMessageUpdateBo;
 import com.ruoyi.zhdd.domain.bo.IncidentProcessBo;
 import com.ruoyi.zhdd.domain.vo.IncidentProcessVo;
+import com.ruoyi.zhdd.feign.FeignBacklogInfoService;
 import com.ruoyi.zhdd.mapper.IncidentProcessMapper;
 import com.ruoyi.zhdd.service.IIncidentProcessService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
+import java.util.ArrayList;
 import java.util.Collection;
 import java.util.List;
 import java.util.Map;
@@ -26,8 +32,12 @@ import java.util.Map;
  * @date 2021-09-28
  */
 @Service
+@Slf4j
 public class IncidentProcessServiceImpl extends ServicePlusImpl<IncidentProcessMapper, IncidentProcess, IncidentProcessVo> implements IIncidentProcessService {
 
+    @Autowired
+    private FeignBacklogInfoService feignBacklogInfoService;
+
     @Override
     public IncidentProcessVo queryById(String id) {
         return getVoById(id);
@@ -84,4 +94,22 @@ public class IncidentProcessServiceImpl extends ServicePlusImpl<IncidentProcessM
         }
         return removeByIds(ids);
     }
+
+    @Override
+    @Transactional
+    public boolean backLogFinish(String id) {
+        // 办结
+        List<BacklogMessageUpdateBo> list = new ArrayList<>();
+        BacklogMessageUpdateBo bo = new BacklogMessageUpdateBo();
+        bo.setUuid(id);
+        list.add(bo);
+        Object o = feignBacklogInfoService.backlogMessageUpdate(list);
+        log.info("消息待办办结返回结果:{}", o);
+        // 更新办结状态
+        IncidentProcess incidentProcess = new IncidentProcess();
+        incidentProcess.setId(id);
+        incidentProcess.setBackLogFlag("1");
+        baseMapper.updateById(incidentProcess);
+        return false;
+    }
 }

+ 7 - 0
ruoyi-zhdd/src/main/java/com/ruoyi/zhdd/service/impl/IncidentServiceImpl.java

@@ -167,6 +167,13 @@ public class IncidentServiceImpl extends ServicePlusImpl<IncidentMapper, Inciden
             });
         }*/
         if (flag) {
+            if (bo.getStatus() == 3) {
+                // 推送到派发的待办消息中
+                RedisUtils.publish(Constants.NOTICE_PUSH, 1 + "A" + update.getId(), msg -> {
+                    log.info("事件派发消息 => " + msg);
+                });
+                return b;
+            }
             jsonObject.set("incidentId", update.getId());
             jsonObject.set("incidentStatus", update.getStatus());
             RedisUtils.publish(Constants.PROCESS_RECORD, jsonObject, msg -> {

+ 3 - 2
ruoyi-zhdd/src/main/resources/mapper/zhdd/IncidentMapper.xml

@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper
-PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+    PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+    "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.ruoyi.zhdd.mapper.IncidentMapper">
 
     <resultMap type="com.ruoyi.zhdd.domain.Incident" id="IncidentResult">
@@ -25,6 +25,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="exprJson" column="expr_json"/>
         <result property="name" column="name"/>
         <result property="status" column="status"/>
+        <result property="commander" column="commander"/>
         <result property="madinDept" column="madin_dept"/>
         <result property="assistDept" column="assist_dept"/>
     </resultMap>