From 8a87336ca8f99ccb79c8eeb3e3796c2e41d207e7 Mon Sep 17 00:00:00 2001 From: liyj <15602261488@163.com> Date: Tue, 24 Sep 2024 19:03:07 +0800 Subject: [PATCH] 1、流程督办,当时人评价节点优化 --- dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java | 229 +++++++++++++++++++++++++++++++++++---------------------- 1 files changed, 140 insertions(+), 89 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 c588901..e01eeed 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 @@ -22,6 +22,8 @@ import cn.huge.module.cust.constant.UserBaseConsts; import cn.huge.module.cust.dto.CtUnitDTO; import cn.huge.module.cust.dto.CtUserDTO; +import cn.huge.module.draft.domain.po.CasedraftInfo; +import cn.huge.module.draft.service.CasedraftInfoService; import cn.huge.module.mediate.constant.AuditBaseConsts; import cn.huge.module.mediate.constant.AuditBaseConstsEnum; import cn.huge.module.disp.constant.DispBaseConstsEnum; @@ -99,6 +101,8 @@ private CaseAssistInfoService caseAssistInfoService; @Autowired private CaseDismissService caseDismissService; + @Autowired + private CasedraftInfoService casedraftInfoService; /** * 更新对象 @@ -211,8 +215,6 @@ */ public TabButtonDTO webGetTabButton(String caseTaskId, String userId){ try{ - // 查询当前任务信息 - CaseTask caseTask = mapper.selectById(caseTaskId); // 定义tab TabButtonInfoDTO sxxq = new TabButtonInfoDTO(); sxxq.setId("sxxq"); @@ -244,6 +246,9 @@ TabButtonInfoDTO daxx = new TabButtonInfoDTO(); daxx.setId("daxx"); daxx.setName("档案信息"); + TabButtonInfoDTO byslxq = new TabButtonInfoDTO(); + byslxq.setId("byslxq"); + byslxq.setName("详情"); // 定义button TabButtonInfoDTO tjbljl = new TabButtonInfoDTO(); @@ -276,98 +281,91 @@ TabButtonInfoDTO bysl = new TabButtonInfoDTO(); bysl.setId("bysl"); bysl.setName("不予受理"); + // 根据流程显示tab List<TabButtonInfoDTO> tabList = new LinkedList<>(); // 根据流程显示button List<TabButtonInfoDTO> buttonList = new LinkedList<>(); + // 查询当前任务信息 + CaseTask caseTask = mapper.selectById(caseTaskId); if (ObjectUtils.isNotEmpty(caseTask)) { - // 不予受理 - if (CaseTaskConsts.HANDLE_RESULT_3 == caseTask.getHandleResult()){ - tabList.add(daxx); - tabList.add(sqjl); - + // 已完成任务 + if (CaseTaskConsts.TASK_STATUS_2 == caseTask.getStatus()){ + // 不予受理 + if (ObjectUtils.isNotEmpty(caseTask.getHandleResult()) && CaseTaskConsts.HANDLE_RESULT_3 == caseTask.getHandleResult()){ + tabList.add(byslxq); + tabList.add(sqjl); + }else { + // 正常任务 + CaseInfo caseInfo = caseInfoService.getById(caseTask.getCaseId()); + if (CaseProcessBaseConstsEnum.CASE_PROCESS_6.getIndex() != caseInfo.getProcess()){ + daxx.setName("详情"); + } + tabList.add(daxx); + tabList.add(lcdb); + tabList.add(sqjl); + } }else { - // 正常流程 - if (FlowNodeEnum.FLOW_NODE_ZJ_DFP.getIndex().equals(caseTask.getNodeId())) { + // 进行中任务 + // 待分派节点 + if (FlowNodeEnum.FLOW_NODE_ZJ_DFP.getIndex().equals(caseTask.getNodeId()) + || FlowNodeEnum.FLOW_NODE_QJ_DFP.getIndex().equals(caseTask.getNodeId()) + || FlowNodeEnum.FLOW_NODE_SJ_DFP.getIndex().equals(caseTask.getNodeId())) { tabList.add(dslxq); tabList.add(sqjl); - buttonList.add(zxsl); + sl.setName("自行受理"); + buttonList.add(sl); buttonList.add(jb); buttonList.add(sb); buttonList.add(bysl); + + // 额外单独给详情跳转查看 + daxx.setName("详情"); + tabList.add(daxx); } - if (FlowNodeEnum.FLOW_NODE_ZJ_DSL.getIndex().equals(caseTask.getNodeId())) { + // 待受理节点 + if (FlowNodeEnum.FLOW_NODE_ZJ_DSL.getIndex().equals(caseTask.getNodeId()) + || FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex().equals(caseTask.getNodeId()) + || 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); } - if (FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex().equals(caseTask.getNodeId())) { + // 回退审核节点 + if (FlowNodeEnum.FLOW_NODE_ZJ_HTSH.getIndex().equals(caseTask.getNodeId()) + || FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex().equals(caseTask.getNodeId()) + || FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex().equals(caseTask.getNodeId()) + || FlowNodeEnum.FLOW_NODE_HTSH.getIndex().equals(caseTask.getNodeId())) { sxxq.setName("详情"); tabList.add(sxxq); tabList.add(sqjl); tabList.add(htsh); + + // 额外单独给详情跳转查看 + daxx.setName("详情"); + tabList.add(daxx); } - if (FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex().equals(caseTask.getNodeId())) { + // 上报审核节点 + if (FlowNodeEnum.FLOW_NODE_QJ_SBSH.getIndex().equals(caseTask.getNodeId()) + || FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex().equals(caseTask.getNodeId())) { sxxq.setName("详情"); tabList.add(sxxq); tabList.add(sqjl); tabList.add(sbsh); - } - if (FlowNodeEnum.FLOW_NODE_QJ_DFP.getIndex().equals(caseTask.getNodeId())) { - tabList.add(dslxq); - tabList.add(sqjl); - buttonList.add(zxsl); - buttonList.add(jb); - buttonList.add(sb); - buttonList.add(bysl); + // 额外单独给详情跳转查看 + daxx.setName("详情"); + tabList.add(daxx); } - if (FlowNodeEnum.FLOW_NODE_QJ_DSL.getIndex().equals(caseTask.getNodeId())) { - tabList.add(dslxq); - tabList.add(sqjl); - - buttonList.add(sl); - buttonList.add(ht); - buttonList.add(bysl); - } - if (FlowNodeEnum.FLOW_NODE_QJ_HTSH.getIndex().equals(caseTask.getNodeId())) { - sxxq.setName("详情"); - tabList.add(sxxq); - tabList.add(sqjl); - tabList.add(htsh); - } - if (FlowNodeEnum.FLOW_NODE_SJ_SBSH.getIndex().equals(caseTask.getNodeId())) { - sxxq.setName("详情"); - tabList.add(sxxq); - tabList.add(sqjl); - tabList.add(sbsh); - } - if (FlowNodeEnum.FLOW_NODE_SJ_DFP.getIndex().equals(caseTask.getNodeId())) { - tabList.add(dslxq); - tabList.add(sqjl); - - buttonList.add(zxsl); - buttonList.add(jb); - buttonList.add(bysl); - } - if (FlowNodeEnum.FLOW_NODE_SJ_DSL.getIndex().equals(caseTask.getNodeId())) { - tabList.add(dslxq); - tabList.add(sqjl); - - buttonList.add(sl); - buttonList.add(ht); - buttonList.add(bysl); - } - if (FlowNodeEnum.FLOW_NODE_SJ_HTSH.getIndex().equals(caseTask.getNodeId())) { - sxxq.setName("详情"); - tabList.add(sxxq); - tabList.add(sqjl); - tabList.add(htsh); - } + // 办理反馈节点 if (FlowNodeEnum.FLOW_NODE_BLFK.getIndex().equals(caseTask.getNodeId())) { if (CaseTaskConsts.CASE_TASK_TYPE_1 == caseTask.getCaseTaskType()) { tabList.add(sxxq); @@ -378,7 +376,11 @@ buttonList.add(tjbljl); buttonList.add(lhczsq); buttonList.add(jasq); - buttonList.add(db); +// buttonList.add(db); + + // 额外单独给详情跳转查看 + daxx.setName("详情"); + tabList.add(daxx); } else { tabList.add(sxxq); tabList.add(sxbl); @@ -386,42 +388,53 @@ tabList.add(sqjl); buttonList.add(tjbljl); + + // 额外单独给详情跳转查看 + daxx.setName("详情"); + tabList.add(daxx); } } + // 结案审核节点 if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(caseTask.getNodeId())) { tabList.add(sxxq); tabList.add(sqjl); tabList.add(jash); + + // 额外单独给详情跳转查看 + daxx.setName("详情"); + tabList.add(daxx); } + // 当事人评价节点 if (FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex().equals(caseTask.getNodeId())) { - daxx.setName("信息"); + daxx.setName("详情"); tabList.add(daxx); tabList.add(lcdb); tabList.add(sqjl); } + // 结案归档节点 if (FlowNodeEnum.FLOW_NODE_JAGD.getIndex().equals(caseTask.getNodeId())) { tabList.add(daxx); tabList.add(lcdb); tabList.add(sqjl); } + // 联合处置-待受理 if (FlowNodeEnum.FLOW_NODE_DSL.getIndex().equals(caseTask.getNodeId())) { tabList.add(dslxq); tabList.add(sqjl); buttonList.add(sl); buttonList.add(ht); - } - if (FlowNodeEnum.FLOW_NODE_HTSH.getIndex().equals(caseTask.getNodeId())) { - sxxq.setName("详情"); - tabList.add(sxxq); - tabList.add(sqjl); - tabList.add(htsh); + + // 额外单独给详情跳转查看 + daxx.setName("详情"); + tabList.add(daxx); } } }else { - tabList.add(sxxq); + daxx.setName("详情"); + tabList.add(daxx); + tabList.add(lcdb); tabList.add(sqjl); - tabList.add(lhczsh); } // 封装数据 TabButtonDTO tabButtonDTO = new TabButtonDTO(); @@ -515,6 +528,8 @@ if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); webCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); + webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUserName()); + webCaseFlowDTO.setHandleUserName(null); }else{ webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); } @@ -552,6 +567,7 @@ if (CaseTaskConsts.HANDLE_RESULT_3 == caseTask.getHandleResult()){ webCaseFlowDTO.setNodeShowName("不予受理"); webCaseFlowDTO.setHandleNotes(null); + webCaseFlowDTO.setTaskType(CaseTaskConsts.TASK_TYPE_4); } handleCaseFlowList.add(webCaseFlowDTO); }else { @@ -754,7 +770,21 @@ long countReturnReview = caseReturnService.countReturnReview(loginUser.getUnitId()); long countAppearReview = caseAppearService.countAppearReview(loginUser.getUnitId()); long countAssistReview = caseAssistApplyService.countAssistReview(loginUser.getUnitId()); + frontPageCountDTO.setReturnReview(countReturnReview); + frontPageCountDTO.setAppearReview(countAppearReview); + frontPageCountDTO.setWindupReview(countApplyReview); + frontPageCountDTO.setAssistReview(countAssistReview); frontPageCountDTO.setWaitReview(countApplyReview+countReturnReview+countAppearReview+countAssistReview); + // 已办 + Map<String, Object> ybTerms = new HashMap<>(); + ybTerms.put("handleUnitId", loginUser.getUnitId()); + long alreadyDone = mapper.countMyTaskYb(ybTerms); + frontPageCountDTO.setAlreadyDone(alreadyDone); + // 已办 + Map<String, Object> cgTerms = new HashMap<>(); + cgTerms.put("inputUnitId", loginUser.getUnitId()); + long caseDraft = casedraftInfoService.countTerms(cgTerms); + frontPageCountDTO.setCaseDraft(caseDraft); return frontPageCountDTO; }catch (Exception e) { log.error("[CaseTaskService.getCountList]调用失败,异常信息:" + e, e); @@ -772,10 +802,6 @@ try { long total = mapper.countMyTaskFp(terms); List<FrontPageListFPDTO> frontPageListFPDTOList = mapper.pageMyTaskFp(page, terms); - for (FrontPageListFPDTO frontPageListFPDTO: frontPageListFPDTOList){ - // 查询督办次数 - - } return new PageImpl<FrontPageListFPDTO>(frontPageListFPDTOList, page, total); }catch (Exception e) { log.error("[CaseTaskService.pageMyTaskFp]调用失败,异常信息:" + e, e); @@ -896,14 +922,11 @@ * @param terms 条件 * @return Page */ - public Page<FrontPageListDTO> pageMyTaskShWSQD(PageRequest page, int type, Map<String, Object> terms){ + public Page<FrontPageListWSQDDTO> pageMyTaskShWSQD(PageRequest page, Map<String, Object> terms){ try { - long total = 0; - List<FrontPageListDTO> frontPageListDTOList = new ArrayList<>(); - total = mapper.countMyTaskShWSQD(terms); - frontPageListDTOList = mapper.pageMyTaskShWSQD(page,terms); - - return new PageImpl<FrontPageListDTO>(frontPageListDTOList, page, total); + long total = mapper.countMyTaskShWSQD(terms); + List<FrontPageListWSQDDTO> frontPageListWSQDDTOList = mapper.pageMyTaskShWSQD(page,terms); + return new PageImpl<FrontPageListWSQDDTO>(frontPageListWSQDDTOList, page, total); }catch (Exception e) { log.error("[CaseTaskService.pageMyTaskQs]调用失败,异常信息:" + e, e); throw new ServiceException("CaseTaskService.pageMyTaskQs", e); @@ -934,16 +957,18 @@ List<CaseAssistApply>caseAssistApplyList = caseAssistApplyService.list(caseAssistApplyQueryWrapper); List<SortUtilDTO> sortUtilDTOList = new ArrayList<>(); + List<String> idList = new ArrayList<>(); String ids = new String(); - ids += caseReturnList.stream().map(CaseReturn:: getId).collect(Collectors.joining(",")); - ids += caseAppearList.stream().map(CaseAppear:: getId).collect(Collectors.joining(",")); - ids += caseWindupApplyList.stream().map(CaseWindupApply:: getId).collect(Collectors.joining(",")); - ids += caseAssistApplyList.stream().map(CaseAssistApply:: getId).collect(Collectors.joining(",")); + idList.addAll(caseReturnList.stream().map(CaseReturn:: getId).collect(Collectors.toList())); + idList.addAll(caseAppearList.stream().map(CaseAppear:: getId).collect(Collectors.toList())); + idList.addAll(caseWindupApplyList.stream().map(CaseWindupApply:: getId).collect(Collectors.toList())); + idList.addAll(caseAssistApplyList.stream().map(CaseAssistApply:: getId).collect(Collectors.toList())); + ids = idList.stream().map(String::valueOf).collect(Collectors.joining("','")); List<FileIdTypeInfoBaseDTO> fileIdTypeInfoBaseDTOList = new ArrayList<>(); if(StringUtils.isNotBlank(ids)){ Map terms = new HashMap(); terms.put("mainId", caseId); - terms.put("ownerIds", "," + ids + ","); + terms.put("ownerIds", "'" + ids + "'"); fileIdTypeInfoBaseDTOList = sysClient.listIdTypeInfoByOwnerIdList(terms); } @@ -2601,4 +2626,30 @@ } } + /** + * 按条件查询 + * @param terms 条件 + * @return List + */ + public List<SignTaskDTO> listIdByTerms(Map<String, Object> terms){ + return mapper.listIdByTerms(terms); + } + + /** + * web端-工作台-已办事项 + * @param page 分页对象 + * @param terms 条件 + * @return Page + */ + public Page<FrontPageListYBDTO> pageMyTaskYb(PageRequest page, Map<String, Object> terms){ + try { + long total = mapper.countMyTaskYb(terms); + List<FrontPageListYBDTO> frontPageListYBDTOList = mapper.pageMyTaskYb(page, terms); + return new PageImpl<FrontPageListYBDTO>(frontPageListYBDTOList, page, total); + }catch (Exception e) { + log.error("[CaseTaskService.pageMyTaskYb]调用失败,异常信息:" + e, e); + throw new ServiceException("CaseTaskService.pageMyTaskYb", e); + } + } + } -- Gitblit v1.8.0