From 2c7324f3b7862999139075fd35032be885fc9c31 Mon Sep 17 00:00:00 2001
From: wangwh <2397901735@qq.com>
Date: Tue, 22 Oct 2024 15:03:47 +0800
Subject: [PATCH] feat:增加网格待办相关功能

---
 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java |  527 ++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 349 insertions(+), 178 deletions(-)

diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
index 1857f72..7d3d06d 100644
--- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
+++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
@@ -34,12 +34,19 @@
 import cn.huge.module.flow.domain.po.FlowNode;
 import cn.huge.module.flow.service.FlowInfoService;
 import cn.huge.module.mediate.constant.*;
+import cn.huge.module.sys.constant.GridBaseConsts;
+import cn.huge.module.sys.constant.GridEnum;
 import cn.huge.module.sys.constant.SyTimeEnum;
 import cn.huge.module.sys.dto.FileIdTypeInfoBaseDTO;
+import cn.huge.module.sys.vo.GridTaskVo;
+import cn.huge.module.sys.vo.GridToDoBacthVo;
+import cn.huge.module.sys.vo.GridToDoVo;
 import com.alibaba.fastjson.JSON;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.google.common.collect.Maps;
+import lombok.extern.java.Log;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.BeanUtils;
@@ -282,6 +289,12 @@
             TabButtonInfoDTO bysl = new TabButtonInfoDTO();
             bysl.setId("bysl");
             bysl.setName("不予受理");
+            TabButtonInfoDTO xqcl = new TabButtonInfoDTO();
+            xqcl.setId("xqcl");
+            xqcl.setName("处理");
+            TabButtonInfoDTO tabcl = new TabButtonInfoDTO();
+            tabcl.setId("tabcl");
+            tabcl.setName("处理");
 
             // 根据流程显示tab
             List<TabButtonInfoDTO> tabList = new LinkedList<>();
@@ -314,19 +327,19 @@
                             || FlowNodeEnum.FLOW_NODE_SJ_DFP.getIndex().equals(caseTask.getNodeId())) {
                         tabList.add(dslxq);
                         tabList.add(sqjl);
+                        // 额外单独给详情跳转查看
+                        daxx.setName("详情");
+                        tabList.add(daxx);
 
                         sl.setName("自行受理");
                         buttonList.add(sl);
                         buttonList.add(jb);
                         buttonList.add(bysl);
+                        buttonList.add(xqcl);
                         CtUnitDTO ctUnitDTO = custClient.getUnitByUserId(userId);
                         if (UserBaseConsts.UNIT_GRADE_1 != ctUnitDTO.getUnitGrade()) {
                             buttonList.add(sb);
                         }
-
-                        // 额外单独给详情跳转查看
-                        daxx.setName("详情");
-                        tabList.add(daxx);
                     }
                     // 待受理节点
                     if (FlowNodeEnum.FLOW_NODE_ZJ_DSL.getIndex().equals(caseTask.getNodeId())
@@ -334,14 +347,13 @@
                             || FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex().equals(caseTask.getNodeId())) {
                         tabList.add(dslxq);
                         tabList.add(sqjl);
-
-                        buttonList.add(sl);
-                        buttonList.add(ht);
-//                        buttonList.add(bysl);
-
                         // 额外单独给详情跳转查看
                         daxx.setName("详情");
                         tabList.add(daxx);
+
+                        buttonList.add(sl);
+                        buttonList.add(ht);
+                        buttonList.add(xqcl);
                     }
                     // 回退审核节点
                     if (FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex().equals(caseTask.getNodeId())
@@ -352,10 +364,11 @@
                         tabList.add(sxxq);
                         tabList.add(sqjl);
                         tabList.add(htsh);
-
                         // 额外单独给详情跳转查看
                         daxx.setName("详情");
                         tabList.add(daxx);
+
+                        buttonList.add(tabcl);
                     }
                     // 上报审核节点
                     if (FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex().equals(caseTask.getNodeId())
@@ -364,10 +377,11 @@
                         tabList.add(sxxq);
                         tabList.add(sqjl);
                         tabList.add(sbsh);
-
                         // 额外单独给详情跳转查看
                         daxx.setName("详情");
                         tabList.add(daxx);
+
+                        buttonList.add(tabcl);
                     }
                     // 办理反馈节点
                     if (FlowNodeEnum.FLOW_NODE_BLFK.getIndex().equals(caseTask.getNodeId())) {
@@ -376,37 +390,39 @@
                             tabList.add(sxbl);
                             tabList.add(lcdb);
                             tabList.add(sqjl);
+                            // 额外单独给详情跳转查看
+                            daxx.setName("详情");
+                            tabList.add(daxx);
 
                             buttonList.add(tjbljl);
                             buttonList.add(lhczsq);
                             buttonList.add(jasq);
-//                            buttonList.add(db);
-
-                            // 额外单独给详情跳转查看
-                            daxx.setName("详情");
-                            tabList.add(daxx);
+                            buttonList.add(tabcl);
                         } else {
                             tabList.add(sxxq);
                             tabList.add(sxbl);
                             tabList.add(lcdb);
                             tabList.add(sqjl);
-
-                            buttonList.add(tjbljl);
-
                             // 额外单独给详情跳转查看
                             daxx.setName("详情");
                             tabList.add(daxx);
+
+                            buttonList.add(tjbljl);
+                            buttonList.add(tabcl);
                         }
                     }
                     // 结案审核节点
