| | |
| | | import cn.huge.module.cases.dao.mapper.*; |
| | | import cn.huge.module.cases.domain.dto.*; |
| | | import cn.huge.base.common.utils.ObjectUtils; |
| | | import cn.huge.module.cases.domain.dto.CaseFlowDTO; |
| | | import cn.huge.module.cases.domain.dto.WebCaseFlowDTO; |
| | | import cn.huge.module.cases.domain.dto.TabButtonDTO; |
| | | import cn.huge.module.cases.domain.dto.TabButtonInfoDTO; |
| | | import cn.huge.module.cases.domain.po.CaseAssistApply; |
| | |
| | | private CaseAppearService caseAppearService; |
| | | @Autowired |
| | | private CaseReturnService caseReturnService; |
| | | @Autowired |
| | | private CaseEvaluateService caseEvaluateService; |
| | | |
| | | @Autowired |
| | | private CaseWindupApplyMapper caseWindupApplyMapper; |
| | |
| | | public Map<String, Object> webListCaseFlow(String caseId, String userId){ |
| | | try{ |
| | | Map<String, Object> result = Maps.newHashMap(); |
| | | LinkedList<CaseFlowDTO> handleCaseFlowList = new LinkedList<>(); |
| | | LinkedList<WebCaseFlowDTO> handleCaseFlowList = new LinkedList<>(); |
| | | // 首节点 |
| | | CaseFlowDTO lfdj = new CaseFlowDTO(); |
| | | WebCaseFlowDTO lfdj = new WebCaseFlowDTO(); |
| | | CaseInfo caseInfo = caseInfoService.getById(caseId); |
| | | if (CaseBaseConstsEnum.CASE_CANAL_1.getIndex().equals(caseInfo.getCanal())){ |
| | | lfdj.setNodeShowName("来访登记"); |
| | |
| | | List<CaseTask> handleCaseTaskList = mapper.selectList(caseTaskQueryWrapper); |
| | | |
| | | for (CaseTask caseTask: handleCaseTaskList){ |
| | | CaseFlowDTO caseFlowDTO = new CaseFlowDTO(); |
| | | WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO(); |
| | | if (CaseTaskConsts.TASK_STATUS_1 == caseTask.getStatus()){ |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ |
| | | caseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | caseFlowDTO.setProcessName(caseTask.getNodeShowName()); |
| | | webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | webCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); |
| | | }else{ |
| | | caseFlowDTO.setProcessName(caseInfo.getProcessName()); |
| | | webCaseFlowDTO.setProcessName(caseInfo.getProcessName()); |
| | | } |
| | | caseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | caseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | caseFlowDTO.setStatus(caseTask.getStatus()); |
| | | webCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | webCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | webCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | }else { |
| | | caseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | caseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); |
| | | caseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); |
| | | caseFlowDTO.setHandleTime(caseTask.getHandleTime()); |
| | | caseFlowDTO.setHandleNotes(caseTask.getHandleIllust()); |
| | | caseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | 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()) { |
| | | |
| | | } |
| | | caseFlowDTO.setStatus(caseTask.getStatus()); |
| | | webCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | } |
| | | handleCaseFlowList.add(caseFlowDTO); |
| | | 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()){ |
| | | CaseFlowDTO slCaseFlowDTO = new CaseFlowDTO(); |
| | | WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); |
| | | if (CaseTaskConsts.TASK_STATUS_1 == caseTask.getStatus()){ |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ |
| | | slCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | slCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); |
| | | slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | slWebCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); |
| | | }else{ |
| | | slCaseFlowDTO.setProcessName(caseInfo.getProcessName()); |
| | | slWebCaseFlowDTO.setProcessName(caseInfo.getProcessName()); |
| | | } |
| | | slCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | slCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | slCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | slWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | slWebCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | }else { |
| | | slCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | slCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); |
| | | slCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); |
| | | slCaseFlowDTO.setHandleTime(caseTask.getHandleTime()); |
| | | slCaseFlowDTO.setHandleNotes("已受理"); |
| | | 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()) { |
| | | slCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex()); |
| | | slCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes()); |
| | | slCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | 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()) { |
| | | slCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_2.getIndex()); |
| | | slCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_2.getDes()); |
| | | slCaseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_2); |
| | | slWebCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_2.getIndex()); |
| | | slWebCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_2.getDes()); |
| | | slWebCaseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_2); |
| | | } |
| | | slCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | slWebCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | } |
| | | handleCaseFlowList.add(slCaseFlowDTO); |
| | | handleCaseFlowList.add(slWebCaseFlowDTO); |
| | | } |
| | | } |
| | | |
| | | // 办理反馈节点,加上化解结果 |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_BLFK.getIndex())){ |
| | | CaseFlowDTO blfkCaseFlowDTO = new CaseFlowDTO(); |
| | | WebCaseFlowDTO blfkWebCaseFlowDTO = new WebCaseFlowDTO(); |
| | | if (CaseTaskConsts.TASK_STATUS_1 == caseTask.getStatus()){ |
| | | if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ |
| | | blfkCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | blfkCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); |
| | | blfkWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | blfkWebCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); |
| | | }else{ |
| | | blfkCaseFlowDTO.setProcessName(caseInfo.getProcessName()); |
| | | blfkWebCaseFlowDTO.setProcessName(caseInfo.getProcessName()); |
| | | } |
| | | blfkCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | blfkCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | blfkCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | blfkWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | blfkWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | blfkWebCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | }else { |
| | | blfkCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | blfkCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); |
| | | blfkCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); |
| | | blfkCaseFlowDTO.setHandleTime(caseTask.getHandleTime()); |
| | | blfkWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | blfkWebCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); |
| | | blfkWebCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); |
| | | blfkWebCaseFlowDTO.setHandleTime(caseTask.getHandleTime()); |
| | | CaseInfoUnfold caseInfoUnfold = caseInfoUnfoldService.getById(caseId); |
| | | blfkCaseFlowDTO.setHandleNotes("化解结果:"+caseInfoUnfold.getMediResultName()); |
| | | blfkCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | blfkWebCaseFlowDTO.setHandleNotes("化解结果:"+caseInfoUnfold.getMediResultName()); |
| | | blfkWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | // todo 审核不通过、通过的展示,有调解结果的 |
| | | if (CaseTaskConsts.HANDLE_RESULT_1 == caseTask.getHandleResult()) { |
| | | |
| | |
| | | if (CaseTaskConsts.HANDLE_RESULT_2 == caseTask.getHandleResult()) { |
| | | |
| | | } |
| | | blfkCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | blfkWebCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | } |
| | | handleCaseFlowList.add(blfkCaseFlowDTO); |
| | | handleCaseFlowList.add(blfkWebCaseFlowDTO); |
| | | } |
| | | } |
| | | result.put("handleCaseFlowList", handleCaseFlowList); |
| | | |
| | | // 查询配合组织流程 |
| | | LinkedList<CaseFlowDTO> assistCaseFlowList = new LinkedList<>(); |
| | | LinkedList<WebCaseFlowDTO> assistCaseFlowList = new LinkedList<>(); |
| | | caseTaskQueryWrapper.clear(); |
| | | caseTaskQueryWrapper.eq("case_id", caseId).eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_2).orderByDesc("create_time"); |
| | | List<CaseTask> assistCaseTaskList = mapper.selectList(caseTaskQueryWrapper); |
| | | for (CaseTask caseTask: assistCaseTaskList){ |
| | | CaseFlowDTO caseFlowDTO = new CaseFlowDTO(); |
| | | caseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | caseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | caseFlowDTO.setHandleTime(caseTask.getHandleTime()); |
| | | caseFlowDTO.setHandleNotes(caseTask.getHandleIllust()); |
| | | caseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | caseFlowDTO.setStatus(caseTask.getStatus()); |
| | | assistCaseFlowList.add(caseFlowDTO); |
| | | WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO(); |
| | | webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); |
| | | webCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); |
| | | webCaseFlowDTO.setHandleTime(caseTask.getHandleTime()); |
| | | webCaseFlowDTO.setHandleNotes(caseTask.getHandleIllust()); |
| | | webCaseFlowDTO.setTaskType(caseTask.getTaskType()); |
| | | webCaseFlowDTO.setStatus(caseTask.getStatus()); |
| | | assistCaseFlowList.add(webCaseFlowDTO); |
| | | } |
| | | result.put("assistCaseFlowList", assistCaseFlowList); |
| | | return result; |
| | |
| | | * @param caseId 纠纷编号 |
| | | * @return |
| | | */ |
| | | public List<CaseFlowDTO> wechatListCaseFlow(String caseId, String userId){ |
| | | public List<WechatCaseFlowDTO> wechatListCaseFlow(String caseId, String userId){ |
| | | try{ |
| | | // 临时给前端联调数据 |
| | | List<CaseFlowDTO> list = new ArrayList<>(); |
| | | QueryWrapper<CaseTask> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.eq("case_id", caseId); |
| | | queryWrapper.orderByAsc("create_time"); |
| | | List<CaseTask> caseTasks = mapper.selectList(queryWrapper); |
| | | if(ObjectUtils.isNotEmpty(caseTasks)){ |
| | | for (CaseTask caseTask : caseTasks) { |
| | | CaseFlowDTO caseFlowDTO = new CaseFlowDTO(); |
| | | BeanUtils.copyProperties(caseTask, caseFlowDTO); |
| | | list.add(caseFlowDTO); |
| | | } |
| | | // 封装办理流程 |
| | | 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){ |