From 45d958a978b4f8e258d6b3c56b089fbf6797b97e Mon Sep 17 00:00:00 2001 From: "1437892690@qq.com" <1437892690@qq.com> Date: Tue, 18 Jun 2024 15:46:18 +0800 Subject: [PATCH] =?UTF-8?q?[=E4=BF=AE=E5=A4=8D]=20=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E5=A4=84=E7=90=86-=E7=94=A8=E6=88=B7=E8=BD=AC=E4=BA=A4?= =?UTF-8?q?=E5=B7=A5=E5=8D=95=EF=BC=8C=E5=B7=A5=E5=8D=95=E8=A2=AB=E8=BD=AC?= =?UTF-8?q?=E4=BA=A4=E5=9B=9E=E6=9D=A5=EF=BC=8C=E7=94=A8=E6=88=B7=E5=86=8D?= =?UTF-8?q?=E6=AC=A1=E8=BD=AC=E4=BA=A4=E7=BB=99=E5=90=8C=E4=B8=80=E7=94=A8?= =?UTF-8?q?=E6=88=B7=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit #[1181835239849984]工单处理-用户转交工单,工单被转交回来,用户再次转交给同一用户失败 http://192.168.0.96:8090/demo/rdm.html#/bug-detail/939050947543040/939050947543057/1181835239849984 --- .../IProcessTaskCrossoverMapper.java | 2 -- .../core/ProcessStepHandlerBase.java | 26 +++++++++---------- 2 files changed, 12 insertions(+), 16 deletions(-) diff --git a/src/main/java/neatlogic/framework/process/crossover/IProcessTaskCrossoverMapper.java b/src/main/java/neatlogic/framework/process/crossover/IProcessTaskCrossoverMapper.java index 45aba42b..00e6c228 100644 --- a/src/main/java/neatlogic/framework/process/crossover/IProcessTaskCrossoverMapper.java +++ b/src/main/java/neatlogic/framework/process/crossover/IProcessTaskCrossoverMapper.java @@ -174,8 +174,6 @@ public interface IProcessTaskCrossoverMapper extends ICrossoverService { int updateProcessTaskStepUserStatus(ProcessTaskStepUserVo processTaskStepUserVo); - int updateProcessTaskStepMajorUserUserTypeAndStatus(ProcessTaskStepUserVo processTaskStepUserVo); - int updateProcessTaskTitleOwnerPriorityUuid(ProcessTaskVo processTaskVo); int updateProcessTaskStepWorkerUuid(ProcessTaskStepWorkerVo processTaskStepWorkerVo); diff --git a/src/main/java/neatlogic/framework/process/stephandler/core/ProcessStepHandlerBase.java b/src/main/java/neatlogic/framework/process/stephandler/core/ProcessStepHandlerBase.java index d1ffb85b..427fd0c0 100644 --- a/src/main/java/neatlogic/framework/process/stephandler/core/ProcessStepHandlerBase.java +++ b/src/main/java/neatlogic/framework/process/stephandler/core/ProcessStepHandlerBase.java @@ -384,16 +384,13 @@ public abstract class ProcessStepHandlerBase implements IProcessStepHandler { if (changeMajorUser) { oldUserVo.setUserType(ProcessTaskStepUserType.HISTORY_MAJOR.getValue()); oldUserVo.setStatus(ProcessTaskStepUserStatus.DONE.getValue()); - int count = processTaskCrossoverMapper.updateProcessTaskStepMajorUserUserTypeAndStatus(oldUserVo); - System.out.println("count = " + count); - List processTaskStepUserList = processTaskCrossoverMapper.getProcessTaskStepUserListByProcessTaskIdList(Collections.singletonList(currentProcessTaskStepVo.getProcessTaskId())); - System.out.println("processTaskStepUserList = " + JSONObject.toJSONString(processTaskStepUserList)); - } else { - ProcessTaskStepUserVo processTaskStepUserVo = new ProcessTaskStepUserVo(); - processTaskStepUserVo.setProcessTaskStepId(currentProcessTaskStepVo.getId()); - processTaskStepUserVo.setUserType(ProcessUserType.MAJOR.getValue());// 只删除主处理人人 - processTaskCrossoverMapper.deleteProcessTaskStepUser(processTaskStepUserVo); + oldUserVo.setEndTime(new Date()); + processTaskCrossoverMapper.insertIgnoreProcessTaskStepUser(oldUserVo); } + ProcessTaskStepUserVo processTaskStepUserVo = new ProcessTaskStepUserVo(); + processTaskStepUserVo.setProcessTaskStepId(currentProcessTaskStepVo.getId()); + processTaskStepUserVo.setUserType(ProcessUserType.MAJOR.getValue());// 只删除主处理人 + processTaskCrossoverMapper.deleteProcessTaskStepUser(processTaskStepUserVo); } /* 当只分配到一个用户时,自动设置为处理人,不需要抢单 **/ if (workerSet.size() == 1 && autoStart == 1) { @@ -1712,7 +1709,8 @@ public abstract class ProcessStepHandlerBase implements IProcessStepHandler { /* 更新处理人状态 **/ oldUser.setUserType(ProcessTaskStepUserType.HISTORY_MAJOR.getValue()); oldUser.setStatus(ProcessTaskStepUserStatus.TRANSFERRED.getValue()); - processTaskCrossoverMapper.updateProcessTaskStepMajorUserUserTypeAndStatus(oldUser); + oldUser.setEndTime(new Date()); + processTaskCrossoverMapper.insertIgnoreProcessTaskStepUser(oldUser); if (workerUserUuidList.contains(oldUser.getUserUuid())) { String userName = oldUser.getUserName(); if (StringUtils.isBlank(userName)) { @@ -1725,10 +1723,10 @@ public abstract class ProcessStepHandlerBase implements IProcessStepHandler { } } /* 清空user表 **/ -// ProcessTaskStepUserVo processTaskStepUserVo = new ProcessTaskStepUserVo(); -// processTaskStepUserVo.setProcessTaskStepId(currentProcessTaskStepVo.getId()); -// processTaskStepUserVo.setUserType(ProcessUserType.MAJOR.getValue()); -// processTaskCrossoverMapper.deleteProcessTaskStepUser(processTaskStepUserVo); + ProcessTaskStepUserVo processTaskStepUserVo = new ProcessTaskStepUserVo(); + processTaskStepUserVo.setProcessTaskStepId(currentProcessTaskStepVo.getId()); + processTaskStepUserVo.setUserType(ProcessUserType.MAJOR.getValue()); + processTaskCrossoverMapper.deleteProcessTaskStepUser(processTaskStepUserVo); } /* 保存描述内容 **/ -- Gitee