From 008a607e1fcb46bdb180bc4e74304bc91239d2ad Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期三, 22 五月 2024 13:33:38 +0800
Subject: [PATCH] sql bug
---
src/main/java/com/mindskip/xzs/configuration/spring/security/RestAuthenticationProvider.java | 31 +++++++++++++------------------
1 files changed, 13 insertions(+), 18 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..c6c39f9 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,11 +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 org.springframework.beans.factory.annotation.Autowired;
+import lombok.RequiredArgsConstructor;
import org.springframework.security.authentication.AuthenticationProvider;
import org.springframework.security.authentication.BadCredentialsException;
import org.springframework.security.authentication.LockedException;
@@ -15,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;
/**
@@ -29,25 +31,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 {
@@ -70,9 +60,14 @@
}
ArrayList<GrantedAuthority> grantedAuthorities = new ArrayList<>();
+ // 璧嬩簣閮ㄩ棬绠$悊鍛樿鑹�
+ if (new Integer(-1).equals(user.getRole())) {
+ 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