From 4788c0abe7193191b3ca024b0f5f8fed196294bd Mon Sep 17 00:00:00 2001
From: yupeng <roc__yu@163.com>
Date: 星期三, 05 三月 2025 14:29:26 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master' into xizang-changyun

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/FlowListenerService.java |   30 +++++++++++++++++++++++++++---
 1 files changed, 27 insertions(+), 3 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/FlowListenerService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/FlowListenerService.java
index d8efb13..4926b6d 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/FlowListenerService.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/FlowListenerService.java
@@ -25,19 +25,21 @@
 import com.alibaba.fastjson2.JSON;
 import com.alibaba.fastjson2.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.google.common.collect.ImmutableMap;
 import com.ruoyi.common.core.domain.entity.SysRole;
 import com.ruoyi.common.enums.ProcessCategoryEnum;
 import com.ruoyi.common.enums.SubmitStatusEnum;
 import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.system.service.ISysRoleService;
 import com.ruoyi.system.service.TContractService;
+import com.ruoyi.system.task.base.QuartzManager;
+import com.ruoyi.system.task.base.TimeJobType;
+import com.ruoyi.system.task.jobs.StateProcessJob;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Component;
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Objects;
+import java.util.*;
 import java.util.function.Supplier;
 import java.util.stream.Collectors;
 
@@ -93,6 +95,15 @@
                     if (ObjectUtil.isEmpty(flwHisTask)) {
                         return true;
                     }
+
+                    // 添加定时任务
+                    Map<String, ? extends Object> maps =
+                            new ImmutableMap.Builder<String, Long>().
+                                    put("id", flwTask.getId())
+                                    .build();
+                    QuartzManager.addJob(StateProcessJob.class, (StateProcessJob.name+flwTask.getId()).toUpperCase(), TimeJobType.AUTO_AUDIT,new Date(new Date().getTime()+48*60*60*1000L), maps);
+
+
                     //对比发起人和节点审批人
                     if (nodeAssigneeList.stream().noneMatch(t -> Objects.equals(t.getId(), flwHisTask.getCreateId()))) {
                         return true;
@@ -135,6 +146,15 @@
                     if (ObjectUtil.isEmpty(flwHisTask)) {
                         return true;
                     }
+
+                    // 添加定时任务
+                    Map<String, ? extends Object> maps =
+                            new ImmutableMap.Builder<String, Long>().
+                                    put("id", flwTask.getId())
+                                    .build();
+                    QuartzManager.addJob(StateProcessJob.class, (StateProcessJob.name+flwTask.getId()).toUpperCase(), TimeJobType.AUTO_AUDIT,new Date(new Date().getTime()+48*60*60*1000L), maps);
+
+
                     //对比发起人和节点审批人
                     if (flwTaskActors.stream().noneMatch(t -> Objects.equals(t.getActorId(), flwHisTask.getCreateId()))) {
                         return true;
@@ -231,10 +251,14 @@
             }
             case CATEGORY2: {
                 // 合同签订审批
+                int submitStatus = status==0?3:(status==1?4:5);
+                contractService.updateContractAuditStatus(processParameter.getString("projectId"), submitStatus);
                 break;
             }
             case CATEGORY3: {
                 // 合同提前终止审批
+                int submitStatus = status==0?4:(status==1?6:5);
+                contractService.updateContractAuditStatus(processParameter.getString("projectId"), submitStatus);
                 break;
             }
             default:

--
Gitblit v1.7.1