From c50e176c4a6b9331d2d1c0520bafb18f54f0dee6 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期五, 08 三月 2024 17:35:10 +0800
Subject: [PATCH] 部门增加管理员

---
 src/main/java/com/mindskip/xzs/configuration/spring/security/RestAuthenticationProvider.java |   26 ++++++++++++--------------
 1 files changed, 12 insertions(+), 14 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 495d408..fd508d2 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
@@ -2,10 +2,13 @@
 
 
 import com.mindskip.xzs.context.WebContext;
+import com.mindskip.xzs.domain.enums.DeptAdminEnum;
 import com.mindskip.xzs.domain.enums.RoleEnum;
 import com.mindskip.xzs.domain.enums.UserStatusEnum;
+import com.mindskip.xzs.repository.DepartmentMapper;
 import com.mindskip.xzs.service.AuthenticationService;
 import com.mindskip.xzs.service.UserService;
+import lombok.RequiredArgsConstructor;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.authentication.AuthenticationProvider;
 import org.springframework.security.authentication.BadCredentialsException;
@@ -29,25 +32,13 @@
  * @date 2021/12/25 9:45
  */
 @Component
+@RequiredArgsConstructor
 public class RestAuthenticationProvider implements AuthenticationProvider {
 
     private final AuthenticationService authenticationService;
     private final UserService userService;
     private final WebContext webContext;
-
-    /**
-     * Instantiates a new Rest authentication provider.
-     *
-     * @param authenticationService the authentication service
-     * @param userService           the user service
-     * @param webContext            the web context
-     */
-    @Autowired
-    public RestAuthenticationProvider(AuthenticationService authenticationService, UserService userService, WebContext webContext) {
-        this.authenticationService = authenticationService;
-        this.userService = userService;
-        this.webContext = webContext;
-    }
+    private final DepartmentMapper departmentMapper;
 
     @Override
     public Authentication authenticate(Authentication authentication) throws AuthenticationException {
@@ -69,7 +60,14 @@
             throw new LockedException("鐢ㄦ埛琚鐢�");
         }
 
+//        // 鏌ヨ璇ョ敤鎴锋槸涓嶆槸閮ㄩ棬绠$悊鍛�
+//        Integer num = departmentMapper.countByAdminId(user.getId());
+
         ArrayList<GrantedAuthority> grantedAuthorities = new ArrayList<>();
+        // 璧嬩簣閮ㄩ棬绠$悊鍛樿鑹�
+        if (DeptAdminEnum.YES.getValue().equals(user.getDeptAdmin())) {
+            grantedAuthorities.add(new SimpleGrantedAuthority(RoleEnum.DEPT_ADMIN.getRoleName()));
+        }
         grantedAuthorities.add(new SimpleGrantedAuthority(RoleEnum.fromCode(user.getRole()).getRoleName()));
 
         User authUser = new User(user.getUserName(), user.getPassword(), grantedAuthorities);

--
Gitblit v1.8.0