From b9e71660ca35e947ccac8079d3033b88ece5190e Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期五, 22 五月 2026 16:01:21 +0800
Subject: [PATCH] fix(approve): 修复审批流程中空节点ID列表导致的异常

---
 src/main/java/com/ruoyi/approve/service/impl/ApproveProcessServiceImpl.java |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/ruoyi/approve/service/impl/ApproveProcessServiceImpl.java b/src/main/java/com/ruoyi/approve/service/impl/ApproveProcessServiceImpl.java
index 63eb8ac..c152605 100644
--- a/src/main/java/com/ruoyi/approve/service/impl/ApproveProcessServiceImpl.java
+++ b/src/main/java/com/ruoyi/approve/service/impl/ApproveProcessServiceImpl.java
@@ -72,6 +72,7 @@
         List<Long> nodeIds = list.stream()
                 .map(ApproveProcessConfigNodeVo::getApproverId)
                 .collect(Collectors.toList());
+        if (nodeIds.isEmpty()) throw new RuntimeException("娣诲姞瀹℃壒鑺傜偣鍜屼汉鍛�");
         List<SysUser> sysUsers = sysUserMapper.selectUserByIds(nodeIds);
         if (CollectionUtils.isEmpty(sysUsers)) throw new RuntimeException("瀹℃牳鐢ㄦ埛涓嶅瓨鍦�");
         if (sysDept == null) throw new RuntimeException("閮ㄩ棬涓嶅瓨鍦�");
@@ -83,7 +84,7 @@
 //        String approveID = today + formattedCount;
         SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
         ApproveProcess approveProcess = new ApproveProcess();
-        String no = OrderUtils.countTodayByCreateTime(approveProcessMapper, "approve_id");
+        String no = OrderUtils.countAfterServiceTodayByCreateTime(approveProcessMapper, "CGSP");
         approveProcess.setApproveId(no);
         approveProcess.setApproveUser(sysUser.getUserId());
         approveProcess.setApproveUserName(sysUser.getNickName());
@@ -240,8 +241,8 @@
     }
 
     @Override
-    public void delApprove(List<Long> ids) {
-        for (Long approveId : ids) {
+    public void delApprove(List<String> ids) {
+        for (String approveId : ids) {
             ApproveProcess approveProcess = approveProcessMapper.selectOne(new LambdaQueryWrapper<ApproveProcess>()
                     .eq(ApproveProcess::getApproveId, approveId)
                     .eq(ApproveProcess::getApproveDelete, 0)
@@ -254,7 +255,7 @@
             // 鍒犻櫎瀵瑰簲鐨勯檮浠�
             commonFileService.deleteByBusinessId(approveProcess.getId(), FileNameType.ApproveProcess.getValue());
             //  鍒犻櫎瀹℃壒鑺傜偣
-            approveNodeService.delApproveNodeByApproveId(approveId.toString());
+            approveNodeService.delApproveNodeByApproveId(approveId);
 
             //  鍙煡鏈�鏂颁竴鏉″鎵规祦绋�
             ApproveProcess latestProcess = approveProcessMapper.selectOne(

--
Gitblit v1.9.3