From 81dcd6b9c960875a4b0d083ac848c7649d95ce13 Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期三, 10 七月 2024 18:01:20 +0800
Subject: [PATCH] fix 用户列表增加部门条件 随机试卷列表增加部门,时间,科目条件 补考直接展示学生

---
 src/main/java/com/mindskip/xzs/configuration/spring/security/RestAuthenticationProvider.java |   10 +++++++++-
 1 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/mindskip/xzs/configuration/spring/security/RestAuthenticationProvider.java b/src/main/java/com/mindskip/xzs/configuration/spring/security/RestAuthenticationProvider.java
index c6c39f9..5104811 100644
--- a/src/main/java/com/mindskip/xzs/configuration/spring/security/RestAuthenticationProvider.java
+++ b/src/main/java/com/mindskip/xzs/configuration/spring/security/RestAuthenticationProvider.java
@@ -19,6 +19,7 @@
 import org.springframework.security.core.authority.SimpleGrantedAuthority;
 import org.springframework.security.core.userdetails.UsernameNotFoundException;
 import org.springframework.stereotype.Component;
+import org.springframework.util.CollectionUtils;
 
 import java.util.ArrayList;
 import java.util.List;
@@ -65,8 +66,15 @@
             grantedAuthorities.add(new SimpleGrantedAuthority(RoleEnum.DEPT_ADMIN.getRoleName()));
         }
         grantedAuthorities.add(new SimpleGrantedAuthority(RoleEnum.fromCode(user.getRole()).getRoleName()));
-        // 鑾峰彇璇ョ敤鎴风鐞嗛儴闂�
+        // 鑾峰彇璇ョ敤鎴风鐞嗛儴闂ㄥ強鍏朵笅绾�
         List<Integer> deptAdminIds = userService.getDeptAdminIds(user.getId());
+        if (! CollectionUtils.isEmpty(deptAdminIds)) {
+            deptAdminIds = departmentMapper.getChilds(deptAdminIds); // 鏌ヨ瀛愰儴闂�
+        }
+        if (CollectionUtils.isEmpty(deptAdminIds)) {
+            // 濡傛灉鏄櫘閫氬鍛橈紝鏌ュ嚭鎵�鍦ㄩ儴闂�
+            deptAdminIds = userService.getDeptIds(user.getId());
+        }
         MyUser authUser = new MyUser(user.getUserName(), user.getPassword(), grantedAuthorities, user.getRole(), deptAdminIds);
         return new UsernamePasswordAuthenticationToken(authUser, authUser.getPassword(), authUser.getAuthorities());
     }

--
Gitblit v1.8.0