From 3fcb0f61717963f8c6c9996de9f887fbeba121df Mon Sep 17 00:00:00 2001
From: "1437892690@qq.com" <1437892690@qq.com>
Date: Fri, 18 Apr 2025 18:49:25 +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-=E6=AD=A5=E9=AA=A4=E7=9A=84=E5=9B=9E?=
=?UTF-8?q?=E5=A4=8D=E5=BF=85=E5=A1=AB=EF=BC=8C=E4=B8=8A=E4=BC=A0=E9=99=84?=
=?UTF-8?q?=E4=BB=B6=E7=9B=B4=E6=8E=A5=E5=9B=9E=E5=A4=8D=EF=BC=8C=E6=B2=A1?=
=?UTF-8?q?=E6=9C=89=E6=A0=A1=E9=AA=8C=E6=96=87=E6=9C=AC=E5=BF=85=E5=A1=AB?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
关联 #[1396236794429440]工单处理-步骤的回复必填,上传附件直接回复,没有校验文本必填 http://192.168.0.96:8090/demo/rdm.html#/bug-detail/939050947543040/939050947543057/1396236794429440
---
.../mapper/processtask/ProcessTaskMapper.java | 6 +++
.../mapper/processtask/ProcessTaskMapper.xml | 8 ++++
.../service/IProcessStepHandlerUtil.java | 2 +-
.../service/ProcessStepHandlerUtil.java | 44 +++++++++++--------
.../thread/ProcessTaskAutomaticThread.java | 9 +++-
5 files changed, 49 insertions(+), 20 deletions(-)
diff --git a/src/main/java/neatlogic/module/process/dao/mapper/processtask/ProcessTaskMapper.java b/src/main/java/neatlogic/module/process/dao/mapper/processtask/ProcessTaskMapper.java
index d593dcbee..bc4384504 100644
--- a/src/main/java/neatlogic/module/process/dao/mapper/processtask/ProcessTaskMapper.java
+++ b/src/main/java/neatlogic/module/process/dao/mapper/processtask/ProcessTaskMapper.java
@@ -581,6 +581,12 @@ public interface ProcessTaskMapper extends IProcessTaskCrossoverMapper {
int deleteProcessTaskStepInOperationByProcessTaskId(Long processTaskId);
+ int deleteProcessTaskStepInOperationByProcessTaskIdAndProcessTaskStepIdAndOperationType(
+ @Param("processTaskId") Long processTaskId,
+ @Param("processTaskStepId") Long processTaskStepId,
+ @Param("operationType") String operationType
+ );
+
int deleteProcessTaskStepInOperationByServerId(Long serverId);
int deleteProcessTaskStepWorkerMinorByProcessTaskStepId(Long processTaskStepId);
diff --git a/src/main/java/neatlogic/module/process/dao/mapper/processtask/ProcessTaskMapper.xml b/src/main/java/neatlogic/module/process/dao/mapper/processtask/ProcessTaskMapper.xml
index 66652017c..e30665f5e 100644
--- a/src/main/java/neatlogic/module/process/dao/mapper/processtask/ProcessTaskMapper.xml
+++ b/src/main/java/neatlogic/module/process/dao/mapper/processtask/ProcessTaskMapper.xml
@@ -4118,6 +4118,14 @@
WHERE `processtask_id` = #{value}
+
+ DELETE
+ FROM `processtask_step_in_operation`
+ WHERE `processtask_id` = #{processTaskId}
+ AND `processtask_step_id` = #{processTaskStepId}
+ AND `operation_type` = #{operationType}
+
+
DELETE
FROM `processtask_step_in_operation`
diff --git a/src/main/java/neatlogic/module/process/service/IProcessStepHandlerUtil.java b/src/main/java/neatlogic/module/process/service/IProcessStepHandlerUtil.java
index a63712563..a5df05361 100644
--- a/src/main/java/neatlogic/module/process/service/IProcessStepHandlerUtil.java
+++ b/src/main/java/neatlogic/module/process/service/IProcessStepHandlerUtil.java
@@ -163,7 +163,7 @@ public interface IProcessStepHandlerUtil {
* 流转操作时检查回复信息是否必填
* @param currentProcessTaskStepVo
*/
- void checkContentIsRequired(ProcessTaskStepVo currentProcessTaskStepVo);
+ void checkContentIsRequired(ProcessTaskStepVo currentProcessTaskStepVo, IOperationType operationType);
/**
* @Description: 保存标签列表
diff --git a/src/main/java/neatlogic/module/process/service/ProcessStepHandlerUtil.java b/src/main/java/neatlogic/module/process/service/ProcessStepHandlerUtil.java
index cdfc819fe..90767e9b3 100644
--- a/src/main/java/neatlogic/module/process/service/ProcessStepHandlerUtil.java
+++ b/src/main/java/neatlogic/module/process/service/ProcessStepHandlerUtil.java
@@ -656,29 +656,37 @@ public class ProcessStepHandlerUtil implements IProcessStepHandlerUtil, IProcess
}
@Override
- public void checkContentIsRequired(ProcessTaskStepVo currentProcessTaskStepVo) {
+ public void checkContentIsRequired(ProcessTaskStepVo currentProcessTaskStepVo, IOperationType operationType) {
if (Objects.equals(currentProcessTaskStepVo.getIsNeedContent(), 0)) {
return;
}
- if (Objects.equals(currentProcessTaskStepVo.getIsRequired(), 1)) {
- JSONObject paramObj = currentProcessTaskStepVo.getParamObj();
- String content = paramObj.getString("content");
- if (StringUtils.isBlank(content)) {
- List contentList = processTaskMapper.getProcessTaskStepContentByProcessTaskStepId(currentProcessTaskStepVo.getId());
- if (CollectionUtils.isEmpty(contentList)) {
- throw new ProcessTaskStepContentIsEmptyException();
- }
- Date startTime = currentProcessTaskStepVo.getStartTime();
- if (startTime != null) {
- for (ProcessTaskStepContentVo contentVo : contentList) {
- if (startTime.before(contentVo.getLcd())) {
- return;
- }
- }
- throw new ProcessTaskStepContentIsEmptyException();
- }
+ JSONObject paramObj = currentProcessTaskStepVo.getParamObj();
+ String content = paramObj.getString("content");
+ if (StringUtils.isBlank(content)) {
+ if (operationType == ProcessTaskStepOperationType.STEP_BACK || Objects.equals(currentProcessTaskStepVo.getIsRequired(), 1)) {
+ throw new ProcessTaskStepContentIsEmptyException();
}
}
+
+// if (Objects.equals(currentProcessTaskStepVo.getIsRequired(), 1)) {
+// JSONObject paramObj = currentProcessTaskStepVo.getParamObj();
+// String content = paramObj.getString("content");
+// if (StringUtils.isBlank(content)) {
+// List contentList = processTaskMapper.getProcessTaskStepContentByProcessTaskStepId(currentProcessTaskStepVo.getId());
+// if (CollectionUtils.isEmpty(contentList)) {
+// throw new ProcessTaskStepContentIsEmptyException();
+// }
+// Date startTime = currentProcessTaskStepVo.getStartTime();
+// if (startTime != null) {
+// for (ProcessTaskStepContentVo contentVo : contentList) {
+// if (startTime.before(contentVo.getLcd())) {
+// return;
+// }
+// }
+// throw new ProcessTaskStepContentIsEmptyException();
+// }
+// }
+// }
}
/**
diff --git a/src/main/java/neatlogic/module/process/thread/ProcessTaskAutomaticThread.java b/src/main/java/neatlogic/module/process/thread/ProcessTaskAutomaticThread.java
index 7c1a1bc81..c7b80e036 100644
--- a/src/main/java/neatlogic/module/process/thread/ProcessTaskAutomaticThread.java
+++ b/src/main/java/neatlogic/module/process/thread/ProcessTaskAutomaticThread.java
@@ -16,9 +16,11 @@ along with this program. If not, see .*/
package neatlogic.module.process.thread;
import neatlogic.framework.asynchronization.thread.NeatLogicThread;
-import neatlogic.module.process.dao.mapper.processtask.ProcessTaskMapper;
import neatlogic.framework.process.dto.ProcessTaskStepVo;
+import neatlogic.module.process.dao.mapper.processtask.ProcessTaskMapper;
import neatlogic.module.process.service.ProcessTaskAutomaticService;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
@@ -30,6 +32,8 @@ import javax.annotation.Resource;
@Component
public class ProcessTaskAutomaticThread extends NeatLogicThread {
+ private final static Logger logger = LoggerFactory.getLogger(ProcessTaskAutomaticThread.class);
+
private static ProcessTaskAutomaticService processTaskAutomaticService;
private static ProcessTaskMapper processTaskMapper;
private Long processTaskStepInOperationId;
@@ -57,7 +61,10 @@ public class ProcessTaskAutomaticThread extends NeatLogicThread {
protected void execute() {
try {
processTaskAutomaticService.firstRequest(currentProcessTaskStepVo);
+ } catch (Exception e) {
+ logger.error(e.getMessage(), e);
} finally {
+ processTaskMapper.deleteProcessTaskStepInOperationByProcessTaskIdAndProcessTaskStepIdAndOperationType(currentProcessTaskStepVo.getProcessTaskId(), currentProcessTaskStepVo.getId(), "request");
processTaskMapper.deleteProcessTaskStepInOperationById(processTaskStepInOperationId);
}
}
--
Gitee