|
@@ -1,9 +1,12 @@
|
|
package cn.iocoder.yudao.module.system.controller.admin.auth;
|
|
package cn.iocoder.yudao.module.system.controller.admin.auth;
|
|
|
|
|
|
|
|
+import cn.hutool.core.util.StrUtil;
|
|
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
|
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
|
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
|
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
|
import cn.iocoder.yudao.framework.common.util.collection.SetUtils;
|
|
import cn.iocoder.yudao.framework.common.util.collection.SetUtils;
|
|
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
|
import cn.iocoder.yudao.framework.operatelog.core.annotations.OperateLog;
|
|
|
|
+import cn.iocoder.yudao.framework.security.config.SecurityProperties;
|
|
|
|
+import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils;
|
|
import cn.iocoder.yudao.module.system.controller.admin.auth.vo.auth.*;
|
|
import cn.iocoder.yudao.module.system.controller.admin.auth.vo.auth.*;
|
|
import cn.iocoder.yudao.module.system.convert.auth.AuthConvert;
|
|
import cn.iocoder.yudao.module.system.convert.auth.AuthConvert;
|
|
import cn.iocoder.yudao.module.system.dal.dataobject.permission.MenuDO;
|
|
import cn.iocoder.yudao.module.system.dal.dataobject.permission.MenuDO;
|
|
@@ -24,6 +27,7 @@ import org.springframework.validation.annotation.Validated;
|
|
import org.springframework.web.bind.annotation.*;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
|
|
+import javax.servlet.http.HttpServletRequest;
|
|
import javax.validation.Valid;
|
|
import javax.validation.Valid;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
import java.util.Set;
|
|
import java.util.Set;
|
|
@@ -52,15 +56,28 @@ public class AuthController {
|
|
@Resource
|
|
@Resource
|
|
private SocialUserService socialUserService;
|
|
private SocialUserService socialUserService;
|
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
+ private SecurityProperties securityProperties;
|
|
|
|
+
|
|
@PostMapping("/login")
|
|
@PostMapping("/login")
|
|
@ApiOperation("使用账号密码登录")
|
|
@ApiOperation("使用账号密码登录")
|
|
@OperateLog(enable = false) // 避免 Post 请求被记录操作日志
|
|
@OperateLog(enable = false) // 避免 Post 请求被记录操作日志
|
|
public CommonResult<AuthLoginRespVO> login(@RequestBody @Valid AuthLoginReqVO reqVO) {
|
|
public CommonResult<AuthLoginRespVO> login(@RequestBody @Valid AuthLoginReqVO reqVO) {
|
|
String token = authService.login(reqVO, getClientIP(), getUserAgent());
|
|
String token = authService.login(reqVO, getClientIP(), getUserAgent());
|
|
- // 返回结果
|
|
|
|
return success(AuthLoginRespVO.builder().token(token).build());
|
|
return success(AuthLoginRespVO.builder().token(token).build());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ @PostMapping("/logout")
|
|
|
|
+ @ApiOperation("登出系统")
|
|
|
|
+ @OperateLog(enable = false) // 避免 Post 请求被记录操作日志
|
|
|
|
+ public CommonResult<Boolean> logout(HttpServletRequest request) {
|
|
|
|
+ String token = SecurityFrameworkUtils.obtainAuthorization(request, securityProperties.getTokenHeader());
|
|
|
|
+ if (StrUtil.isNotBlank(token)) {
|
|
|
|
+ authService.logout(token);
|
|
|
|
+ }
|
|
|
|
+ return success(true);
|
|
|
|
+ }
|
|
|
|
+
|
|
@GetMapping("/get-permission-info")
|
|
@GetMapping("/get-permission-info")
|
|
@ApiOperation("获取登录用户的权限信息")
|
|
@ApiOperation("获取登录用户的权限信息")
|
|
public CommonResult<AuthPermissionInfoRespVO> getPermissionInfo() {
|
|
public CommonResult<AuthPermissionInfoRespVO> getPermissionInfo() {
|
|
@@ -130,7 +147,6 @@ public class AuthController {
|
|
@OperateLog(enable = false) // 避免 Post 请求被记录操作日志
|
|
@OperateLog(enable = false) // 避免 Post 请求被记录操作日志
|
|
public CommonResult<AuthLoginRespVO> socialQuickLogin(@RequestBody @Valid AuthSocialQuickLoginReqVO reqVO) {
|
|
public CommonResult<AuthLoginRespVO> socialQuickLogin(@RequestBody @Valid AuthSocialQuickLoginReqVO reqVO) {
|
|
String token = authService.socialQuickLogin(reqVO, getClientIP(), getUserAgent());
|
|
String token = authService.socialQuickLogin(reqVO, getClientIP(), getUserAgent());
|
|
- // 返回结果
|
|
|
|
return success(AuthLoginRespVO.builder().token(token).build());
|
|
return success(AuthLoginRespVO.builder().token(token).build());
|
|
}
|
|
}
|
|
|
|
|
|
@@ -139,7 +155,6 @@ public class AuthController {
|
|
@OperateLog(enable = false) // 避免 Post 请求被记录操作日志
|
|
@OperateLog(enable = false) // 避免 Post 请求被记录操作日志
|
|
public CommonResult<AuthLoginRespVO> socialBindLogin(@RequestBody @Valid AuthSocialBindLoginReqVO reqVO) {
|
|
public CommonResult<AuthLoginRespVO> socialBindLogin(@RequestBody @Valid AuthSocialBindLoginReqVO reqVO) {
|
|
String token = authService.socialBindLogin(reqVO, getClientIP(), getUserAgent());
|
|
String token = authService.socialBindLogin(reqVO, getClientIP(), getUserAgent());
|
|
- // 返回结果
|
|
|
|
return success(AuthLoginRespVO.builder().token(token).build());
|
|
return success(AuthLoginRespVO.builder().token(token).build());
|
|
}
|
|
}
|
|
|
|
|