-                    if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(caseTask.getNodeId())) {
+                    if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(caseTask.getNodeId())
+                            || FlowNodeEnum.FLOW_NODE_JASH_YJ.getIndex().equals(caseTask.getNodeId())
+                            ||FlowNodeEnum.FLOW_NODE_JASH_EJ.getIndex().equals(caseTask.getNodeId())) {
                         tabList.add(sxxq);
                         tabList.add(sqjl);
                         tabList.add(jash);
-
                         // 额外单独给详情跳转查看
                         daxx.setName("详情");
                         tabList.add(daxx);
+
+                        buttonList.add(tabcl);
                     }
                     // 当事人评价节点
                     if (FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex().equals(caseTask.getNodeId())) {
@@ -425,13 +441,13 @@
                     if (FlowNodeEnum.FLOW_NODE_DSL.getIndex().equals(caseTask.getNodeId())) {
                         tabList.add(dslxq);
                         tabList.add(sqjl);
-
-                        buttonList.add(sl);
-                        buttonList.add(ht);
-
                         // 额外单独给详情跳转查看
                         daxx.setName("详情");
                         tabList.add(daxx);
+
+                        buttonList.add(sl);
+                        buttonList.add(ht);
+                        buttonList.add(tabcl);
                     }
                 }
             }else {
@@ -556,6 +572,8 @@
                     }
                     // 审核节点要判断通过/不通过
                     if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JASH.getIndex())
+                            || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JASH_YJ.getIndex())
+                            || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JASH_EJ.getIndex())
                             || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex())
                             || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex())
                             || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex())
