forked from gzzfw/backEnd/gz-dyh

zhouxiantao
2024-09-14 6f4ed9dbb428374e5513fbf88aae1377fd423a51
dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java
@@ -789,55 +789,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 +1214,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 +1229,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,7 +1810,7 @@
            // 新建回退审核任务
            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());
@@ -1940,7 +1940,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 +1955,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 +1968,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,7 +2031,7 @@
            // 新建上报审核任务
            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());