From 3ce77531a4e13d749d58fea1a13695a80fbb9516 Mon Sep 17 00:00:00 2001 From: liyj <1003249715@qq.com> Date: Sun, 15 Sep 2024 12:19:13 +0800 Subject: [PATCH] 1、自行受理跳转bug修复 2、联合处置流程优化 --- dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseTaskService.java | 136 +++++++++++++++++++------------------------- dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAssistApplyService.java | 12 ++-- dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java | 2 3 files changed, 66 insertions(+), 84 deletions(-) diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAssistApplyService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAssistApplyService.java index d44cb0e..ffa776c 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAssistApplyService.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseAssistApplyService.java @@ -240,13 +240,13 @@ dslCaseTask.setCreateTime(now); dslCaseTask.setUpdateTime(now); caseTaskService.save(dslCaseTask); - // 更新纠纷扩展信息 - CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); - caseInfoUnfoldPO.setId(dslCaseTask.getCaseId()); - caseInfoUnfoldPO.setAssistUnitId(caseAssistApply.getApplyAssistUnitId()); - caseInfoUnfoldPO.setAssistUnitName(caseAssistApply.getApplyAssistUnitName()); - caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); } + // 更新纠纷扩展信息 + CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); + caseInfoUnfoldPO.setId(caseAssistApply.getCaseId()); + caseInfoUnfoldPO.setAssistUnitId(caseAssistApply.getApplyAssistUnitId()); + caseInfoUnfoldPO.setAssistUnitName(caseAssistApply.getApplyAssistUnitName()); + caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); } }catch (Exception e){ log.error("[CaseAssistApplyService.reviewCaseAssistApply]调用失败,异常信息:"+e, e); diff --git a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java index f8ac102..fa3937c 100644 --- a/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java +++ b/dyh-service/dyh-mediate/src/main/java/cn/huge/module/cases/service/CaseInfoService.java @@ -243,7 +243,7 @@ // 判断是否自行受理 if(1 == registerSaveDTO.getIsSelfAccept()){ // 自行受理流程 - caseTaskService.webStartFlowZXSL(caseInfo, loginUser); + return caseTaskService.webStartFlowZXSL(caseInfo, loginUser); }else { // 自动调度流程 caseTaskService.webStartFlowLFDJ(caseInfo); 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 123daa6..0b4cabf 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 @@ -932,36 +932,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()); @@ -986,7 +986,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()); @@ -1077,6 +1077,7 @@ caseInfoUnfoldPO.setMediateUnitId(blfkCaseTask.getCandeUnitId()); caseInfoUnfoldPO.setMediateUnitName(blfkCaseTask.getCandeUnitName()); caseInfoUnfoldService.updateCaseInfoUnfold(caseInfoUnfoldPO); + return dslCaseTask.getId(); }catch (Exception e){ log.error("[CaseTaskService.webStartFlowZXSL]调用失败,异常信息:"+e, e); throw new ServiceException("CaseTaskService.webStartFlowZXSL", e); @@ -1186,57 +1187,38 @@ 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); - // 不需要签收 - 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); + // 启动联合处置工作流 + FlowNode firstFlowNode = flowInfoService.startFlow(FlowableConsts.FLOWABLE_ID_LHCZ, dfpCaseTask.getCaseId()); + // 创建配合部门待受理任务 + CaseTask lhczCaseTask = new CaseTask(); + lhczCaseTask.setId(utilsClient.getNewTimeId()); + lhczCaseTask.setCaseId(dfpCaseTask.getCaseId()); + lhczCaseTask.setFlowableId(firstFlowNode.getFlowableId()); + lhczCaseTask.setProcessInstanceId(firstFlowNode.getProcessInstanceId()); + lhczCaseTask.setProcessTaskId(firstFlowNode.getProcessTaskId()); + lhczCaseTask.setTaskType(CaseTaskConsts.TASK_TYPE_1); + lhczCaseTask.setNodeType(firstFlowNode.getNodeType()); + lhczCaseTask.setNodeId(firstFlowNode.getNodeId()); + lhczCaseTask.setNodeName(firstFlowNode.getNodeName()); + lhczCaseTask.setFlowId(firstFlowNode.getFlowId()); + lhczCaseTask.setNodeShowName(firstFlowNode.getNodeShowName()); + lhczCaseTask.setCaseTaskType(CaseTaskConsts.CASE_TASK_TYPE_2); + // 通过调度的,任务候选执行者类型是上一步骤选择 + lhczCaseTask.setCandeType(CaseTaskConsts.CANDE_TYPE_1); + lhczCaseTask.setCandeUnitId(assignAssistUnitDTO.getUitId()); + lhczCaseTask.setCandeUnitName(assignAssistUnitDTO.getUitName()); + // 需要签收 + lhczCaseTask.setSignStatus(CaseTaskConsts.SIGN_STATUS_1); + lhczCaseTask.setStatus(CaseTaskConsts.TASK_STATUS_1); + // 任务处理时限 + if (firstFlowNode.getExpire() != 0) { + lhczCaseTask.setExpireTime(DateUtils.addDay(nowDate, firstFlowNode.getExpire())); + } + lhczCaseTask.setDeleteStatus(BaseConsts.DELETE_STATUS_0); + lhczCaseTask.setCustId(dfpCaseTask.getCustId()); + lhczCaseTask.setCreateTime(nowDate); + lhczCaseTask.setUpdateTime(nowDate); + mapper.insert(lhczCaseTask); } // 更新纠纷扩展信息 CaseInfoUnfold caseInfoUnfoldPO = new CaseInfoUnfold(); -- Gitblit v1.8.0