@@ -630,160 +648,168 @@
             List<CaseAssistInfo> caseAssistInfoList = caseAssistInfoService.listByCaseId(caseId);
             if (CollectionUtils.isNotEmpty(caseAssistInfoList)){
                 LinkedList<WebAssistCaseFlowDTO> assistCaseFlowList = new LinkedList<>();
+                int i = 0;
                 for (CaseAssistInfo caseAssistInfo: caseAssistInfoList){
-                    WebAssistCaseFlowDTO webAssistCaseFlowDTO = new WebAssistCaseFlowDTO();
-                    webAssistCaseFlowDTO.setUnitId(caseAssistInfo.getAssistUnitId());
                     if (CaseTaskConsts.ASSIST_STATUS_0 == caseAssistInfo.getAssistStatus()) {
+                        WebAssistCaseFlowDTO webAssistCaseFlowDTO = new WebAssistCaseFlowDTO();
+                        webAssistCaseFlowDTO.setUnitId(caseAssistInfo.getAssistUnitId());
                         webAssistCaseFlowDTO.setUnitName(caseAssistInfo.getAssistUnitName());
-                    }else {
-                        webAssistCaseFlowDTO.setUnitName(caseAssistInfo.getAssistUnitName()+"(已回退)");
-                    }
-                    LinkedList<WebCaseFlowDTO> caseFlowList = new LinkedList<>();
-                    // 首节点
-                    WebCaseFlowDTO lfdjAssist = new WebCaseFlowDTO();
-                    if (CaseBaseConstsEnum.CASE_CANAL_1.getIndex().equals(caseInfo.getCanal())){
-                        lfdjAssist.setNodeShowName("来访登记");
-                        lfdjAssist.setHandleUserName(caseInfo.getInputUserName());
-                        lfdjAssist.setHandleUnitName(caseInfo.getInputUnitName());
-                    }else {
-                        lfdjAssist.setNodeShowName(caseInfo.getCanalName());
-                        lfdjAssist.setHandleUnitName(caseInfo.getInputUserName()+"(当事人)");
-                    }
-                    lfdjAssist.setTaskType(SHOW_TASK_TYPE_1);
-                    lfdjAssist.setStatus(CaseTaskConsts.TASK_STATUS_2);
-                    lfdjAssist.setHandleTime(new Date());
-                    caseFlowList.add(lfdjAssist);
-                    // 查询其他节点
-                    caseTaskQueryWrapper.clear();
-                    caseTaskQueryWrapper.eq("case_id", caseId).eq("process_instance_id", caseAssistInfo.getProcessInstanceId())
-                            .eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_2).orderByAsc("id");
-                    List<CaseTask> assistCaseTaskList = mapper.selectList(caseTaskQueryWrapper);
-                    for (CaseTask caseTask: assistCaseTaskList){
-                        // 已结束节点
-                        if (CaseTaskConsts.TASK_STATUS_2 == caseTask.getStatus()){
-                            // 待受理并已签收的正常任务节点,需要加多一个签收节点
-                            if(caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_ZJ_DSL.getIndex())
-                                    || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex())
-                                    || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex())
-                                    || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){
-                                if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.HANDLE_RESULT_0 == caseTask.getHandleResult()){
-                                    WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO();
-                                    slWebCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1);
-                                    slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
-                                    slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName());
-                                    slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName());
-                                    slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime());
-                                    slWebCaseFlowDTO.setHandleNotes("已签收");
-                                    slWebCaseFlowDTO.setStatus(caseTask.getStatus());
-                                    caseFlowList.add(slWebCaseFlowDTO);
-                                }
-                            }
-                            // 普通节点
-                            WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO();
-                            webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1);
-                            webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
-                            webCaseFlowDTO.setHandleTime(caseTask.getHandleTime());
-                            webCaseFlowDTO.setStatus(caseTask.getStatus());
-                            webCaseFlowDTO.setHandleNotes(caseTask.getHandleIllust());
-                            // 当事人评价/结案归档节点,特殊处理
-                            if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){
-                                webCaseFlowDTO.setHandleUserName(null);
-                                webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUserName());
-                            }else if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JAGD.getIndex())){
-                                webCaseFlowDTO.setHandleUserName(null);
-                                webCaseFlowDTO.setHandleUnitName("系统自动");
-                            }else{
-                                webCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName());
-                                webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName());
-                            }
-                            // 回退申请节点
-                            if(CaseTaskConsts.HANDLE_RESULT_4 == caseTask.getHandleResult()){
-                                webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_2);
-                                webCaseFlowDTO.setNodeShowName("事件回退");
-                                CaseReturn caseReturn = caseReturnService.getNewByCaseId(caseId, caseTask.getCaseTaskType());
-                                if (StringUtils.isNotEmpty(caseReturn.getReturnContent())) {
-                                    webCaseFlowDTO.setHandleNotes("回退理由:" + caseReturn.getReturnContent());
-                                }else {
-                                    webCaseFlowDTO.setHandleNotes("回退理由:-");
-                                }
-                            }
-                            // 上报申请节点
-                            if(CaseTaskConsts.HANDLE_RESULT_5 == caseTask.getHandleResult()){
-                                webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_3);
-                                webCaseFlowDTO.setNodeShowName("事件上报");
-                                CaseAppear caseAppear = caseAppearService.getNewByCaseId(caseId);
-                                if (StringUtils.isNotEmpty(caseAppear.getAppearContent())) {
-                                    webCaseFlowDTO.setHandleNotes("上报理由:" + caseAppear.getAppearContent());
-                                }else {
-                                    webCaseFlowDTO.setHandleNotes("上报意见:-" );
-                                }
-                            }
-                            // 审核节点要判断通过/不通过
-                            if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JASH.getIndex())
-                                    || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex())
-                                    || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex())
-                                    || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex())
-                                    || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex())
-                                    || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex())){
-                                // 审核不通过
-                                if (CaseTaskConsts.HANDLE_RESULT_2 == caseTask.getHandleResult()) {
-                                    webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_2);
-                                    webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_2.getIndex());
-                                    webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_2.getDes());
-                                }else{
-                                    // 审核通过
-                                    webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex());
-                                    webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes());
-                                }
-                                // 临时加上
-                                webCaseFlowDTO.setHandleNotes("审核结果:"+webCaseFlowDTO.getAuditResultName());
-                            }
-                            // 结案申请,需要展示化解结果
-                            if (FlowNodeEnum.FLOW_NODE_JASQ.getIndex().equals(caseTask.getNodeId())){
-                                CaseInfoUnfold caseInfoUnfold = caseInfoUnfoldService.getById(caseTask.getCaseId());
-                                if (ObjectUtils.isNotEmpty(caseInfoUnfold)){
-                                    webCaseFlowDTO.setMediResult(caseInfoUnfold.getMediResult());
-                                    webCaseFlowDTO.setMediResultName(caseInfoUnfold.getMediResultName());
-                                    // 临时加上
-                                    webCaseFlowDTO.setHandleNotes("化解结果:"+webCaseFlowDTO.getMediResultName());
-                                }
-                            }
-                            caseFlowList.add(webCaseFlowDTO);
+                        LinkedList<WebCaseFlowDTO> caseFlowList = new LinkedList<>();
+                        // 首节点
+                        WebCaseFlowDTO lfdjAssist = new WebCaseFlowDTO();
+                        if (CaseBaseConstsEnum.CASE_CANAL_1.getIndex().equals(caseInfo.getCanal())){
+                            lfdjAssist.setNodeShowName("来访登记");
+                            lfdjAssist.setHandleUserName(caseInfo.getInputUserName());
+                            lfdjAssist.setHandleUnitName(caseInfo.getInputUnitName());
                         }else {
-                            // 进行中的节点
-                            // 待受理并已签收的正常任务节点,需要加多一个签收节点
-                            if(caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_ZJ_DSL.getIndex())
-                                    || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex())
-                                    || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex())
-                                    || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){
-                                if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.HANDLE_RESULT_0 == caseTask.getHandleResult()){
-                                    WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO();
-                                    slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
-                                    slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName());
-                                    slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName());
-                                    slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime());
-                                    slWebCaseFlowDTO.setHandleNotes("已签收");
-                                    slWebCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1);
-                                    slWebCaseFlowDTO.setStatus(CaseTaskConsts.TASK_STATUS_2);
-                                    caseFlowList.add(slWebCaseFlowDTO);
-                                }
-                            }
-                            // 正常节点
-                            WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO();
-                            webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
-                            webCaseFlowDTO.setStatus(caseTask.getStatus());
-                            // 当事人评价节点,特殊处理
-                            if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())
-                                    || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JAGD.getIndex())){
-                                webCaseFlowDTO.setProcessName(caseTask.getNodeShowName());
-                            }else{
-                                webCaseFlowDTO.setProcessName(caseTask.getCandeUnitName());
-                            }
-                            caseFlowList.add(webCaseFlowDTO);
+                            lfdjAssist.setNodeShowName(caseInfo.getCanalName());
+                            lfdjAssist.setHandleUnitName(caseInfo.getInputUserName()+"(当事人)");
                         }
