From 291a72bf35e2d39b816abc0ebf085cfa9da3ee06 Mon Sep 17 00:00:00 2001
From: mitao <2763622819@qq.com>
Date: 星期二, 23 九月 2025 14:11:40 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalFlowNodeServiceImpl.java |   43 +++++++++++++++++++++++++++++++++----------
 1 files changed, 33 insertions(+), 10 deletions(-)

diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalFlowNodeServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalFlowNodeServiceImpl.java
index 137e619..967db7c 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalFlowNodeServiceImpl.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/OaApprovalFlowNodeServiceImpl.java
@@ -2,18 +2,17 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.common.basic.PageInfo;
 import com.ruoyi.common.core.domain.entity.SysUser;
 import com.ruoyi.common.core.domain.entity.TDept;
 import com.ruoyi.system.mapper.OaApprovalFlowNodeMapper;
 import com.ruoyi.system.mapper.SysUserMapper;
+import com.ruoyi.system.mapper.TDeptMapper;
 import com.ruoyi.system.model.OaApprovalFlowNode;
-import com.ruoyi.system.query.ApprovalListQuery;
+import com.ruoyi.system.query.ApprovalNodeListQuery;
 import com.ruoyi.system.service.OaApprovalFlowNodeService;
-import com.ruoyi.system.vo.system.ApprovalFlowNodeVO;
-import com.ruoyi.system.vo.system.ApprovalVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
 
 import java.util.List;
 import java.util.Map;
@@ -32,19 +31,43 @@
 
     @Autowired
     private SysUserMapper sysUserMapper;
+    @Autowired
+    private TDeptMapper deptMapper;
     @Override
-    public List<OaApprovalFlowNode> pageList(ApprovalListQuery query) {
+    public List<OaApprovalFlowNode> pageList(ApprovalNodeListQuery query) {
         List<SysUser> sysUsers = sysUserMapper.selectList();
-        Map<Long, String> deptMaps = sysUsers.stream().collect(Collectors.toMap(SysUser::getUserId, SysUser::getNickName));
+        Map<Long, String> userMaps = sysUsers.stream().collect(Collectors.toMap(SysUser::getUserId, SysUser::getNickName));
+        Map<Integer, String> deptMaps = deptMapper.selectList(null).stream().collect(Collectors.toMap(TDept::getId, TDept::getDeptName));
         List<OaApprovalFlowNode> oaApprovalFlowNodes = this.baseMapper.selectList(new LambdaQueryWrapper<OaApprovalFlowNode>()
                 .eq(OaApprovalFlowNode::getApprovalId, query.getId()));
         for (OaApprovalFlowNode approvalVO : oaApprovalFlowNodes) {
             StringBuilder approvalName = new StringBuilder();
-            for (String approvalId : approvalVO.getApprovalIds().split(",")) {
-                String orDefault = deptMaps.getOrDefault(Long.valueOf(approvalId), "");
-                approvalName.append(orDefault).append(",");
+            if (approvalVO.getApprovalType() != 0){
+                if (approvalVO.getApprovalType() == 2){
+                    for (String approvalId : approvalVO.getApprovalIds().split(",")) {
+                        String orDefault = userMaps.getOrDefault(Long.valueOf(approvalId), "");
+                        if (StringUtils.hasLength(orDefault)){
+                            approvalName.append(orDefault).append(",");
+                        }
+                    }
+                }else{
+                    for (String approvalId : approvalVO.getApprovalIds().split(",")) {
+                        String orDefault = deptMaps.getOrDefault(Integer.valueOf(approvalId), "");
+                        if (StringUtils.hasLength(orDefault)){
+                            approvalName.append(orDefault).append(",");
+                        }
+                    }
+                }
+
+                if (StringUtils.hasLength(approvalName)){
+                    approvalVO.setApprovalName(approvalName.substring(0,approvalName.length()-1));
+                }else{
+                    approvalVO.setApprovalName("");
+                }
+            }else{
+                approvalVO.setApprovalName("上级部门");
             }
-            approvalVO.setApprovalName(approvalName.substring(0,approvalName.length()-1));
+
         }
         return oaApprovalFlowNodes;
     }

--
Gitblit v1.7.1