Commit 018304d6 by shenjunjie

Merge branch 'release' into 'master'

Release

See merge request !284
parents 7ad4d7d0 e8257af2
...@@ -2,6 +2,7 @@ package com.zhiwei.brandkbs2.auth; ...@@ -2,6 +2,7 @@ package com.zhiwei.brandkbs2.auth;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.zhiwei.brandkbs2.common.GenericAttribute; import com.zhiwei.brandkbs2.common.GenericAttribute;
import com.zhiwei.brandkbs2.enmus.RoleEnum;
import com.zhiwei.brandkbs2.model.CommonCodeEnum; import com.zhiwei.brandkbs2.model.CommonCodeEnum;
import com.zhiwei.brandkbs2.model.ResponseResult; import com.zhiwei.brandkbs2.model.ResponseResult;
import com.zhiwei.brandkbs2.pojo.UserInfo; import com.zhiwei.brandkbs2.pojo.UserInfo;
...@@ -55,6 +56,18 @@ public class AuthAspect { ...@@ -55,6 +56,18 @@ public class AuthAspect {
public Object around(ProceedingJoinPoint joinPoint) throws Throwable { public Object around(ProceedingJoinPoint joinPoint) throws Throwable {
ServletRequestAttributes servletRequestAttributes = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()); ServletRequestAttributes servletRequestAttributes = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes());
HttpServletRequest request = servletRequestAttributes.getRequest(); HttpServletRequest request = servletRequestAttributes.getRequest();
Signature signature = joinPoint.getSignature();
Method method = ((MethodSignature) signature).getMethod();
Class<?> classTarget = joinPoint.getTarget().getClass();
// 优先使用方法权限
Auth auth = method.getAnnotation(Auth.class);
if (null == auth) {
auth = classTarget.getAnnotation(Auth.class);
}
// 不需要验证权限
if (null == auth || RoleEnum.NO_AUTHORISE == auth.role()) {
return joinPoint.proceed();
}
String token = request.getHeader(jwtKey); String token = request.getHeader(jwtKey);
// 存在有效token // 存在有效token
if (null != token && !Tools.tokenEmpty(token)) { if (null != token && !Tools.tokenEmpty(token)) {
......
...@@ -45,10 +45,17 @@ public class LoginController extends BaseController { ...@@ -45,10 +45,17 @@ public class LoginController extends BaseController {
@ApiOperation("用户登录") @ApiOperation("用户登录")
@PostMapping("/user/login") @PostMapping("/user/login")
@Auth(role = RoleEnum.CUSTOMER)
public ResponseResult login() { public ResponseResult login() {
return ResponseResult.success(userService.login().toMap()); return ResponseResult.success(userService.login().toMap());
} }
@ApiOperation("移动端用户登录")
@PostMapping("/mobile/login")
public ResponseResult mobileLogin(@RequestBody MobileLoginVO loginVO) {
return userService.mobileLogin(loginVO);
}
@ApiOperation("用户信息获取") @ApiOperation("用户信息获取")
@GetMapping("/user/getLoginInfo") @GetMapping("/user/getLoginInfo")
@Auth(role = RoleEnum.CUSTOMER) @Auth(role = RoleEnum.CUSTOMER)
...@@ -56,20 +63,21 @@ public class LoginController extends BaseController { ...@@ -56,20 +63,21 @@ public class LoginController extends BaseController {
return ResponseResult.success(userService.getLoginInfo()); return ResponseResult.success(userService.getLoginInfo());
} }
@ApiOperation("重置绑定关系(本地测试)") // @ApiOperation("重置绑定关系(本地测试)")
@ApiImplicitParams( // @ApiImplicitParams(
@ApiImplicitParam(name = "username", value = "用户名", required = false, paramType = "query", dataType = "string")) // @ApiImplicitParam(name = "username", value = "用户名", required = false, paramType = "query", dataType = "string"))
@PostMapping("/user/bind/reset") // @PostMapping("/user/bind/reset")
public ResponseResult resetBind(@RequestBody JSONObject json) { // public ResponseResult resetBind(@RequestBody JSONObject json) {
userService.resetBind(json.getString("username")); // userService.resetBind(json.getString("username"));
return ResponseResult.success(); // return ResponseResult.success();
} // }
@ApiOperation("老用户账号绑定") @ApiOperation("老用户账号绑定")
@ApiImplicitParams({ @ApiImplicitParams({
@ApiImplicitParam(name = "username", value = "用户名", required = false, paramType = "query", dataType = "string"), @ApiImplicitParam(name = "username", value = "用户名", required = false, paramType = "query", dataType = "string"),
@ApiImplicitParam(name = "password", value = "密码", required = false, paramType = "query", dataType = "string")}) @ApiImplicitParam(name = "password", value = "密码", required = false, paramType = "query", dataType = "string")})
@PostMapping("/user/bind") @PostMapping("/user/bind")
@Auth(role = RoleEnum.CUSTOMER)
public ResponseResult bindUser(@RequestBody JSONObject json) { public ResponseResult bindUser(@RequestBody JSONObject json) {
String username = json.getString("username"); String username = json.getString("username");
String password = json.getString("password"); String password = json.getString("password");
...@@ -78,6 +86,7 @@ public class LoginController extends BaseController { ...@@ -78,6 +86,7 @@ public class LoginController extends BaseController {
@ApiOperation("跳过绑定(赋默认权限)") @ApiOperation("跳过绑定(赋默认权限)")
@PostMapping("/user/bind/skip") @PostMapping("/user/bind/skip")
@Auth(role = RoleEnum.NO_AUTHORISE_WITH_TOKEN)
public ResponseResult skipBindUser() { public ResponseResult skipBindUser() {
return ResponseResult.success(userService.skipBindUser()); return ResponseResult.success(userService.skipBindUser());
} }
...@@ -85,12 +94,14 @@ public class LoginController extends BaseController { ...@@ -85,12 +94,14 @@ public class LoginController extends BaseController {
@ApiOperation("校验用户是否已有绑定关系") @ApiOperation("校验用户是否已有绑定关系")
@LogRecord(description = "登录") @LogRecord(description = "登录")
@GetMapping("/user/login/checkBind") @GetMapping("/user/login/checkBind")
@Auth(role = RoleEnum.NO_AUTHORISE_WITH_TOKEN)
public ResponseResult checkBind() { public ResponseResult checkBind() {
return ResponseResult.success(userService.checkUserRoles()); return ResponseResult.success(userService.checkUserRoles());
} }
@ApiOperation("获取当前用户拥有的所有项目(含过期)") @ApiOperation("获取当前用户拥有的所有项目(含过期)")
@GetMapping("/user/login/getUserAllProjects") @GetMapping("/user/login/getUserAllProjects")
@Auth(role = RoleEnum.NO_AUTHORISE_WITH_TOKEN)
public ResponseResult getLoginUserAllProjects() { public ResponseResult getLoginUserAllProjects() {
return ResponseResult.success(ProjectService.getLoginUserAllProjects()); return ResponseResult.success(ProjectService.getLoginUserAllProjects());
} }
...@@ -107,12 +118,6 @@ public class LoginController extends BaseController { ...@@ -107,12 +118,6 @@ public class LoginController extends BaseController {
return userCenterService.verifyTicket(ticket); return userCenterService.verifyTicket(ticket);
} }
@ApiOperation("移动端用户登录")
@PostMapping("/mobile/login")
public ResponseResult mobileLogin(@RequestBody MobileLoginVO loginVO) {
return userService.mobileLogin(loginVO);
}
@ApiOperation("测试接口") @ApiOperation("测试接口")
@GetMapping("/test") @GetMapping("/test")
public ResponseResult test() { public ResponseResult test() {
......
...@@ -27,7 +27,12 @@ public enum RoleEnum { ...@@ -27,7 +27,12 @@ public enum RoleEnum {
/** /**
* 无需权限 * 无需权限
*/ */
NO_AUTHORISE(-1, "无需权限"); NO_AUTHORISE(-1, "无需权限"),
/**
* 无需权限带解析token
*/
NO_AUTHORISE_WITH_TOKEN(-2, "无需权限并解析token");
private final int state; private final int state;
private final String name; private final String name;
......
...@@ -47,7 +47,7 @@ public class MainAuthInterceptor implements HandlerInterceptor { ...@@ -47,7 +47,7 @@ public class MainAuthInterceptor implements HandlerInterceptor {
} }
} }
// 不需要验证权限 // 不需要验证权限
if (null == auth || RoleEnum.NO_AUTHORISE == auth.role()) { if (null == auth || RoleEnum.NO_AUTHORISE == auth.role() || RoleEnum.NO_AUTHORISE_WITH_TOKEN == auth.role()) {
return true; return true;
} }
String token = request.getHeader("Token"); String token = request.getHeader("Token");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment