From 9b3c5c304a2af98f7eb77dd961a9d1233bdd6476 Mon Sep 17 00:00:00 2001
From: liyj <1003249715@qq.com>
Date: Sat, 14 Sep 2024 21:43:12 +0800
Subject: [PATCH] 1、自行受理bug修复 2、流程进度展示bug修复

---
 dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java |  284 +++++++++++++++++++++++++++-----------------------------
 1 files changed, 137 insertions(+), 147 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 6c81ef3..776d69a 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
@@ -401,7 +401,6 @@
             }else {
                 lfdj.setNodeShowName(caseInfo.getCanalName());
                 lfdj.setHandleUnitName(caseInfo.getInputUserName()+"(当事人)");
-                lfdj.setHandleUserName(caseInfo.getInputUserName());
             }
             lfdj.setTaskType(CaseTaskConsts.TASK_TYPE_1);
             lfdj.setStatus(CaseTaskConsts.TASK_STATUS_2);
@@ -411,106 +410,96 @@
             QueryWrapper<CaseTask> caseTaskQueryWrapper = new QueryWrapper<>();
             caseTaskQueryWrapper.eq("case_id", caseId).eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_1).orderByAsc("id");
             List<CaseTask> handleCaseTaskList = mapper.selectList(caseTaskQueryWrapper);
-
             for (CaseTask caseTask: handleCaseTaskList){
-                WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO();
-                if (CaseTaskConsts.TASK_STATUS_1 == caseTask.getStatus()){
-                    if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){
-                        webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
-                        webCaseFlowDTO.setProcessName(caseTask.getNodeShowName());
-                    }else{
-                        webCaseFlowDTO.setProcessName(caseInfo.getProcessName());
+                // 已结束节点
+                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())){
+                        WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO();
+                        slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
+                        slWebCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName());
+                        slWebCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName());
+                        slWebCaseFlowDTO.setHandleTime(caseTask.getHandleTime());
+                        slWebCaseFlowDTO.setHandleNotes("已签收");
+                        slWebCaseFlowDTO.setTaskType(caseTask.getTaskType());
+                        slWebCaseFlowDTO.setStatus(caseTask.getStatus());
+                        handleCaseFlowList.add(slWebCaseFlowDTO);
                     }
-                    webCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName());
-                    webCaseFlowDTO.setTaskType(caseTask.getTaskType());
-                    webCaseFlowDTO.setStatus(caseTask.getStatus());
-                }else {
+                    // 回退审核节点,需要加多一个回退申请节点
+                    if(caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex())
+                            || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex())
+                            || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex())){
+                        WebCaseFlowDTO sqWebCaseFlowDTO = new WebCaseFlowDTO();
+                        sqWebCaseFlowDTO.setNodeShowName("事件回退");
+                        sqWebCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName());
+                        sqWebCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName());
+                        sqWebCaseFlowDTO.setHandleTime(caseTask.getHandleTime());
+                        sqWebCaseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_2);
+                        sqWebCaseFlowDTO.setStatus(caseTask.getStatus());
+                        CaseReturn caseReturn = caseReturnService.getByCaseTaskId(caseTask.getId());
+                        sqWebCaseFlowDTO.setHandleNotes("回退理由:"+caseReturn.getReturnContent());
+                        handleCaseFlowList.add(sqWebCaseFlowDTO);
+                    }
+                    // 上报审核节点,需要加多一个上报申请节点
+                    if(caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex())
+                            || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex())){
+                        WebCaseFlowDTO sqWebCaseFlowDTO = new WebCaseFlowDTO();
+                        sqWebCaseFlowDTO.setNodeShowName("事件上报");
+                        sqWebCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName());
+                        sqWebCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName());
+                        sqWebCaseFlowDTO.setHandleTime(caseTask.getHandleTime());
+                        sqWebCaseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_3);
+                        sqWebCaseFlowDTO.setStatus(caseTask.getStatus());
+                        CaseAppear caseAppear = caseAppearService.getByCaseTaskId(caseTask.getId());
+                        sqWebCaseFlowDTO.setHandleNotes("上报意见:"+caseAppear.getAppearContent());
+                        handleCaseFlowList.add(sqWebCaseFlowDTO);
+                    }
+                    // 普通节点
+                    WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO();
                     webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
                     webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName());
                     webCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName());
                     webCaseFlowDTO.setHandleTime(caseTask.getHandleTime());
