Merge remote-tracking branch 'origin/master' into shirc_dev

This commit is contained in:
shirenchuang
2021-04-23 10:18:30 +08:00
2 changed files with 6 additions and 7 deletions

View File

@@ -84,7 +84,7 @@ public class LoginServiceImpl implements LoginService {
return false; return false;
} }
boolean status = checkAuthority(request, accountService.getAccountRoleFromCache(username)); boolean status = checkAuthority(classRequestMappingValue, accountService.getAccountRoleFromCache(username));
if (status) { if (status) {
HttpSession session = request.getSession(); HttpSession session = request.getSession();
session.setAttribute(LoginConstant.SESSION_USERNAME_KEY, username); session.setAttribute(LoginConstant.SESSION_USERNAME_KEY, username);
@@ -94,19 +94,18 @@ public class LoginServiceImpl implements LoginService {
return false; return false;
} }
private boolean checkAuthority(HttpServletRequest request, AccountRoleEnum accountRoleEnum) { private boolean checkAuthority(String classRequestMappingValue, AccountRoleEnum accountRoleEnum) {
String uri = request.getRequestURI(); if (classRequestMappingValue.equals(ApiPrefix.API_V1_NORMAL_PREFIX)) {
if (uri.contains(ApiPrefix.API_V1_NORMAL_PREFIX)) {
// normal 接口都可以访问 // normal 接口都可以访问
return true; return true;
} }
if (uri.contains(ApiPrefix.API_V1_RD_PREFIX) ) { if (classRequestMappingValue.equals(ApiPrefix.API_V1_RD_PREFIX) ) {
// RD 接口 OP 或者 RD 可以访问 // RD 接口, OP 或者 RD 可以访问
return AccountRoleEnum.RD.equals(accountRoleEnum) || AccountRoleEnum.OP.equals(accountRoleEnum); return AccountRoleEnum.RD.equals(accountRoleEnum) || AccountRoleEnum.OP.equals(accountRoleEnum);
} }
if (uri.contains(ApiPrefix.API_V1_OP_PREFIX)) { if (classRequestMappingValue.equals(ApiPrefix.API_V1_OP_PREFIX)) {
// OP 接口只有 OP 可以访问 // OP 接口只有 OP 可以访问
return AccountRoleEnum.OP.equals(accountRoleEnum); return AccountRoleEnum.OP.equals(accountRoleEnum);
} }