This commit is contained in:
小久哥
2022-06-13 13:40:22 +08:00
parent 3de354c111
commit 92e340ae09
3 changed files with 18 additions and 1 deletions
@@ -22,6 +22,7 @@ import cn.iocoder.yudao.module.system.enums.ErrorCodeConstants;
import cn.iocoder.yudao.module.system.enums.permission.MenuTypeEnum;
import cn.iocoder.yudao.module.system.service.CpUser.CpUserService;
import cn.iocoder.yudao.module.system.service.auth.AdminAuthService;
import cn.iocoder.yudao.module.system.service.auth.AdminAuthServiceImpl;
import cn.iocoder.yudao.module.system.service.auth.UserSessionService;
import cn.iocoder.yudao.module.system.service.permission.PermissionService;
import cn.iocoder.yudao.module.system.service.permission.RoleService;
@@ -74,6 +75,9 @@ public class AuthController {
@Resource
private UserSessionService userSessionService;
@Resource
private AdminAuthServiceImpl adminAuthService;
@PostMapping("/login")
@ApiOperation("使用账号密码登录")
@@ -112,6 +116,8 @@ public class AuthController {
}
LoginUser login = AuthConvert.INSTANCE.convert(user);
//权限
login.setRoleIds(adminAuthService.getUserRoleIds(login.getId()));
String token = userSessionService.createUserSession(login, getClientIP(), getUserAgent());
log.info("TOKEN:::{}",token);
@@ -4,6 +4,7 @@ import cn.iocoder.yudao.module.system.controller.admin.auth.vo.auth.*;
import cn.iocoder.yudao.framework.security.core.service.SecurityAuthFrameworkService;
import javax.validation.Valid;
import java.util.Set;
/**
* 管理后台的认证 Service 接口
@@ -24,6 +25,16 @@ public interface AdminAuthService extends SecurityAuthFrameworkService {
*/
String login(@Valid AuthLoginReqVO reqVO, String userIp, String userAgent);
/**
* 获得 User 拥有的角色编号数组
*
* @param userId 用户编号
* @return 角色编号数组
*/
Set<Long> getUserRoleIds(Long userId);
/**
* 社交登录,使用 code 授权码
*
@@ -187,7 +187,7 @@ public class AdminAuthServiceImpl implements AdminAuthService {
* @param userId 用户编号
* @return 角色编号数组
*/
private Set<Long> getUserRoleIds(Long userId) {
public Set<Long> getUserRoleIds(Long userId) {
return permissionService.getUserRoleIds(userId, singleton(CommonStatusEnum.ENABLE.getStatus()));
}