forked from gzzfw/backEnd/gz-dyh

liyj
2024-09-14 9b3c5c304a2af98f7eb77dd961a9d1233bdd6476
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());
                    }
                    webCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName());
                    webCaseFlowDTO.setTaskType(caseTask.getTaskType());
                    webCaseFlowDTO.setStatus(caseTask.getStatus());
                }else {
                    webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName());
                    webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName());
                    webCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName());
                    webCaseFlowDTO.setHandleTime(caseTask.getHandleTime());
                    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 (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())){
                    if(CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus()
                            && CaseTaskConsts.TASK_STATUS_2 == caseTask.getStatus()){
                            || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex())
                            || caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSL.getIndex())){
                        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.setHandleNotes("已签收");
                                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_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_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());
                    // 上报审核节点,需要加多一个上报申请节点
                    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);
                        }
                        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()) {
                        }
                    // 普通节点
                    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());
                    // 审核节点要判断通过/不通过
                    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);
@@ -1814,7 +1803,7 @@
            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());
@@ -2035,7 +2024,7 @@
            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());