+                        lfdjAssist.setTaskType(SHOW_TASK_TYPE_1);
+                        lfdjAssist.setStatus(CaseTaskConsts.TASK_STATUS_2);
+                        lfdjAssist.setHandleTime(new Date());
+                        caseFlowList.add(lfdjAssist);
+                        // 查询其他节点
+                        caseTaskQueryWrapper.clear();
+                        caseTaskQueryWrapper.eq("case_id", caseId).eq("process_instance_id", caseAssistInfo.getProcessInstanceId())
+                                .eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_2).orderByAsc("id");
+                        List<CaseTask> assistCaseTaskList = mapper.selectList(caseTaskQueryWrapper);
+                        for (CaseTask caseTask: assistCaseTaskList){
+                            // 已结束节点
+                            if (CaseTaskConsts.TASK_STATUS_2 == caseTask.getStatus()){
+                                // 待受理并已签收的正常任务节点,需要加多一个签收节点
+                                if(caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_ZJ_DSL.getIndex())
+                                        || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex())
+                                        || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex())
+                                        || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){
+                                    if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.HANDLE_RESULT_0 == caseTask.getHandleResult()){
+                                        WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO();
+                                        slWebCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1);
+                                        slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
+                                        slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName());
+                                        slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName());
+                                        slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime());
+                                        slWebCaseFlowDTO.setHandleNotes("已签收");
+                                        slWebCaseFlowDTO.setStatus(caseTask.getStatus());
+                                        caseFlowList.add(slWebCaseFlowDTO);
+                                    }
+                                }
+                                // 普通节点
+                                WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO();
+                                webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1);
+                                webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
+                                webCaseFlowDTO.setHandleTime(caseTask.getHandleTime());
+                                webCaseFlowDTO.setStatus(caseTask.getStatus());
+                                webCaseFlowDTO.setHandleNotes(caseTask.getHandleIllust());
+                                // 当事人评价/结案归档节点,特殊处理
+                                if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){
+                                    webCaseFlowDTO.setHandleUserName(null);
+                                    webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUserName());
+                                }else if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JAGD.getIndex())){
+                                    webCaseFlowDTO.setHandleUserName(null);
+                                    webCaseFlowDTO.setHandleUnitName("系统自动");
+                                }else{
+                                    webCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName());
+                                    webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName());
+                                }
+                                // 回退申请节点
+                                if(CaseTaskConsts.HANDLE_RESULT_4 == caseTask.getHandleResult()){
+                                    webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_2);
+                                    webCaseFlowDTO.setNodeShowName("事件回退");
+                                    CaseReturn caseReturn = caseReturnService.getNewByCaseId(caseId, caseTask.getCaseTaskType());
+                                    if (StringUtils.isNotEmpty(caseReturn.getReturnContent())) {
+                                        webCaseFlowDTO.setHandleNotes("回退理由:" + caseReturn.getReturnContent());
+                                    }else {
+                                        webCaseFlowDTO.setHandleNotes("回退理由:-");
+                                    }
+                                }
+                                // 上报申请节点
+                                if(CaseTaskConsts.HANDLE_RESULT_5 == caseTask.getHandleResult()){
+                                    webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_3);
+                                    webCaseFlowDTO.setNodeShowName("事件上报");
+                                    CaseAppear caseAppear = caseAppearService.getNewByCaseId(caseId);
+                                    if (StringUtils.isNotEmpty(caseAppear.getAppearContent())) {
+                                        webCaseFlowDTO.setHandleNotes("上报理由:" + caseAppear.getAppearContent());
+                                    }else {
+                                        webCaseFlowDTO.setHandleNotes("上报意见:-" );
+                                    }
+                                }
+                                // 审核节点要判断通过/不通过
+                                if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JASH.getIndex())
+                                        || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex())
+                                        || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex())
+                                        || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex())
+                                        || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex())
+                                        || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex())){
+                                    // 审核不通过
+                                    if (CaseTaskConsts.HANDLE_RESULT_2 == caseTask.getHandleResult()) {
+                                        webCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_2);
+                                        webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_2.getIndex());
+                                        webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_2.getDes());
+                                    }else{
+                                        // 审核通过
+                                        webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex());
+                                        webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes());
+                                    }
+                                    // 临时加上
+                                    webCaseFlowDTO.setHandleNotes("审核结果:"+webCaseFlowDTO.getAuditResultName());
+                                }
+                                // 结案申请,需要展示化解结果
+                                if (FlowNodeEnum.FLOW_NODE_JASQ.getIndex().equals(caseTask.getNodeId())){
+                                    CaseInfoUnfold caseInfoUnfold = caseInfoUnfoldService.getById(caseTask.getCaseId());
+                                    if (ObjectUtils.isNotEmpty(caseInfoUnfold)){
+                                        webCaseFlowDTO.setMediResult(caseInfoUnfold.getMediResult());
+                                        webCaseFlowDTO.setMediResultName(caseInfoUnfold.getMediResultName());
+                                        // 临时加上
+                                        webCaseFlowDTO.setHandleNotes("化解结果:"+webCaseFlowDTO.getMediResultName());
+                                    }
+                                }
+                                caseFlowList.add(webCaseFlowDTO);
+                            }else {
+                                // 进行中的节点
+                                // 待受理并已签收的正常任务节点,需要加多一个签收节点
+                                if(caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_ZJ_DSL.getIndex())
+                                        || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex())
+                                        || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex())
+                                        || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){
+                                    if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.HANDLE_RESULT_0 == caseTask.getHandleResult()){
+                                        WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO();
+                                        slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
+                                        slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName());
+                                        slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName());
+                                        slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime());
+                                        slWebCaseFlowDTO.setHandleNotes("已签收");
+                                        slWebCaseFlowDTO.setTaskType(SHOW_TASK_TYPE_1);
+                                        slWebCaseFlowDTO.setStatus(CaseTaskConsts.TASK_STATUS_2);
+                                        caseFlowList.add(slWebCaseFlowDTO);
+                                    }
+                                }
+                                // 正常节点
+                                WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO();
+                                webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
+                                webCaseFlowDTO.setStatus(caseTask.getStatus());
+                                // 当事人评价节点,特殊处理
+                                if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())
+                                        || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_JAGD.getIndex())){
+                                    webCaseFlowDTO.setProcessName(caseTask.getNodeShowName());
+                                }else{
+                                    webCaseFlowDTO.setProcessName(caseTask.getCandeUnitName());
+                                }
+                                caseFlowList.add(webCaseFlowDTO);
+                            }
+                        }
+                        webAssistCaseFlowDTO.setCaseFlowList(caseFlowList);
+                        assistCaseFlowList.add(webAssistCaseFlowDTO);
+                    }else {
+                        WebAssistCaseFlowDTO webAssistCaseFlowDTO = new WebAssistCaseFlowDTO();
+                        // i防止提供给前端的unitId重复
+                        i++;
+                        webAssistCaseFlowDTO.setUnitId(caseAssistInfo.getAssistUnitId()+"_"+i);
+                        webAssistCaseFlowDTO.setUnitName(caseAssistInfo.getAssistUnitName()+"(已回退)");
+                        LinkedList<WebCaseFlowDTO> caseFlowList = new LinkedList<>();
+                        webAssistCaseFlowDTO.setCaseFlowList(caseFlowList);
+                        assistCaseFlowList.add(webAssistCaseFlowDTO);
                     }
