From 10776dd6f7f9ef9e47419427fcb1b692ed73d54d Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期二, 03 二月 2026 14:34:20 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/devlop-phyz' into devlop-phyz
---
rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java | 34 ++++++++++++++++++++++------------
1 files changed, 22 insertions(+), 12 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
index bc90f6a..af89fb0 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/TaskSchedules.java
@@ -113,19 +113,17 @@
@Scheduled(cron = "0/2 * * * * ? ")
@Transactional(rollbackFor = Exception.class)
public void missionTaskEXECUTE() {
- List<String> typeList = Arrays.asList(
- MissionStepType.MISSION_STEP_TYPE_REQUEST.type,
- MissionStepType.MISSION_STEP_TYPE_UNBIND.type,
- MissionStepType.MISSION_STEP_TYPE_BIND.type,
- MissionStepType.MISSION_STEP_TYPE_OBTAIN.type,
- MissionStepType.MISSION_STEP_TYPE_NO_EXECUTE.type);
List<FlowStepInstance> flowStepInstanceList = flowStepInstanceService.list(new LambdaQueryWrapper<FlowStepInstance>()
- .eq(FlowStepInstance::getStatus, 1).in(FlowStepInstance::getStepType,typeList));
+ .eq(FlowStepInstance::getStatus, 1).in(FlowStepInstance::getStepType,MissionStepType.getTaskISSUE()));
for (FlowStepInstance flowStepInstance : flowStepInstanceList) {
FlowInstance flowInstance = flowInstanceService.getById(flowStepInstance.getFlowInstanceId());
if (Cools.isEmpty(flowInstance)) { continue;}
+ List<FlowStepInstance> flowStepInstances = flowStepInstanceService.list(new LambdaQueryWrapper<FlowStepInstance>()
+ .eq(FlowStepInstance::getFlowInstanceId, flowInstance.getId()).eq(FlowStepInstance::getStatus, (short) 0));
+ flowInstance.setStatus(flowStepInstances.isEmpty()? (short) 2:(short) 1);
TaskInstanceNode taskInstanceNode = taskInstanceNodeService.getById(flowInstance.getNodeInstanceId());
if (Cools.isEmpty(taskInstanceNode)) { continue;}
+ taskInstanceNode.setStatus(flowInstance.getStatus());
TaskInstance taskInstance = taskInstanceService.getById(flowInstance.getTaskId());
if (Cools.isEmpty(taskInstance)) { continue;}
Task task = taskService.getOne(new LambdaQueryWrapper<Task>().eq(Task::getTaskCode, taskInstance.getTaskNo()));
@@ -147,14 +145,21 @@
if (flowStepInstance.getWmsNextTaskStatus() != 9999) {
FlowStepInstance nextFlowStepInstance = flowStepInstanceService.getOne(new LambdaQueryWrapper<FlowStepInstance>()
- .eq(FlowStepInstance::getFlowInstanceId, flowStepInstance.getFlowInstanceId())
- .eq(FlowStepInstance::getFlowInstanceNo, flowStepInstance.getFlowInstanceNo())
+ .eq(FlowStepInstance::getStatus, (short)0)
.eq(FlowStepInstance::getStepOrder, flowStepInstance.getStepOrder() + 1)
.eq(FlowStepInstance::getWmsNowTaskStatus, flowStepInstance.getWmsNextTaskStatus()));
+ if (Cools.isEmpty(nextFlowStepInstance)) {
+ throw new CoolException("浠诲姟鍙�"+task.getTaskCode()+"浠诲姟姝ラ涓㈠け锛侊紒锛�");
+ }
nextFlowStepInstance.setStatus((short)1);
flowStepInstanceService.updateById(nextFlowStepInstance);
+ } else {
+ taskInstance.setStatus((short)2);
+ taskInstanceService.updateById(taskInstance);
}
+ flowInstanceService.updateById(flowInstance);
+ taskInstanceNodeService.updateById(taskInstanceNode);
} catch (Exception e) {
throw new CoolException(e.getMessage());
}
@@ -192,13 +197,18 @@
if (flowStepInstance.getWmsNextTaskStatus() != 9999) {
FlowStepInstance nextFlowStepInstance = flowStepInstanceService.getOne(new LambdaQueryWrapper<FlowStepInstance>()
- .eq(FlowStepInstance::getFlowInstanceId, flowStepInstance.getFlowInstanceId())
- .eq(FlowStepInstance::getFlowInstanceNo, flowStepInstance.getFlowInstanceNo())
+ .eq(FlowStepInstance::getStatus, (short)0)
.eq(FlowStepInstance::getStepOrder, flowStepInstance.getStepOrder() + 1)
.eq(FlowStepInstance::getWmsNowTaskStatus, flowStepInstance.getWmsNextTaskStatus()));
+ if (Cools.isEmpty(nextFlowStepInstance)) {
+ throw new CoolException("浠诲姟鍙�"+task.getTaskCode()+"浠诲姟姝ラ涓㈠け锛侊紒锛�");
+ }
nextFlowStepInstance.setStatus((short)1);
flowStepInstanceService.updateById(nextFlowStepInstance);
+ } else {
+ taskInstance.setStatus((short)2);
+ taskInstanceService.updateById(taskInstance);
}
} else {
flowStepInstance.setRetryTimes(flowStepInstance.getRetryTimes() + 1);
@@ -237,7 +247,7 @@
public void completeStock9999() throws Exception {
try{
- List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getTaskStatus, TaskStsType.MISSION_TRANSFER.id).select(Task::getId));
+ List<Task> tasks = taskService.list(new LambdaQueryWrapper<Task>().eq(Task::getTaskStatus, TaskStsType.MISSION_TRANSFER.id));
if (tasks.isEmpty()) {
return;
}
--
Gitblit v1.9.1