+                    webCaseFlowDTO.setStatus(caseTask.getStatus());
                     webCaseFlowDTO.setHandleNotes(caseTask.getHandleIllust());
                     webCaseFlowDTO.setTaskType(caseTask.getTaskType());
-                    // todo 审核不通过、通过的展示,有调解结果的
-                    if (CaseTaskConsts.HANDLE_RESULT_1 == caseTask.getHandleResult()) {
-
-                    }
-                    if (CaseTaskConsts.HANDLE_RESULT_2 == caseTask.getHandleResult()) {
-
-                    }
-                    webCaseFlowDTO.setStatus(caseTask.getStatus());
-                }
-                handleCaseFlowList.add(webCaseFlowDTO);
-                // 待受理节点,已签收的并处理完,需要加多一个受理节点
-                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())){
-                    if(CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus()
-                            && CaseTaskConsts.TASK_STATUS_2 == caseTask.getStatus()){
-                        WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO();
-                        if (CaseTaskConsts.TASK_STATUS_1 == caseTask.getStatus()){
-                            if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){
-                                slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
-                                slWebCaseFlowDTO.setProcessName(caseTask.getNodeShowName());
-                            }else{
-                                slWebCaseFlowDTO.setProcessName(caseInfo.getProcessName());
-                            }
-                            slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName());
-                            slWebCaseFlowDTO.setTaskType(caseTask.getTaskType());
-                            slWebCaseFlowDTO.setStatus(caseTask.getStatus());
-                        }else {
-                            slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
-                            slWebCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName());
-                            slWebCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName());
-                            slWebCaseFlowDTO.setHandleTime(caseTask.getHandleTime());
-                            slWebCaseFlowDTO.setHandleNotes("已受理");
-                            if (CaseTaskConsts.HANDLE_RESULT_1 == caseTask.getHandleResult()) {
-                                slWebCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex());
-                                slWebCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes());
-                                slWebCaseFlowDTO.setTaskType(caseTask.getTaskType());
-                            }
-                            if (CaseTaskConsts.HANDLE_RESULT_2 == caseTask.getHandleResult()) {
-                                slWebCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_2.getIndex());
-                                slWebCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_2.getDes());
-                                slWebCaseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_2);
-                            }
-                            slWebCaseFlowDTO.setStatus(caseTask.getStatus());
-                        }
-                        handleCaseFlowList.add(slWebCaseFlowDTO);
-                    }
-                }
-
-                // 办理反馈节点,加上化解结果
-                if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_BLFK.getIndex())){
-                    WebCaseFlowDTO blfkWebCaseFlowDTO = new WebCaseFlowDTO();
-                    if (CaseTaskConsts.TASK_STATUS_1 == caseTask.getStatus()){
-                        if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){
-                            blfkWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
-                            blfkWebCaseFlowDTO.setProcessName(caseTask.getNodeShowName());
-                        }else{
-                            blfkWebCaseFlowDTO.setProcessName(caseInfo.getProcessName());
-                        }
-                        blfkWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName());
-                        blfkWebCaseFlowDTO.setTaskType(caseTask.getTaskType());
-                        blfkWebCaseFlowDTO.setStatus(caseTask.getStatus());
-                    }else {
-                        blfkWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
-                        blfkWebCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName());
-                        blfkWebCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName());
-                        blfkWebCaseFlowDTO.setHandleTime(caseTask.getHandleTime());
-                        CaseInfoUnfold caseInfoUnfold = caseInfoUnfoldService.getById(caseId);
-                        blfkWebCaseFlowDTO.setHandleNotes("化解结果:"+caseInfoUnfold.getMediResultName());
-                        blfkWebCaseFlowDTO.setTaskType(caseTask.getTaskType());
-                        // todo 审核不通过、通过的展示,有调解结果的
-                        if (CaseTaskConsts.HANDLE_RESULT_1 == caseTask.getHandleResult()) {
-
-                        }
+                    // 审核节点要判断通过/不通过
+                    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.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_2.getIndex());
+                            webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_2.getDes());
+                            webCaseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_2);
+                        }else if (CaseTaskConsts.HANDLE_RESULT_1 == caseTask.getHandleResult()) {
+                            // 处理通过
+                            webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex());
+                            webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes());
                         }