-                    webAssistCaseFlowDTO.setCaseFlowList(caseFlowList);
-                    assistCaseFlowList.add(webAssistCaseFlowDTO);
                 }
                 result.put("assistCaseFlowList", assistCaseFlowList);
             }
@@ -1146,7 +1172,7 @@
                 if (UserBaseConsts.UNIT_GRADE_3 == caseDispBaseDTO.getTargetUnitGrade()) {
                     // 启动来访登记工作流
                     FlowNode firstFlowNode = flowInfoService.startFlow(FlowableConsts.getJbFlow(caseInfo.getCanal()), caseInfo.getId());
-                    if (UserBaseConsts.UNIT_TYPE_1 == caseDispBaseDTO.getTargetUnitType()){
+                    if (UserBaseConsts.UNIT_TYPE_101 == caseDispBaseDTO.getTargetUnitType()){
                         // 调度给镇街综治中心,进入第1个任务节点-镇街综治中心待分派
                         CaseTask dfpCaseTask = new CaseTask();
                         dfpCaseTask.setId(utilsClient.getNewTimeId());
@@ -1185,6 +1211,13 @@
                         caseInfoPO.setInfoProcess(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getIndex());
                         caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes());
                         caseInfoService.updateCaseInfo(caseInfoPO);
+
+                        try {
+                            //添加网格待办
+                            this.createGridToDo(caseInfo, dfpCaseTask, GridEnum.GRID_OBJECT_TYPE_1.getIndex(), GridBaseConsts.GRID_TYPE_1);
+                        }catch (Exception e){
+                            log.error("添加网格待办失败");
+                        }
                     }else {
                         // 调度给调解组织,默认通过第1个任务节点-镇街综治中心待分派
                         CaseTask dfpCaseTask = new CaseTask();
@@ -1263,6 +1296,13 @@
                         caseInfoPO.setInfoProcess(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getIndex());
                         caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes());
                         caseInfoService.updateCaseInfo(caseInfoPO);
+
+                        try {
+                            //添加网格待办
+                            this.createGridToDo(caseInfo, dslCaseTask, GridEnum.GRID_OBJECT_TYPE_3.getIndex(), GridBaseConsts.GRID_TYPE_3);
+                        }catch (Exception e){
+                            log.error("添加网格待办失败");
+                        }
                     }
                 }
             }
@@ -1370,6 +1410,14 @@
             caseInfoUnfoldPO.setMediateUnitId(blfkCaseTask.getCandeUnitId());
             caseInfoUnfoldPO.setMediateUnitName(blfkCaseTask.getCandeUnitName());
             caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO);
