From fca638bd85eb9e5c04a766e7d5c3f469fe2388ca Mon Sep 17 00:00:00 2001 From: zhouxiantao <1026371446@qq.com> Date: Fri, 20 Sep 2024 17:30:15 +0800 Subject: [PATCH] 态势分析 --- dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java | 676 +++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 476 insertions(+), 200 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 c399f44..96aab01 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 @@ -34,11 +34,13 @@ import cn.huge.module.flow.service.FlowInfoService; import cn.huge.module.mediate.constant.*; import cn.huge.module.sys.constant.SyTimeEnum; +import cn.huge.module.sys.dto.FileIdTypeInfoBaseDTO; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.google.common.collect.Maps; import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -93,6 +95,8 @@ private CaseReturnService caseReturnService; @Autowired private CaseEvaluateService caseEvaluateService; + @Autowired + private CaseAssistInfoService caseAssistInfoService; @Autowired private CaseWindupApplyMapper caseWindupApplyMapper; @@ -342,13 +346,24 @@ tabList.add(htsh); } if (FlowNodeEnum.FLOW_NODE_BLFK.getIndex().equals(caseTask.getNodeId())) { - tabList.add(sxxq); - tabList.add(sxbl); -// tabList.add(sqjl); + if (CaseTaskConsts.CASE_TASK_TYPE_1 == caseTask.getCaseTaskType()) { + tabList.add(sxxq); + tabList.add(sxbl); + tabList.add(lcdb); +// tabList.add(sqjl); - buttonList.add(tjbljl); - buttonList.add(lhczsq); - buttonList.add(jasq); + buttonList.add(tjbljl); + buttonList.add(lhczsq); + buttonList.add(jasq); + buttonList.add(db); + }else { + tabList.add(sxxq); + tabList.add(sxbl); + tabList.add(lcdb); +// tabList.add(sqjl); + + buttonList.add(tjbljl); + } } if (FlowNodeEnum.FLOW_NODE_JASH.getIndex().equals(caseTask.getNodeId())) { tabList.add(sxxq); @@ -365,6 +380,19 @@ 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); } }else { tabList.add(sxxq); @@ -413,51 +441,22 @@ for (CaseTask caseTask: handleCaseTaskList){ // 已结束节点 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())){ - if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus()){ + if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.TASK_TYPE_1 == caseTask.getTaskType()){ WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); - slWebCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); - slWebCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); - slWebCaseFlowDTO.setHandleTime(caseTask.getHandleTime()); + slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); + slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName()); + slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime()); slWebCaseFlowDTO.setHandleNotes("已签收"); slWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); 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_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(); @@ -467,6 +466,27 @@ webCaseFlowDTO.setStatus(caseTask.getStatus()); webCaseFlowDTO.setHandleNotes(caseTask.getHandleIllust()); webCaseFlowDTO.setTaskType(caseTask.getTaskType()); + // 回退申请节点 + if(CaseTaskConsts.TASK_TYPE_2 == caseTask.getTaskType()){ + webCaseFlowDTO.setNodeShowName("事件回退"); + CaseReturn caseReturn = caseReturnService.getNewByCaseId(caseId, caseTask.getCaseTaskType()); + if (StringUtils.isNotEmpty(caseReturn.getReturnContent())) { + webCaseFlowDTO.setHandleNotes("回退理由:" + caseReturn.getReturnContent()); + }else { + webCaseFlowDTO.setHandleNotes("回退理由:-"); + + } + } + // 上报申请节点 + if(CaseTaskConsts.TASK_TYPE_3 == caseTask.getTaskType()){ + webCaseFlowDTO.setNodeShowName("事件上报"); + CaseAppear caseAppear = caseAppearService.getNewByCaseId(caseId); + if (StringUtils.isNotEmpty(caseAppear.getAppearContent())) { + webCaseFlowDTO.setHandleNotes("上报理由:" + caseAppear.getAppearContent()); + }else { + webCaseFlowDTO.setHandleNotes("上报意见:-" ); + } + } // 当事人评价节点,特殊处理 if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); @@ -486,11 +506,13 @@ 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()) { + }else{ // 处理通过 webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex()); webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes()); } + // 临时加上 + webCaseFlowDTO.setHandleNotes("审核结果:"+webCaseFlowDTO.getAuditResultName()); } // 结案申请,需要展示化解结果 if (FlowNodeEnum.FLOW_NODE_JASQ.getIndex().equals(caseTask.getNodeId())){ @@ -498,41 +520,186 @@ if (ObjectUtils.isNotEmpty(caseInfoUnfold)){ webCaseFlowDTO.setMediResult(caseInfoUnfold.getMediResult()); webCaseFlowDTO.setMediResultName(caseInfoUnfold.getMediResultName()); + // 临时加上 + webCaseFlowDTO.setHandleNotes("化解结果:"+webCaseFlowDTO.getMediResultName()); } } handleCaseFlowList.add(webCaseFlowDTO); }else { // 进行中的节点 + // 待受理并已签收的正常任务节点,需要加多一个签收节点 + 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())){ + if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.TASK_TYPE_1 == caseTask.getTaskType()){ + WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); + slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); + slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); + slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName()); + slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime()); + slWebCaseFlowDTO.setHandleNotes("已签收"); + slWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); + slWebCaseFlowDTO.setStatus(CaseTaskConsts.TASK_STATUS_2); + handleCaseFlowList.add(slWebCaseFlowDTO); + } + } + // 正常节点 WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO(); + webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); + webCaseFlowDTO.setStatus(caseTask.getStatus()); // 当事人评价节点,特殊处理 if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ - webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); webCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); }else{ - webCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); + webCaseFlowDTO.setProcessName(caseTask.getCandeUnitName()); } - webCaseFlowDTO.setStatus(caseTask.getStatus()); handleCaseFlowList.add(webCaseFlowDTO); } } result.put("handleCaseFlowList", handleCaseFlowList); // 查询配合组织流程 - 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){ - 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); + List<CaseAssistInfo> caseAssistInfoList = caseAssistInfoService.listByCaseId(caseId); + if (CollectionUtils.isNotEmpty(caseAssistInfoList)){ + LinkedList<WebAssistCaseFlowDTO> assistCaseFlowList = new LinkedList<>(); + for (CaseAssistInfo caseAssistInfo: caseAssistInfoList){ + WebAssistCaseFlowDTO webAssistCaseFlowDTO = new WebAssistCaseFlowDTO(); + webAssistCaseFlowDTO.setUnitId(caseAssistInfo.getAssistUnitId()); + if (CaseTaskConsts.ASSIST_STATUS_0 == caseAssistInfo.getAssistStatus()) { + webAssistCaseFlowDTO.setUnitName(caseAssistInfo.getAssistUnitName()); + }else { + webAssistCaseFlowDTO.setUnitName(caseAssistInfo.getAssistUnitName()+"(已回退)"); + } + LinkedList<WebCaseFlowDTO> caseFlowList = new LinkedList<>(); + caseTaskQueryWrapper.clear(); + caseTaskQueryWrapper.eq("case_id", caseId).eq("cande_unit_id", caseAssistInfo.getAssistUnitId()) + .eq("case_task_type", CaseTaskConsts.CASE_TASK_TYPE_2).orderByAsc("id"); + List<CaseTask> assistCaseTaskList = mapper.selectList(caseTaskQueryWrapper); + for (CaseTask caseTask: assistCaseTaskList){ + // 已结束节点 + 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())){ + if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.TASK_TYPE_1 == caseTask.getTaskType()){ + WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); + slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); + slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); + slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName()); + slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime()); + slWebCaseFlowDTO.setHandleNotes("已签收"); + slWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); + slWebCaseFlowDTO.setStatus(caseTask.getStatus()); + caseFlowList.add(slWebCaseFlowDTO); + } + } + // 普通节点 + WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO(); + webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); + webCaseFlowDTO.setHandleUserName(caseTask.getHandleUserName()); + webCaseFlowDTO.setHandleTime(caseTask.getHandleTime()); + webCaseFlowDTO.setStatus(caseTask.getStatus()); + webCaseFlowDTO.setHandleNotes(caseTask.getHandleIllust()); + webCaseFlowDTO.setTaskType(caseTask.getTaskType()); + // 回退申请节点 + if(CaseTaskConsts.TASK_TYPE_2 == caseTask.getTaskType()){ + webCaseFlowDTO.setNodeShowName("事件回退"); + CaseReturn caseReturn = caseReturnService.getNewByCaseId(caseId, caseTask.getCaseTaskType()); + if (StringUtils.isNotEmpty(caseReturn.getReturnContent())) { + webCaseFlowDTO.setHandleNotes("回退理由:" + caseReturn.getReturnContent()); + }else { + webCaseFlowDTO.setHandleNotes("回退理由:-"); + + } + } + // 上报申请节点 + if(CaseTaskConsts.TASK_TYPE_3 == caseTask.getTaskType()){ + webCaseFlowDTO.setNodeShowName("事件上报"); + CaseAppear caseAppear = caseAppearService.getNewByCaseId(caseId); + if (StringUtils.isNotEmpty(caseAppear.getAppearContent())) { + webCaseFlowDTO.setHandleNotes("上报理由:" + caseAppear.getAppearContent()); + }else { + webCaseFlowDTO.setHandleNotes("上报意见:-" ); + } + } + // 当事人评价节点,特殊处理 + if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ + webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); + webCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); + }else{ + webCaseFlowDTO.setHandleUnitName(caseTask.getHandleUnitName()); + } + // 审核节点要判断通过/不通过 + 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{ + // 处理通过 + webCaseFlowDTO.setAuditResult(AuditBaseConstsEnum.AUDIT_RESULT_1.getIndex()); + webCaseFlowDTO.setAuditResultName(AuditBaseConstsEnum.AUDIT_RESULT_1.getDes()); + } + // 临时加上 + webCaseFlowDTO.setHandleNotes("审核结果:"+webCaseFlowDTO.getAuditResultName()); + } + // 结案申请,需要展示化解结果 + 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()); + // 临时加上 + webCaseFlowDTO.setHandleNotes("化解结果:"+webCaseFlowDTO.getMediResultName()); + } + } + caseFlowList.add(webCaseFlowDTO); + }else { + // 进行中的节点 + // 待受理并已签收的正常任务节点,需要加多一个签收节点 + 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())){ + if (CaseTaskConsts.SIGN_STATUS_2 == caseTask.getSignStatus() && CaseTaskConsts.TASK_TYPE_1 == caseTask.getTaskType()){ + WebCaseFlowDTO slWebCaseFlowDTO = new WebCaseFlowDTO(); + slWebCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); + slWebCaseFlowDTO.setHandleUnitName(caseTask.getCandeUnitName()); + slWebCaseFlowDTO.setHandleUserName(caseTask.getSignUserName()); + slWebCaseFlowDTO.setHandleTime(caseTask.getSignTime()); + slWebCaseFlowDTO.setHandleNotes("已签收"); + slWebCaseFlowDTO.setTaskType(caseTask.getTaskType()); + slWebCaseFlowDTO.setStatus(CaseTaskConsts.TASK_STATUS_2); + caseFlowList.add(slWebCaseFlowDTO); + } + } + // 正常节点 + WebCaseFlowDTO webCaseFlowDTO = new WebCaseFlowDTO(); + webCaseFlowDTO.setNodeShowName(caseTask.getNodeShowName()); + webCaseFlowDTO.setStatus(caseTask.getStatus()); + // 当事人评价节点,特殊处理 + if (caseTask.getNodeId().equals(FlowNodeEnum.FLOW_NODE_DSRPJ.getIndex())){ + webCaseFlowDTO.setProcessName(caseTask.getNodeShowName()); + }else{ + webCaseFlowDTO.setProcessName(caseTask.getCandeUnitName()); + } + caseFlowList.add(webCaseFlowDTO); + } + } + webAssistCaseFlowDTO.setCaseFlowList(caseFlowList); + assistCaseFlowList.add(webAssistCaseFlowDTO); + } + result.put("assistCaseFlowList", assistCaseFlowList); } - result.put("assistCaseFlowList", assistCaseFlowList); return result; }catch (Exception e){ log.error("[CaseTaskService.webGetTabButton]调用失败,异常信息:"+e, e); @@ -647,6 +814,7 @@ if(frontPageListDTO.getCaseId().equals(unfold.getId())){ frontPageListDTO.setOrganizingUnit(unfold.getMediateUnitName()); frontPageListDTO.setCooperatingUnit(unfold.getAssistUnitName()); + frontPageListDTO.setManager(unfold.getMediator()); } } } @@ -724,6 +892,26 @@ /** * 首页-待审核分页查询 + * @param page 分页对象 + * @param terms 条件 + * @return Page + */ + public Page<FrontPageListDTO> pageMyTaskShWSQD(PageRequest page, int type, 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); + }catch (Exception e) { + log.error("[CaseTaskService.pageMyTaskQs]调用失败,异常信息:" + e, e); + throw new ServiceException("CaseTaskService.pageMyTaskQs", e); + } + } + + /** + * 首页-待审核分页查询 * @param caseId 事项编号 * @return Page */ @@ -745,12 +933,31 @@ caseAssistApplyQueryWrapper.eq("case_id", caseId); List<CaseAssistApply>caseAssistApplyList = caseAssistApplyService.list(caseAssistApplyQueryWrapper); List<SortUtilDTO> sortUtilDTOList = 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(",")); + List<FileIdTypeInfoBaseDTO> fileIdTypeInfoBaseDTOList = new ArrayList<>(); + if(StringUtils.isNotBlank(ids)){ + Map terms = new HashMap(); + terms.put("mainId", caseId); + terms.put("ownerIds", "," + ids + ","); + fileIdTypeInfoBaseDTOList = sysClient.listIdTypeInfoByOwnerIdList(terms); + } + for(CaseReturn caseReturn: caseReturnList){ SortUtilDTO sortUtilDTO = new SortUtilDTO(); sortUtilDTO.setObject(caseReturn); sortUtilDTO.setDate(caseReturn.getCreateTime()); sortUtilDTO.setType("回退申请"); sortUtilDTOList.add(sortUtilDTO); + for(FileIdTypeInfoBaseDTO fileIdTypeInfoBaseDTO: fileIdTypeInfoBaseDTOList){ + if(caseReturn.getId().equals(fileIdTypeInfoBaseDTO.getOwnerId())){ + sortUtilDTO.setFileList(fileIdTypeInfoBaseDTO.getFileList()); + } + } } for(CaseAppear caseAppear: caseAppearList){ SortUtilDTO sortUtilDTO = new SortUtilDTO(); @@ -758,6 +965,11 @@ sortUtilDTO.setDate(caseAppear.getCreateTime()); sortUtilDTO.setType("上报申请"); sortUtilDTOList.add(sortUtilDTO); + for(FileIdTypeInfoBaseDTO fileIdTypeInfoBaseDTO: fileIdTypeInfoBaseDTOList){ + if(caseAppear.getId().equals(fileIdTypeInfoBaseDTO.getOwnerId())){ + sortUtilDTO.setFileList(fileIdTypeInfoBaseDTO.getFileList()); + } + } } for(CaseWindupApply caseWindupApply: caseWindupApplyList){ SortUtilDTO sortUtilDTO = new SortUtilDTO(); @@ -765,6 +977,11 @@ sortUtilDTO.setDate(caseWindupApply.getCreateTime()); sortUtilDTO.setType("结案申请"); sortUtilDTOList.add(sortUtilDTO); + for(FileIdTypeInfoBaseDTO fileIdTypeInfoBaseDTO: fileIdTypeInfoBaseDTOList){ + if(caseWindupApply.getId().equals(fileIdTypeInfoBaseDTO.getOwnerId())){ + sortUtilDTO.setFileList(fileIdTypeInfoBaseDTO.getFileList()); + } + } } for(CaseAssistApply caseAssistApply: caseAssistApplyList){ SortUtilDTO sortUtilDTO = new SortUtilDTO(); @@ -772,6 +989,11 @@ sortUtilDTO.setDate(caseAssistApply.getCreateTime()); sortUtilDTO.setType("联合处置申请"); sortUtilDTOList.add(sortUtilDTO); + for(FileIdTypeInfoBaseDTO fileIdTypeInfoBaseDTO: fileIdTypeInfoBaseDTOList){ + if(caseAssistApply.getId().equals(fileIdTypeInfoBaseDTO.getOwnerId())){ + sortUtilDTO.setFileList(fileIdTypeInfoBaseDTO.getFileList()); + } + } } sortUtilDTOList.sort(Comparator.comparing(SortUtilDTO::getDate)); List<Object> resultList = new ArrayList<>(); @@ -780,8 +1002,8 @@ } return resultList; }catch (Exception e) { - log.error("[CaseTaskService.pageMyTaskQs]调用失败,异常信息:" + e, e); - throw new ServiceException("CaseTaskService.pageMyTaskQs", e); + log.error("[CaseTaskService.listMyApplyRecord]调用失败,异常信息:" + e, e); + throw new ServiceException("CaseTaskService.listMyApplyRecord", e); } } @@ -935,36 +1157,36 @@ FlowNode secondFlowNode = flowInfoService.completeTask(dfpCaseTask.getFlowableId(), dfpCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_jb_zszz, "系统派单"); // 进入第2个节点-镇街级组织待受理 - CaseTask sdlCaseTask = new CaseTask(); - sdlCaseTask.setId(utilsClient.getNewTimeId()); - sdlCaseTask.setCaseId(caseInfo.getId()); - sdlCaseTask.setFlowableId(secondFlowNode.getFlowableId()); - sdlCaseTask.setProcessInstanceId(secondFlowNode.getProcessInstanceId()); - sdlCaseTask.setProcessTaskId(secondFlowNode.getProcessTaskId()); - sdlCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); - sdlCaseTask.setNodeType(secondFlowNode.getNodeType()); - sdlCaseTask.setNodeId(secondFlowNode.getNodeId()); - sdlCaseTask.setNodeName(secondFlowNode.getNodeName()); - sdlCaseTask.setFlowId(secondFlowNode.getFlowId()); - sdlCaseTask.setNodeShowName(secondFlowNode.getNodeShowName()); - sdlCaseTask.setCaseTaskType(dfpCaseTask.getCaseTaskType()); + CaseTask dslCaseTask = new CaseTask(); + dslCaseTask.setId(utilsClient.getNewTimeId()); + dslCaseTask.setCaseId(caseInfo.getId()); + dslCaseTask.setFlowableId(secondFlowNode.getFlowableId()); + dslCaseTask.setProcessInstanceId(secondFlowNode.getProcessInstanceId()); + dslCaseTask.setProcessTaskId(secondFlowNode.getProcessTaskId()); + dslCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); + dslCaseTask.setNodeType(secondFlowNode.getNodeType()); + dslCaseTask.setNodeId(secondFlowNode.getNodeId()); + dslCaseTask.setNodeName(secondFlowNode.getNodeName()); + dslCaseTask.setFlowId(secondFlowNode.getFlowId()); + dslCaseTask.setNodeShowName(secondFlowNode.getNodeShowName()); + dslCaseTask.setCaseTaskType(dfpCaseTask.getCaseTaskType()); // 通过调度的,任务候选执行者类型是上一步骤选择 - sdlCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - sdlCaseTask.setCandeUnitId(caseDispBaseDTO.getTargetId()); - sdlCaseTask.setCandeUnitName(caseDispBaseDTO.getTargetName()); + dslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + dslCaseTask.setCandeUnitId(caseDispBaseDTO.getTargetId()); + dslCaseTask.setCandeUnitName(caseDispBaseDTO.getTargetName()); // 系统调度给调解组织,需要签收 - sdlCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); - sdlCaseTask.setSignExpireTime(sysClient.getExpireTime(caseInfo.getCreateTime(), SyTimeEnum.SY_TIME_2.getIndex())); + dslCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); + dslCaseTask.setSignExpireTime(sysClient.getExpireTime(caseInfo.getCreateTime(), SyTimeEnum.SY_TIME_2.getIndex())); // 任务处理时限 if (firstFlowNode.getExpire() != 0) { - sdlCaseTask.setExpireTime(DateUtils.addDay(caseInfo.getCreateTime(), firstFlowNode.getExpire())); + dslCaseTask.setExpireTime(DateUtils.addDay(caseInfo.getCreateTime(), firstFlowNode.getExpire())); } - sdlCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); - sdlCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); - sdlCaseTask.setCustId(caseInfo.getCustId()); - sdlCaseTask.setCreateTime(caseInfo.getCreateTime()); - sdlCaseTask.setUpdateTime(caseInfo.getUpdateTime()); - mapper.insert(sdlCaseTask); + dslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + dslCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + dslCaseTask.setCustId(caseInfo.getCustId()); + dslCaseTask.setCreateTime(caseInfo.getCreateTime()); + dslCaseTask.setUpdateTime(caseInfo.getUpdateTime()); + mapper.insert(dslCaseTask); // 更新纠纷信息 CaseInfo caseInfoPO = new CaseInfo(); caseInfoPO.setId(caseInfo.getId()); @@ -989,7 +1211,7 @@ * @param caseInfo * @param loginUser */ - public void webStartFlowZXSL(CaseInfo caseInfo, CtUserDTO loginUser){ + public String webStartFlowZXSL(CaseInfo caseInfo, CtUserDTO loginUser){ try{ // 启动自行受理工作流,进入待受理节点 FlowNode dslFlowNode = flowInfoService.startFlow(FlowableConsts.FLOWABLE_ID_ZXSL, caseInfo.getId()); @@ -1080,6 +1302,7 @@ caseInfoUnfoldPO.setMediateUnitId(blfkCaseTask.getCandeUnitId()); caseInfoUnfoldPO.setMediateUnitName(blfkCaseTask.getCandeUnitName()); caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); + return blfkCaseTask.getId(); }catch (Exception e){ log.error("[CaseTaskService.webStartFlowZXSL]调用失败,异常信息:"+e, e); throw new ServiceException("CaseTaskService.webStartFlowZXSL", e); @@ -1189,57 +1412,88 @@ String assistUnitName = assignTaskDTO.getAssistUnitList().stream().map(AssignAssistUnitDTO::getUitId). collect(Collectors.joining(BaseConsts.COMMA)); for (AssignAssistUnitDTO assignAssistUnitDTO: assignTaskDTO.getAssistUnitList()){ - // 创建交办配合组织任务 - CaseTask jbAssistCaseTask = new CaseTask(); - jbAssistCaseTask.setId(utilsClient.getNewTimeId()); - jbAssistCaseTask.setCaseId(dfpCaseTask.getCaseId()); - jbAssistCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); - jbAssistCaseTask.setNodeName("交办配合部门"); - jbAssistCaseTask.setNodeShowName("交办配合部门"); - jbAssistCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_2); - // 配合任务,任务候选执行者类型是上一步骤选择 - jbAssistCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - jbAssistCaseTask.setCandeUnitId(loginUser.getUnitId()); - jbAssistCaseTask.setCandeUnitName(loginUser.getUnitName()); - jbAssistCaseTask.setHandleUnitId(loginUser.getUnitId()); - jbAssistCaseTask.setHandleUnitName(loginUser.getUnitId()); - jbAssistCaseTask.setHandleUserId(loginUser.getId()); - jbAssistCaseTask.setHandleUserName(loginUser.getTrueName()); - jbAssistCaseTask.setHandleContent(assignTaskDTO.getAssignContent()); - jbAssistCaseTask.setHandleIllust("派单至:"+assignTaskDTO.getHandleUnitName()); - jbAssistCaseTask.setHandleTime(nowDate); + // 启动联合处置工作流 + FlowNode lhczdfpFlowNode = flowInfoService.startFlow(FlowableConsts.FLOWABLE_ID_LHCZ, dfpCaseTask.getCaseId()); + // 新建并完成配合部门待分派任务 + CaseTask lhczdfpCaseTask = new CaseTask(); + lhczdfpCaseTask.setId(utilsClient.getNewTimeId()); + lhczdfpCaseTask.setCaseId(dfpCaseTask.getCaseId()); + lhczdfpCaseTask.setFlowableId(lhczdfpFlowNode.getFlowableId()); + lhczdfpCaseTask.setProcessInstanceId(lhczdfpFlowNode.getProcessInstanceId()); + lhczdfpCaseTask.setProcessTaskId(lhczdfpFlowNode.getProcessTaskId()); + lhczdfpCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); + lhczdfpCaseTask.setNodeType(lhczdfpFlowNode.getNodeType()); + lhczdfpCaseTask.setNodeId(lhczdfpFlowNode.getNodeId()); + lhczdfpCaseTask.setNodeName(lhczdfpFlowNode.getNodeName()); + lhczdfpCaseTask.setFlowId(lhczdfpFlowNode.getFlowId()); + lhczdfpCaseTask.setNodeShowName(lhczdfpFlowNode.getNodeShowName()); + lhczdfpCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_2); + // 通过调度的,任务候选执行者类型是上一步骤选择 + lhczdfpCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + lhczdfpCaseTask.setCandeUnitId(assignAssistUnitDTO.getUitId()); + lhczdfpCaseTask.setCandeUnitName(assignAssistUnitDTO.getUitName()); // 不需要签收 - jbAssistCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); - jbAssistCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); - jbAssistCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); - jbAssistCaseTask.setCustId(dfpCaseTask.getCustId()); - jbAssistCaseTask.setCreateTime(nowDate); - jbAssistCaseTask.setUpdateTime(nowDate); - mapper.insert(jbAssistCaseTask); - // 创建配合组织任务 - CaseTask assistCaseTask = new CaseTask(); - assistCaseTask.setId(utilsClient.getNewTimeId()); - assistCaseTask.setCaseId(dfpCaseTask.getCaseId()); - assistCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); - assistCaseTask.setNodeId(FlowNodeEnum.FLOW_NODE_BLFK.getIndex()); - assistCaseTask.setNodeName(FlowNodeEnum.FLOW_NODE_BLFK.getDes()); - assistCaseTask.setNodeShowName(FlowNodeEnum.FLOW_NODE_BLFK.getIndex()); - assistCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_2); - // 配合任务,任务候选执行者类型是上一步骤选择 - assistCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - assistCaseTask.setCandeUnitId(assignAssistUnitDTO.getUitId()); - assistCaseTask.setCandeUnitName(assignAssistUnitDTO.getUitName()); - assistCaseTask.setHandleUnitId(assignAssistUnitDTO.getUitId()); - assistCaseTask.setHandleUnitName(assignAssistUnitDTO.getUitName()); - // 分派的任务,需要签收 - assistCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); - assistCaseTask.setSignExpireTime(sysClient.getExpireTime(nowDate, SyTimeEnum.SY_TIME_2.getIndex())); - assistCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); - assistCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); - assistCaseTask.setCustId(dfpCaseTask.getCustId()); - assistCaseTask.setCreateTime(nowDate); - assistCaseTask.setUpdateTime(nowDate); - mapper.insert(assistCaseTask); + lhczdfpCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + lhczdfpCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_2); + lhczdfpCaseTask.setHandleUnitId(loginUser.getUnitId()); + lhczdfpCaseTask.setHandleUnitName(loginUser.getUnitName()); + lhczdfpCaseTask.setHandleUserId(loginUser.getId()); + lhczdfpCaseTask.setHandleUserName(loginUser.getTrueName()); + lhczdfpCaseTask.setHandleContent(assignTaskDTO.getAssignContent()); + lhczdfpCaseTask.setHandleIllust("交办至:"+assistUnitName); + // 任务处理时限 + if (lhczdfpFlowNode.getExpire() != 0) { + lhczdfpCaseTask.setExpireTime(DateUtils.addDay(nowDate, lhczdfpFlowNode.getExpire())); + } + lhczdfpCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + lhczdfpCaseTask.setCustId(dfpCaseTask.getCustId()); + lhczdfpCaseTask.setCreateTime(nowDate); + lhczdfpCaseTask.setUpdateTime(nowDate); + mapper.insert(lhczdfpCaseTask); + // 完成待分派任务 + FlowNode lhczdslFlowNode = flowInfoService.completeTask(lhczdfpCaseTask.getFlowableId(), lhczdfpCaseTask.getProcessTaskId(), + FlowableConsts.OPERATION_forward, loginUser.getId()); + // 创建配合部门待受理任务 + CaseTask lhczdslCaseTask = new CaseTask(); + lhczdslCaseTask.setId(utilsClient.getNewTimeId()); + lhczdslCaseTask.setCaseId(lhczdfpCaseTask.getCaseId()); + lhczdslCaseTask.setFlowableId(lhczdslFlowNode.getFlowableId()); + lhczdslCaseTask.setProcessInstanceId(lhczdslFlowNode.getProcessInstanceId()); + lhczdslCaseTask.setProcessTaskId(lhczdslFlowNode.getProcessTaskId()); + lhczdslCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); + lhczdslCaseTask.setNodeType(lhczdslFlowNode.getNodeType()); + lhczdslCaseTask.setNodeId(lhczdslFlowNode.getNodeId()); + lhczdslCaseTask.setNodeName(lhczdslFlowNode.getNodeName()); + lhczdslCaseTask.setFlowId(lhczdslFlowNode.getFlowId()); + lhczdslCaseTask.setNodeShowName(lhczdslFlowNode.getNodeShowName()); + lhczdslCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_2); + // 通过调度的,任务候选执行者类型是上一步骤选择 + lhczdslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + lhczdslCaseTask.setCandeUnitId(assignAssistUnitDTO.getUitId()); + lhczdslCaseTask.setCandeUnitName(assignAssistUnitDTO.getUitName()); + // 需要签收 + lhczdslCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); + lhczdslCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + // 任务处理时限 + if (lhczdslFlowNode.getExpire() != 0) { + lhczdslCaseTask.setExpireTime(DateUtils.addDay(nowDate, lhczdslFlowNode.getExpire())); + } + lhczdslCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + lhczdslCaseTask.setCustId(lhczdfpCaseTask.getCustId()); + lhczdslCaseTask.setCreateTime(nowDate); + lhczdslCaseTask.setUpdateTime(nowDate); + mapper.insert(lhczdslCaseTask); + // 新增联合处置信息 + CaseAssistInfo caseAssistInfoPO = new CaseAssistInfo(); + caseAssistInfoPO.setId(utilsClient.getNewTimeId()); + caseAssistInfoPO.setCaseId(dslCaseTask.getCaseId()); + caseAssistInfoPO.setAssistUnitId(assignAssistUnitDTO.getUitId()); + caseAssistInfoPO.setAssistUnitName(assignAssistUnitDTO.getUitName()); + caseAssistInfoPO.setAssistStatus(CaseTaskConsts.ASSIST_STATUS_0); + caseAssistInfoPO.setCustId(dslCaseTask.getCustId()); + caseAssistInfoPO.setCreateTime(nowDate); + caseAssistInfoPO.setUpdateTime(nowDate); + caseAssistInfoService.save(caseAssistInfoPO); } // 更新纠纷扩展信息 CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); @@ -1264,8 +1518,6 @@ Date nowDate = DateUtils.getNowDate(); // 获取当前登录用户 CtUserDTO loginUser = custClient.clientGetUserAll(userId); - List<String> taskIdList = new ArrayList<>(); - List<String> caseIdList = new ArrayList<>(); for (SignTaskDTO signTaskDTO: signTaskDTOList){ CaseTask qsCaseTask = mapper.selectById(signTaskDTO.getCaseTaskId()); // 更新纠纷任务信息 @@ -1304,7 +1556,7 @@ * @param acceptTaskDTO 受理任务表单 * @param userId 当前登录用户 */ - public void webAccept(AcceptTaskDTO acceptTaskDTO, String userId){ + public String webAccept(AcceptTaskDTO acceptTaskDTO, String userId){ try{ Date nowDate = DateUtils.getNowDate(); // 获取当前登录用户 @@ -1326,7 +1578,7 @@ mapper.updateCaseTask(dslCaseTaskPO); // 完成当前待受理工作流任务 FlowNode newFlowNode = flowInfoService.completeTask(dslCaseTask.getFlowableId(), dslCaseTask.getProcessTaskId(), - FlowableConsts.OPERATION_sl, userId); + FlowableConsts.OPERATION_forward, userId); // 新建办理反馈任务 CaseTask blfkCaseTask = new CaseTask(); blfkCaseTask.setId(utilsClient.getNewTimeId()); @@ -1376,7 +1628,17 @@ caseInfoUnfoldPO.setMediateUnitId(blfkCaseTask.getCandeUnitId()); caseInfoUnfoldPO.setMediateUnitName(blfkCaseTask.getCandeUnitName()); caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); + }else { + // 更新配合部门联合处置信息 + QueryWrapper<CaseAssistInfo> caseAssistInfoQueryWrapper = new QueryWrapper<>(); + caseAssistInfoQueryWrapper.eq("case_id", blfkCaseTask.getCaseId()) + .eq("assist_unit_id", loginUser.getUnitId()).eq("assist_status", CaseTaskConsts.ASSIST_STATUS_0); + CaseAssistInfo caseAssistInfoPO = caseAssistInfoService.getOne(caseAssistInfoQueryWrapper); + caseAssistInfoPO.setCaseTaskId(blfkCaseTask.getId()); + caseAssistInfoPO.setAcceptTime(nowDate); + caseAssistInfoService.updateCaseAssistInfo(caseAssistInfoPO); } + return blfkCaseTask.getId(); }catch (Exception e){ log.error("[CaseTaskService.webAccept]调用失败,异常信息:"+e, e); throw new ServiceException("CaseTaskService.webAccept", e); @@ -1848,6 +2110,7 @@ // 完成当前待受理任务 CaseTask dslCaseTaskPO = new CaseTask(); dslCaseTaskPO.setId(caseReturn.getCaseTaskId()); + dslCaseTaskPO.setTaskType(CaseTaskConsts.TASK_TYPE_2); dslCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); dslCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); dslCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); @@ -1874,12 +2137,12 @@ htshCaseTask.setNodeName(htshFlowNode.getNodeName()); htshCaseTask.setFlowId(htshFlowNode.getFlowId()); htshCaseTask.setNodeShowName(htshFlowNode.getNodeShowName()); - htshCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); + htshCaseTask.setCaseTaskType(dslCaseTask.getCaseTaskType()); // 受理任务,任务候选执行者类型是上一步骤选择 htshCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - CtUnitDTO ctUnitDTO = custClient.getParentZzzxUnit(loginUser.getUnitId()); - htshCaseTask.setCandeUnitId(ctUnitDTO.getId()); - htshCaseTask.setCandeUnitName(ctUnitDTO.getUnitName()); +// CtUnitDTO ctUnitDTO = custClient.getParentZzzxUnit(loginUser.getUnitId()); + htshCaseTask.setCandeUnitId(loginUser.getUnitId()); + htshCaseTask.setCandeUnitName(loginUser.getUnitName()); // 受理后的任务,不需要签收 htshCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); // 任务处理时限 @@ -1894,6 +2157,7 @@ mapper.insert(htshCaseTask); // 新增回退申请信息 caseReturn.setCaseTaskId(htshCaseTask.getId()); + caseReturn.setCaseTaskType(htshCaseTask.getCaseTaskType()); caseReturnService.save(caseReturn); }catch (Exception e){ log.error("[CaseTaskService.webAppearApply]调用失败,异常信息:"+e, e); @@ -1935,65 +2199,76 @@ htshCaseTaskPO.setHandleTime(nowDate); htshCaseTaskPO.setUpdateTime(nowDate); mapper.updateCaseTask(htshCaseTaskPO); - // 完成当前回退审核任务,走待分派任务 + // 完成当前回退审核任务,承办部门走待分派任务,配合部门结束流程 FlowNode dfpFlowNode = flowInfoService.completeTask(htshCaseTask.getFlowableId(), htshCaseTask.getProcessTaskId(), FlowableConsts.OPERATION_htsh_ty, userId); - // 新建待分派任务 - CaseTask dfphCaseTask = new CaseTask(); - dfphCaseTask.setId(utilsClient.getNewTimeId()); - dfphCaseTask.setCaseId(htshCaseTask.getCaseId()); - dfphCaseTask.setFlowableId(dfpFlowNode.getFlowableId()); - dfphCaseTask.setProcessInstanceId(dfpFlowNode.getProcessInstanceId()); - dfphCaseTask.setProcessTaskId(dfpFlowNode.getProcessTaskId()); - dfphCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); - dfphCaseTask.setNodeType(dfpFlowNode.getNodeType()); - dfphCaseTask.setNodeId(dfpFlowNode.getNodeId()); - dfphCaseTask.setNodeName(dfpFlowNode.getNodeName()); - dfphCaseTask.setFlowId(dfpFlowNode.getFlowId()); - dfphCaseTask.setNodeShowName(dfpFlowNode.getNodeShowName()); - dfphCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); - // 受理任务,任务候选执行者类型是上一步骤选择 - dfphCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); - dfphCaseTask.setCandeUnitId(loginUser.getUnitId()); - dfphCaseTask.setCandeUnitName(loginUser.getUnitName()); - // 受理后的任务,不需要签收 - dfphCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); - // 任务处理时限 - if (dfpFlowNode.getExpire() != 0) { - dfphCaseTask.setExpireTime(DateUtils.addDay(nowDate, dfpFlowNode.getExpire())); + if (CaseTaskConsts.CASE_TASK_TYPE_1 == htshCaseTask.getCaseTaskType()) { + // 新建待分派任务 + CaseTask dfphCaseTask = new CaseTask(); + dfphCaseTask.setId(utilsClient.getNewTimeId()); + dfphCaseTask.setCaseId(htshCaseTask.getCaseId()); + dfphCaseTask.setFlowableId(dfpFlowNode.getFlowableId()); + dfphCaseTask.setProcessInstanceId(dfpFlowNode.getProcessInstanceId()); + dfphCaseTask.setProcessTaskId(dfpFlowNode.getProcessTaskId()); + dfphCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); + dfphCaseTask.setNodeType(dfpFlowNode.getNodeType()); + dfphCaseTask.setNodeId(dfpFlowNode.getNodeId()); + dfphCaseTask.setNodeName(dfpFlowNode.getNodeName()); + dfphCaseTask.setFlowId(dfpFlowNode.getFlowId()); + dfphCaseTask.setNodeShowName(dfpFlowNode.getNodeShowName()); + dfphCaseTask.setCaseTaskType(htshCaseTask.getCaseTaskType()); + // 受理任务,任务候选执行者类型是上一步骤选择 + dfphCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + dfphCaseTask.setCandeUnitId(loginUser.getUnitId()); + dfphCaseTask.setCandeUnitName(loginUser.getUnitName()); + // 受理后的任务,不需要签收 + dfphCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_0); + // 任务处理时限 + if (dfpFlowNode.getExpire() != 0) { + dfphCaseTask.setExpireTime(DateUtils.addDay(nowDate, dfpFlowNode.getExpire())); + } + dfphCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + dfphCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + dfphCaseTask.setCustId(dfphCaseTask.getCustId()); + dfphCaseTask.setCreateTime(nowDate); + dfphCaseTask.setUpdateTime(nowDate); + mapper.insert(dfphCaseTask); + // 更新纠纷信息 + CaseInfo caseInfoPO = new CaseInfo(); + caseInfoPO.setId(htshCaseTask.getCaseId()); + caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_1.getIndex()); + caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_1.getDes()); + caseInfoPO.setProcess(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getIndex()); + caseInfoPO.setProcessName(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getDes()); + caseInfoPO.setInfoProcess(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getIndex()); + caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); + caseInfoPO.setUpdateTime(nowDate); + caseInfoService.updateCaseInfo(caseInfoPO); + }else { + // 更新联合处置信息 + QueryWrapper<CaseAssistInfo> caseAssistInfoQueryWrapper = new QueryWrapper<>(); + caseAssistInfoQueryWrapper.eq("case_id", htshCaseTask.getCaseId()).eq("assist_unit_id", htshCaseTask.getCandeUnitId()).eq("assist_status", CaseTaskConsts.ASSIST_STATUS_0); + CaseAssistInfo caseAssistInfo = caseAssistInfoService.getOne(caseAssistInfoQueryWrapper); + if (ObjectUtils.isNotEmpty(caseAssistInfo)){ + caseAssistInfo.setAssistStatus(CaseTaskConsts.ASSIST_STATUS_1); + caseAssistInfoService.updateCaseAssistInfo(caseAssistInfo); + } } - dfphCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); - dfphCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); - dfphCaseTask.setCustId(dfphCaseTask.getCustId()); - dfphCaseTask.setCreateTime(nowDate); - dfphCaseTask.setUpdateTime(nowDate); - mapper.insert(dfphCaseTask); - // 更新纠纷信息 - CaseInfo caseInfoPO = new CaseInfo(); - caseInfoPO.setId(htshCaseTask.getCaseId()); - caseInfoPO.setStatus(CaseStatusBaseConstsEnum.CASE_STATUS_1.getIndex()); - caseInfoPO.setStatusName(CaseStatusBaseConstsEnum.CASE_STATUS_1.getDes()); - caseInfoPO.setProcess(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getIndex()); - caseInfoPO.setProcessName(CaseProcessBaseConstsEnum.getByStatus(caseInfoPO.getStatus()).getDes()); - caseInfoPO.setInfoProcess(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getIndex()); - caseInfoPO.setInfoProcessName(CaseInfoProcessBaseConstsEnum.getByProcess(caseInfoPO.getProcess()).getDes()); - caseInfoPO.setUpdateTime(nowDate); - caseInfoService.updateCaseInfo(caseInfoPO); }else { // 审核不通过 // 完成当前回退审核任务 - CaseTask sbshCaseTaskPO = new CaseTask(); - sbshCaseTaskPO.setId(caseReturn.getCaseTaskId()); - sbshCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); - sbshCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); - sbshCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); - sbshCaseTaskPO.setHandleUserId(loginUser.getId()); - sbshCaseTaskPO.setHandleUserName(loginUser.getTrueName()); - sbshCaseTaskPO.setHandleContent(caseReturn.getAuditContent()); - sbshCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_2); - sbshCaseTaskPO.setHandleTime(nowDate); - sbshCaseTaskPO.setUpdateTime(nowDate); - mapper.updateCaseTask(sbshCaseTaskPO); + CaseTask htshCaseTaskPO = new CaseTask(); + htshCaseTaskPO.setId(caseReturn.getCaseTaskId()); + htshCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); + htshCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); + htshCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); + htshCaseTaskPO.setHandleUserId(loginUser.getId()); + htshCaseTaskPO.setHandleUserName(loginUser.getTrueName()); + htshCaseTaskPO.setHandleContent(caseReturn.getAuditContent()); + htshCaseTaskPO.setHandleResult(CaseTaskConsts.HANDLE_RESULT_2); + htshCaseTaskPO.setHandleTime(nowDate); + htshCaseTaskPO.setUpdateTime(nowDate); + mapper.updateCaseTask(htshCaseTaskPO); CaseReturn btyCaseReturn = caseReturnService.getById(caseReturn.getId()); CtUnitDTO returnUnit = custClient.getUnitById(btyCaseReturn.getReturnUnitId()); String operation = FlowableConsts.OPERATION_htsh_bty; @@ -2019,7 +2294,7 @@ dslCaseTask.setNodeName(dslFlowNode.getNodeName()); dslCaseTask.setFlowId(dslFlowNode.getFlowId()); dslCaseTask.setNodeShowName(dslFlowNode.getNodeShowName()); - dslCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_1); + dslCaseTask.setCaseTaskType(htshCaseTask.getCaseTaskType()); // 受理任务,任务候选执行者类型是上一步骤选择 dslCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); dslCaseTask.setCandeUnitId(btyCaseReturn.getReturnUnitId()); @@ -2038,8 +2313,8 @@ mapper.insert(dslCaseTask); } }catch (Exception e){ - log.error("[CaseTaskService.webAppearAudit]调用失败,异常信息:"+e, e); - throw new ServiceException("CaseTaskService.webAppearAudit", e); + log.error("[CaseTaskService.webReturnAudit]调用失败,异常信息:"+e, e); + throw new ServiceException("CaseTaskService.webReturnAudit", e); } } @@ -2069,6 +2344,7 @@ // 完成当前待受理任务 CaseTask dslCaseTaskPO = new CaseTask(); dslCaseTaskPO.setId(caseAppear.getCaseTaskId()); + dslCaseTaskPO.setTaskType(CaseTaskConsts.TASK_TYPE_3); dslCaseTaskPO.setStatus(CaseTaskConsts.TASK_STATUS_2); dslCaseTaskPO.setHandleUnitId(loginUser.getUnitId()); dslCaseTaskPO.setHandleUnitName(loginUser.getUnitName()); -- Gitblit v1.8.0