-                        blfkWebCaseFlowDTO.setStatus(caseTask.getStatus());
                     }
-                    handleCaseFlowList.add(blfkWebCaseFlowDTO);
+                    // 结案申请,需要展示化解结果
+                    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());
+                        }
+                    }
+                    handleCaseFlowList.add(webCaseFlowDTO);
+                }else {
+                    // 进行中的节点
+                    WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO();
+                    webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
+                    webCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName());
+                    webCaseFlowDTO.setStatus(caseTask.getStatus());
+                    handleCaseFlowList.add(webCaseFlowDTO);
                 }
             }
             result.put("handleCaseFlowList", handleCaseFlowList);
@@ -789,55 +778,53 @@
      * @return
      */
     public List<WechatCaseFlowDTO> wechatListCaseFlow(String caseId, String userId){
-        try{
-            // 封装办理流程
-            List<WechatCaseFlowDTO> list = new ArrayList<>();
-            CaseInfo caseInfo = caseInfoService.getById(caseId);
-            // 提交申请
-            WechatCaseFlowDTO tjsq = new WechatCaseFlowDTO();
-            tjsq.setProcessName("提交申请");
-            tjsq.setVisitWayName(caseInfo.getVisitWayName());
-            tjsq.setShowTime(caseInfo.getCreateTime());
-            tjsq.setCaseTypeName(caseInfo.getCaseTypeName());
-            list.add(tjsq);
-            // 办理中
-            if (caseInfo.getInfoProcess() == CaseInfoProcessBaseConstsEnum.CASE_INFO_PROCESS_2.getIndex()){
-                CaseInfoUnfold caseInfoUnfold = caseInfoUnfoldService.getById(caseId);
-                WechatCaseFlowDTO sxbl = new WechatCaseFlowDTO();
-                sxbl.setProcessName("事项办理");
-                sxbl.setShowTime(caseInfoUnfold.getAcceptTime());
-                sxbl.setMediateUnitName(caseInfoUnfold.getMediateUnitName());
-                list.add(sxbl);
-            }
-            // 已结案
-            if (caseInfo.getInfoProcess() == CaseInfoProcessBaseConstsEnum.CASE_INFO_PROCESS_2.getIndex()){
-                CaseInfoUnfold caseInfoUnfold = caseInfoUnfoldService.getById(caseId);
-                WechatCaseFlowDTO sxbj = new WechatCaseFlowDTO();
-                sxbj.setProcessName("事项办结");
-                sxbj.setShowTime(caseInfoUnfold.getCloseTime());
-                sxbj.setMediResult(caseInfoUnfold.getMediResult());
-                sxbj.setMediResultName(caseInfoUnfold.getMediResultName());
-                list.add(sxbj);
-            }
-            // 评价
-            QueryWrapper<CaseEvaluate> caseEvaluateQueryWrapper = new QueryWrapper<>();
-            caseEvaluateQueryWrapper.eq("case_id", caseId).orderByDesc("create_time");
-            List<CaseEvaluate> caseEvaluateList = caseEvaluateService.list(caseEvaluateQueryWrapper);
-            if (CollectionUtils.isNotEmpty(caseEvaluateList)){
-                CaseEvaluate caseEvaluate = caseEvaluateList.get(0);
-                WechatCaseFlowDTO sxpj = new WechatCaseFlowDTO();
-                sxpj.setProcessName("事项评价");
-                sxpj.setShowTime(caseEvaluate.getCreateTime());
-                sxpj.setEvaluateUserName(caseEvaluate.getEvaluateUserName());
-                sxpj.setEvaluateGrade(caseEvaluate.getEvaluateGrade());
-                sxpj.setEvaluateRemark(caseEvaluate.getEvaluateRemark());
-                list.add(sxpj);
-            }
-            return list;
-        }catch (Exception e){
-            log.error("[CaseTaskService.wechatListCaseFlow]调用失败,异常信息:"+e, e);
-            throw new ServiceException("CaseTaskService.wechatListCaseFlow", e);
+        // 封装办理流程
+        List<WechatCaseFlowDTO> list = new ArrayList<>();
+        CaseInfo caseInfo = caseInfoService.getById(caseId);
+        // 提交申请
+        WechatCaseFlowDTO tjsq = new WechatCaseFlowDTO();
+        tjsq.setProcessName("提交申请");
+        tjsq.setVisitWayName(caseInfo.getVisitWayName());
+        tjsq.setShowTime(caseInfo.getCreateTime());
+        tjsq.setCaseTypeName(caseInfo.getCaseTypeName());
+        tjsq.setProcessStep(1);
+        list.add(tjsq);
+        CaseInfoUnfold caseInfoUnfold = caseInfoUnfoldService.getById(caseId);
+        // 办理中
+        if (caseInfo.getInfoProcess() >= CaseInfoProcessBaseConstsEnum.CASE_INFO_PROCESS_2.getIndex()){
+            WechatCaseFlowDTO sxbl = new WechatCaseFlowDTO();
+            sxbl.setProcessName("事项办理");
+            sxbl.setShowTime(caseInfoUnfold.getAcceptTime());
+            sxbl.setMediateUnitName(caseInfoUnfold.getMediateUnitName());
+            sxbl.setProcessStep(2);
+            list.add(sxbl);
         }
+        // 已结案
+        if (caseInfo.getInfoProcess() >= CaseInfoProcessBaseConstsEnum.CASE_INFO_PROCESS_3.getIndex()){
+            WechatCaseFlowDTO sxbj = new WechatCaseFlowDTO();
+            sxbj.setProcessName("事项办结");
+            sxbj.setShowTime(caseInfoUnfold.getCloseTime());
+            sxbj.setMediResult(caseInfoUnfold.getMediResult());
+            sxbj.setMediResultName(caseInfoUnfold.getMediResultName());
+            sxbj.setProcessStep(3);
+            list.add(sxbj);
+        }
+        // 评价
+        QueryWrapper<CaseEvaluate> caseEvaluateQueryWrapper = new QueryWrapper<>();
+        caseEvaluateQueryWrapper.eq("case_id", caseId).orderByDesc("create_time");
+        List<CaseEvaluate> caseEvaluateList = caseEvaluateService.list(caseEvaluateQueryWrapper);
+        if (CollectionUtils.isNotEmpty(caseEvaluateList)){
+            CaseEvaluate caseEvaluate = caseEvaluateList.get(0);
+            WechatCaseFlowDTO sxpj = new WechatCaseFlowDTO();
+            sxpj.setProcessName("事项评价");
+            sxpj.setShowTime(caseEvaluate.getCreateTime());
+            sxpj.setEvaluateUserName(caseEvaluate.getEvaluateUserName());
+            sxpj.setEvaluateGrade(caseEvaluate.getEvaluateGrade());
+            sxpj.setEvaluateRemark(caseEvaluate.getEvaluateRemark());
+            sxpj.setProcessStep(4);
+            list.add(sxpj);
+        }
+        return list;
     }
 
     /**
@@ -1216,9 +1203,10 @@
             List<String> taskIdList = new ArrayList<>();
             List<String> caseIdList = new ArrayList<>();
             for (SignTaskDTO signTaskDTO: signTaskDTOList){
-                CaseTask qsCaseTask = mapper.selectById(signTaskDTO.getCaseId());
+                CaseTask qsCaseTask = mapper.selectById(signTaskDTO.getCaseTaskId());
                 // 更新纠纷任务信息
                 CaseTask caseTaskPO = new CaseTask();
+                caseTaskPO.setId(qsCaseTask.getId());
                 caseTaskPO.setSignStatus(CaseTaskConsts.SIGN_STATUS_2);
                 caseTaskPO.setSignTime(nowDate);
                 caseTaskPO.setSignUserId(loginUser.getId());
@@ -1230,6 +1218,7 @@
                 if (CaseTaskConsts.CASE_TASK_TYPE_1 ==  qsCaseTask.getCaseTaskType()) {
                     // 更新纠纷信息
                     CaseInfo caseInfoPO = new CaseInfo();
+                    caseInfoPO.setId(qsCaseTask.getCaseId());
                     caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_3.getIndex());
                     caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_3.getDes());
                     caseInfoPO.setProcess(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getIndex());
@@ -1810,11 +1799,11 @@
             // 新建回退审核任务
             CaseTask htshCaseTask = new CaseTask();
             htshCaseTask.setId(utilsClient.getNewTimeId());
-            htshCaseTask.setCaseId(dslCaseTaskPO.getCaseId());
+            htshCaseTask.setCaseId(dslCaseTask.getCaseId());
             htshCaseTask.setFlowableId(htshFlowNode.getFlowableId());
             htshCaseTask.setProcessInstanceId(htshFlowNode.getProcessInstanceId());
             htshCaseTask.setProcessTaskId(htshFlowNode.getProcessTaskId());
-            htshCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_2);
+            htshCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1);
             htshCaseTask.setNodeType(htshFlowNode.getNodeType());
             htshCaseTask.setNodeId(htshFlowNode.getNodeId());
             htshCaseTask.setNodeName(htshFlowNode.getNodeName());
@@ -1940,7 +1929,8 @@
                 sbshCaseTaskPO.setHandleTime(nowDate);
                 sbshCaseTaskPO.setUpdateTime(nowDate);
                 mapper.updateCaseTask(sbshCaseTaskPO);
-                CtUnitDTO returnUnit = custClient.getUnitById(caseReturn.getReturnUnitId());
+                CaseReturn btyCaseReturn = caseReturnService.getById(caseReturn.getId());
+                CtUnitDTO returnUnit = custClient.getUnitById(btyCaseReturn.getReturnUnitId());
                 String operation = FlowableConsts.OPERATION_htsh_bty;
                 if (UserBaseConsts.UNIT_GRADE_2 == returnUnit.getUnitGrade()){
                     operation = FlowableConsts.OPERATION_htsh_bty_qj;
@@ -1954,7 +1944,7 @@
                 // 新建待分派任务
                 CaseTask dslCaseTask = new CaseTask();
                 dslCaseTask.setId(utilsClient.getNewTimeId());
-                dslCaseTask.setCaseId(dslCaseTask.getCaseId());
+                dslCaseTask.setCaseId(htshCaseTask.getCaseId());
                 dslCaseTask.setFlowableId(dslFlowNode.getFlowableId());
                 dslCaseTask.setProcessInstanceId(dslFlowNode.getProcessInstanceId());
                 dslCaseTask.setProcessTaskId(dslFlowNode.getProcessTaskId());
@@ -1967,8 +1957,8 @@
                 dslCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1);
                 // 受理任务,任务候选执行者类型是上一步骤选择
                 dslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1);
-                dslCaseTask.setCandeUnitId(caseReturn.getReturnUnitId());
-                dslCaseTask.setCandeUnitName(caseReturn.getReturnUnitName());
+                dslCaseTask.setCandeUnitId(btyCaseReturn.getReturnUnitId());
+                dslCaseTask.setCandeUnitName(btyCaseReturn.getReturnUnitName());
                 // 受理后的任务,不需要签收
                 dslCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0);
                 // 任务处理时限
@@ -2030,11 +2020,11 @@
             // 新建上报审核任务
             CaseTask sbshCaseTask = new CaseTask();
             sbshCaseTask.setId(utilsClient.getNewTimeId());
-            sbshCaseTask.setCaseId(dslCaseTaskPO.getCaseId());
+            sbshCaseTask.setCaseId(dslCaseTask.getCaseId());
             sbshCaseTask.setFlowableId(sbshFlowNode.getFlowableId());
             sbshCaseTask.setProcessInstanceId(sbshFlowNode.getProcessInstanceId());
             sbshCaseTask.setProcessTaskId(sbshFlowNode.getProcessTaskId());
-            sbshCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_3);
+            sbshCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1);
             sbshCaseTask.setNodeType(sbshFlowNode.getNodeType());
             sbshCaseTask.setNodeId(sbshFlowNode.getNodeId());
             sbshCaseTask.setNodeName(sbshFlowNode.getNodeName());

--
Gitblit v1.8.0