+
+            try {
+                //添加网格待办
+                this.createGridToDo(caseInfo, blfkCaseTask, GridEnum.GRID_OBJECT_TYPE_3.getIndex(), GridBaseConsts.GRID_TYPE_3);
+            }catch (Exception e){
+                log.error("添加网格待办失败");
+            }
+
             return blfkCaseTask.getId();
         }catch (Exception e){
             log.error("[CaseTaskService.webStartFlowZXSL]调用失败,异常信息:"+e, e);
@@ -1455,6 +1503,8 @@
             caseDismiss.setCreateTime(nowDate);
             caseDismiss.setUpdateTime(nowDate);
             caseDismissService.save(caseDismiss);
+            //删除网格待办
+            this.deleteGridTodo(caseTask);
         }catch (Exception e){
             log.error("[CaseTaskService.webAssign]调用失败,异常信息:"+e, e);
             throw new ServiceException("CaseTaskService.webAssign", e);
@@ -1552,6 +1602,7 @@
             dslCaseTask.setUpdateTime(nowDate);
             mapper.insert(dslCaseTask);
             // 更新纠纷信息
+            CaseInfo caseInfo = caseInfoService.getCaseInfo(dslCaseTask.getCaseId());
             CaseInfo caseInfoPO = new CaseInfo();
             caseInfoPO.setId(dslCaseTask.getCaseId());
             caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_3.getIndex());
@@ -1562,6 +1613,12 @@
             caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes());
             caseInfoPO.setUpdateTime(nowDate);
             caseInfoService.updateCaseInfo(caseInfoPO);
+
+            try {
+                this.taskFlowGridToDo(caseInfo, dslCaseTask, assignTaskDTO.getCaseTaskId(), GridEnum.GRID_OBJECT_TYPE_2.getIndex(), GridBaseConsts.GRID_TYPE_2);
+            }catch (Exception e){
+                log.error("添加网格待办失败");
+            }
 
             // 交办配合组织
             if (CollectionUtils.isNotEmpty(assignTaskDTO.getAssistUnitList())){
@@ -1652,6 +1709,12 @@
                     caseAssistInfoPO.setCreateTime(nowDate);
                     caseAssistInfoPO.setUpdateTime(nowDate);
                     caseAssistInfoService.save(caseAssistInfoPO);
+
+                    try {
+                        this.createGridToDo(caseInfo, lhczdslCaseTask, GridEnum.GRID_OBJECT_TYPE_2.getIndex(), GridBaseConsts.GRID_TYPE_2);
+                    }catch (Exception e){
+                        log.error("添加网格待办失败");
+                    }
                 }
                 // 更新纠纷扩展信息
                 CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold();
@@ -1701,6 +1764,10 @@
                     caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes());
                     caseInfoPO.setUpdateTime(nowDate);
                     caseInfoService.updateCaseInfo(caseInfoPO);
+                }
+                CaseInfo caseInfo = caseInfoService.getCaseInfo(qsCaseTask.getCaseId());
+                if(ObjectUtils.isNotEmpty(caseInfo)){
+                    this.taskFlowGridToDo(caseInfo, caseTaskPO, caseTaskPO.getId(), GridEnum.GRID_OBJECT_TYPE_3.getIndex(), GridBaseConsts.GRID_TYPE_3);
                 }
             }
         }catch (Exception e){
@@ -1777,6 +1844,10 @@
             blfkCaseTask.setCreateTime(nowDate);
             blfkCaseTask.setUpdateTime(nowDate);
             mapper.insert(blfkCaseTask);
+
+            //删除网格待办状态
+            this.deleteGridTodo(dslCaseTaskPO);
+
             // 承办组织受理才更新纠纷信息
             if (CaseTaskConsts.CASE_TASK_TYPE_1 ==  dslCaseTask.getCaseTaskType()) {
                 // 更新纠纷信息
@@ -2304,6 +2375,8 @@
                     caseInfoUnfoldPO.setWindupContent(caseWindupApply.getWindupContent());
                     caseInfoUnfoldPO.setUpdateTime(nowDate);
                     caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO);
+
+                    this.createGridToDo(caseInfo, jashCaseTask, GridEnum.GRID_OBJECT_TYPE_4.getIndex(), GridBaseConsts.GRID_TYPE_4);
                 }
             }
             // 查询联合处置申请单,全部结束申请单
@@ -2392,12 +2465,12 @@
                 CaseInfo caseInfo = caseInfoService.getById(jashCaseTask.getCaseId());
                 if (CaseBaseConsts.CASE_LEVEL_1 == caseInfo.getCaseLevel()){
                     // 一级事件,本级+上级+上上级审核
-                    if (FlowNodeEnum.FLOW_NODE_JASH.equals(jashCaseTask.getNodeId())){
+                    if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(jashCaseTask.getNodeId())){
                         // 完成本级综治中心审核,进入上级综治中心审核节点
                         nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(),
                                 FlowableConsts.OPERATION_jash_ty_sq, userId);
 
-                    }else if (FlowNodeEnum.FLOW_NODE_JASH_YJ.equals(jashCaseTask.getNodeId())){
+                    }else if (FlowNodeEnum.FLOW_NODE_JASH_YJ.getIndex().equals(jashCaseTask.getNodeId())){
                         // 完成上级综治中心审核,进入上上级综治中心审核节点
                         nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(),
                                 FlowableConsts.OPERATION_jash_ty_sq, userId);
