From ded4f0891dd2a76f36844d7c220155e3cd1e6918 Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期四, 16 五月 2024 17:10:28 +0800
Subject: [PATCH] feat:部门管理员功能权限控制

---
 src/main/java/com/mindskip/xzs/configuration/spring/security/RestAuthenticationProvider.java |   11 ++++-------
 1 files changed, 4 insertions(+), 7 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 fd508d2..305b486 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
@@ -9,7 +9,6 @@
 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;
 import org.springframework.security.authentication.LockedException;
@@ -18,11 +17,11 @@
 import org.springframework.security.core.AuthenticationException;
 import org.springframework.security.core.GrantedAuthority;
 import org.springframework.security.core.authority.SimpleGrantedAuthority;
-import org.springframework.security.core.userdetails.User;
 import org.springframework.security.core.userdetails.UsernameNotFoundException;
 import org.springframework.stereotype.Component;
 
 import java.util.ArrayList;
+import java.util.List;
 
 
 /**
@@ -60,17 +59,15 @@
             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);
+        // 鑾峰彇璇ョ敤鎴风鐞嗛儴闂�
+        List<Integer> deptAdminIds = userService.getDeptAdminIds(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