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