@@ -2410,7 +2483,7 @@
                 }else if (CaseBaseConsts.CASE_LEVEL_2 == caseInfo.getCaseLevel()){
                     // 二级事件,本级+上级审核
                     String operation = FlowableConsts.OPERATION_jash_ty;
-                    if (FlowNodeEnum.FLOW_NODE_JASH.equals(jashCaseTask.getNodeId())){
+                    if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(jashCaseTask.getNodeId())){
                         // 完成本级综治中心审核,进入上级综治中心审核节点
                         nextFlowNode = flowInfoService.completeTask(jashCaseTask.getFlowableId(), jashCaseTask.getProcessTaskId(),
                                 FlowableConsts.OPERATION_jash_ty_sq, userId);
@@ -2687,6 +2760,8 @@
                 caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes());
                 caseInfoPO.setUpdateTime(nowDate);
                 caseInfoService.updateCaseInfo(caseInfoPO);
+
+                this.deleteGridTodo(jashCaseTaskPO);
             }
         }catch (Exception e){
             log.error("[CaseTaskService.webWindupApply]调用失败,异常信息:"+e, e);
@@ -2774,6 +2849,9 @@
             caseReturn.setCaseTaskId(htshCaseTask.getId());
             caseReturn.setCaseTaskType(htshCaseTask.getCaseTaskType());
             caseReturnService.save(caseReturn);
+            //添加网格审核任务
+            CaseInfo caseInfo = caseInfoService.getCaseInfo(thisCaseTask.getCaseId());
+            this.createGridToDo(caseInfo, htshCaseTask, GridEnum.GRID_OBJECT_TYPE_4.getIndex(), GridBaseConsts.GRID_TYPE_4);
         }catch (Exception e){
             log.error("[CaseTaskService.webReturnApply]调用失败,异常信息:"+e, e);
             throw new ServiceException("CaseTaskService.webReturnApply", e);
@@ -2884,16 +2962,29 @@
                         mapper.updateCaseTask(assistCaseTask);
                         // 结束配合组织当前工作流任务
                         flowInfoService.endFlow(assistCaseTask.getProcessInstanceId());
+                        // 更新联合处置信息
+                        UpdateWrapper<CaseAssistInfo> caseAssistInfoUpdateWrapper = new UpdateWrapper<>();
+                        caseAssistInfoUpdateWrapper.eq("case_id", htshCaseTask.getCaseId())
+                                .eq("process_instance_id", assistCaseTask.getProcessInstanceId())
+                                .eq("assist_status", CaseTaskConsts.ASSIST_STATUS_0).set("assist_status", CaseTaskConsts.ASSIST_STATUS_2);
+                        caseAssistInfoService.update(caseAssistInfoUpdateWrapper);
+
+                        //修改网格待办
+                        CaseInfo caseInfo = caseInfoService.getCaseInfo(htshCaseTask.getCaseId());
+                        this.taskFlowGridToDo(caseInfo, assistCaseTask, htshCaseTaskPO.getId(), GridEnum.GRID_OBJECT_TYPE_1.getIndex(), GridBaseConsts.GRID_TYPE_1);
                     }
                 }else {
                     // 更新联合处置信息
                     QueryWrapper<CaseAssistInfo> caseAssistInfoQueryWrapper = new QueryWrapper<>();
-                    caseAssistInfoQueryWrapper.eq("case_id", htshCaseTask.getCaseId()).eq("assist_unit_id", htshCaseTask.getCandeUnitId()).eq("assist_status", CaseTaskConsts.ASSIST_STATUS_0);
+                    caseAssistInfoQueryWrapper.eq("case_id", htshCaseTask.getCaseId())
+                            .eq("assist_unit_id", htshCaseTask.getCandeUnitId())
+                            .eq("assist_status", CaseTaskConsts.ASSIST_STATUS_0);
                     CaseAssistInfo caseAssistInfo = caseAssistInfoService.getOne(caseAssistInfoQueryWrapper);
                     if (ObjectUtils.isNotEmpty(caseAssistInfo)){
                         caseAssistInfo.setAssistStatus(CaseTaskConsts.ASSIST_STATUS_1);
                         caseAssistInfoService.updateCaseAssistInfo(caseAssistInfo);
                     }
+                    this.deleteGridTodo(htshCaseTaskPO);
                 }
             }else {
                 // 审核不通过
@@ -2962,6 +3053,9 @@
                 nextCaseTask.setCreateTime(nowDate);
                 nextCaseTask.setUpdateTime(nowDate);
                 mapper.insert(nextCaseTask);
+                //修改网格待办
+                CaseInfo caseInfo = caseInfoService.getCaseInfo(htshCaseTask.getCaseId());
+                this.taskFlowGridToDo(caseInfo, nextCaseTask, htshCaseTaskPO.getId(), GridEnum.GRID_OBJECT_TYPE_3.getIndex(), GridBaseConsts.GRID_TYPE_3);
             }
         }catch (Exception e){
             log.error("[CaseTaskService.webReturnAudit]调用失败,异常信息:"+e, e);
@@ -3045,6 +3139,9 @@
             // 新增上报申请信息
             caseAppear.setCaseTaskId(sbshCaseTask.getId());
             caseAppearService.save(caseAppear);
+            //添加网格审核任务
+            CaseInfo caseInfo = caseInfoService.getCaseInfo(thisCaseTask.getCaseId());
+            this.createGridToDo(caseInfo, sbshCaseTask, GridEnum.GRID_OBJECT_TYPE_4.getIndex(), GridBaseConsts.GRID_TYPE_4);
         }catch (Exception e){
             log.error("[CaseTaskService.webAppearApply]调用失败,异常信息:"+e, e);
             throw new ServiceException("CaseTaskService.webAppearApply", e);
@@ -3133,6 +3230,10 @@
                 caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes());
                 caseInfoPO.setUpdateTime(nowDate);
                 caseInfoService.updateCaseInfo(caseInfoPO);
+
+                //网格待办任务处理
+                CaseInfo caseInfo = caseInfoService.getCaseInfo(sbshCaseTask.getCaseId());
+                this.taskFlowGridToDo(caseInfo, dfphCaseTask, sbshCaseTaskPO.getId(), GridEnum.GRID_OBJECT_TYPE_1.getIndex(), GridBaseConsts.GRID_TYPE_1);
             }else {
                 // 审核不通过
                 // 完成当前上报审核任务
@@ -3186,6 +3287,10 @@
                 dfphCaseTask.setCreateTime(nowDate);
                 dfphCaseTask.setUpdateTime(nowDate);
                 mapper.insert(dfphCaseTask);
+
+                //网格待办任务处理
+                CaseInfo caseInfo = caseInfoService.getCaseInfo(sbshCaseTask.getCaseId());
+                this.taskFlowGridToDo(caseInfo, dfphCaseTask, sbshCaseTaskPO.getId(), GridEnum.GRID_OBJECT_TYPE_1.getIndex(), GridBaseConsts.GRID_TYPE_1);
             }
         }catch (Exception e){
             log.error("[CaseTaskService.webAppearAudit]调用失败,异常信息:"+e, e);
@@ -3219,4 +3324,70 @@
         }
     }
 
+    public void deleteGridTodo(CaseTask caseTask) {
+        try {
+            //删除网格待办任务
+            GridTaskVo gridTaskVo = new GridTaskVo();
+            gridTaskVo.setCaseId(caseTask.getCaseId());
+            gridTaskVo.setCaseTaskId(caseTask.getId());
+            sysClient.deleteTaskTodo(gridTaskVo);
+        } catch (Exception e) {
+            log.error("添加网格待办失败");
+        }
+    }
+
+    public void createGridToDo(CaseInfo caseInfo, CaseTask caseTask, String gridObjType, String noticeTypeName){
+        try {
+            //添加网格待办
+            GridToDoBacthVo gridToDoBacthVo = new GridToDoBacthVo();
+            gridToDoBacthVo.setObjId(caseTask.getId());
+            gridToDoBacthVo.setObjType(gridObjType);
+            gridToDoBacthVo.setTodoType(GridEnum.GRID_TODO_TYPE_5.getIndex());
+            gridToDoBacthVo.setTitle(noticeTypeName + caseInfo.getPlaintiffs() + "和" + caseInfo.getDefendants()+"的"+caseInfo.getCaseTypeName()+"事件");
+            gridToDoBacthVo.setLimitTime(String.valueOf(caseTask.getExpireTime()));
+            sysClient.createTaskToDo(gridToDoBacthVo, caseTask.getCandeUnitId());
+        } catch (Exception e) {
+            log.error("添加网格待办失败");
+            log.error(e.getMessage(), e);
+        }
+    }
+
+    public void updateGridToDo(CaseInfo caseInfo, CaseTask caseTask, String previousTaskId, String gridObjType, String noticeTypeName) {
+        try {
+            //添加网格待办
+            GridToDoVo gridToDoVo = new GridToDoVo();
+            gridToDoVo.setObjId(caseTask.getId());
+            gridToDoVo.setObjType(gridObjType);
+            gridToDoVo.setTodoType(GridEnum.GRID_TODO_TYPE_5.getIndex());
+            gridToDoVo.setTitle(noticeTypeName + caseInfo.getPlaintiffs() + "和" + caseInfo.getDefendants() + "的" + caseInfo.getCaseTypeName() + "事件");
+            gridToDoVo.setLimitTime(String.valueOf(caseTask.getExpireTime()));
+            gridToDoVo.setCaseId(caseInfo.getId());
+            sysClient.updateTaskTodo(gridToDoVo, previousTaskId);
+        } catch (Exception e) {
+            log.error("添加网格待办失败");
+            log.error(e.getMessage(), e);
+        }
+    }
+
+    public void taskFlowGridToDo(CaseInfo caseInfo, CaseTask caseTask, String previousTaskId, String gridObjType, String noticeTypeName) {
+        try {
+            //删除网格待办任务
+            GridTaskVo gridTaskVo = new GridTaskVo();
+            gridTaskVo.setCaseId(caseInfo.getId());
+            gridTaskVo.setCaseTaskId(previousTaskId);
+            sysClient.deleteTaskTodo(gridTaskVo);
+            //添加网格待办
+            GridToDoVo gridToDoVo = new GridToDoVo();
+            gridToDoVo.setObjId(caseTask.getId());
+            gridToDoVo.setObjType(gridObjType);
+            gridToDoVo.setTodoType(GridEnum.GRID_TODO_TYPE_5.getIndex());
+            gridToDoVo.setTitle(noticeTypeName + caseInfo.getPlaintiffs() + "和" + caseInfo.getDefendants() + "的" + caseInfo.getCaseTypeName() + "事件");
+            gridToDoVo.setLimitTime(String.valueOf(caseTask.getExpireTime()));
+            gridToDoVo.setCaseId(caseInfo.getId());
+            sysClient.updateTaskTodo(gridToDoVo, previousTaskId);
+        } catch (Exception e) {
+            log.error("添加网格待办失败");
+            log.error(e.getMessage(), e);
+        }
+    }
 }

--
Gitblit v1.8.0