权限码限定必须为String类型

This commit is contained in:
shengzhang
2020-12-28 01:14:34 +08:00
parent d3792ad286
commit 43308bf593
8 changed files with 184 additions and 131 deletions

View File

@@ -14,7 +14,7 @@ public interface StpInterface {
* @param loginKey 具体的stp标识
* @return 该账号id具有的权限码集合
*/
public List<Object> getPermissionCodeList(Object loginId, String loginKey);
public List<String> getPermissionCodeList(Object loginId, String loginKey);
}

View File

@@ -10,8 +10,8 @@ import java.util.List;
public class StpInterfaceDefaultImpl implements StpInterface {
@Override
public List<Object> getPermissionCodeList(Object loginId, String loginKey) {
return new ArrayList<Object>();
public List<String> getPermissionCodeList(Object loginId, String loginKey) {
return new ArrayList<String>();
}
}

View File

@@ -678,9 +678,9 @@ public class StpLogic {
* @param permissionCode 权限码
* @return 是否含有指定权限
*/
public boolean hasPermission(Object loginId, Object permissionCode) {
List<Object> pcodeList = SaTokenManager.getStpInterface().getPermissionCodeList(loginId, loginKey);
return !(pcodeList == null || pcodeList.contains(permissionCode) == false);
public boolean hasPermission(Object loginId, String permissionCode) {
List<String> permissionCodeList = SaTokenManager.getStpInterface().getPermissionCodeList(loginId, loginKey);
return !(permissionCodeList == null || permissionCodeList.contains(permissionCode) == false);
}
/**
@@ -688,7 +688,7 @@ public class StpLogic {
* @param permissionCode 权限码
* @return 是否含有指定权限
*/
public boolean hasPermission(Object permissionCode) {
public boolean hasPermission(String permissionCode) {
return hasPermission(getLoginId(), permissionCode);
}
@@ -696,7 +696,7 @@ public class StpLogic {
* 当前账号是否含有指定权限, 没有就抛出异常
* @param permissionCode 权限码
*/
public void checkPermission(Object permissionCode) {
public void checkPermission(String permissionCode) {
if(hasPermission(permissionCode) == false) {
throw new NotPermissionException(permissionCode, this.loginKey);
}
@@ -706,11 +706,11 @@ public class StpLogic {
* 当前账号是否含有指定权限, [指定多个,必须全都有]
* @param permissionCodeArray 权限码数组
*/
public void checkPermissionAnd(Object... permissionCodeArray){
public void checkPermissionAnd(String... permissionCodeArray){
Object loginId = getLoginId();
List<Object> pcodeList = SaTokenManager.getStpInterface().getPermissionCodeList(loginId, loginKey);
for (Object pcode : permissionCodeArray) {
if(pcodeList.contains(pcode) == false) {
List<String> permissionCodeList = SaTokenManager.getStpInterface().getPermissionCodeList(loginId, loginKey);
for (String pcode : permissionCodeArray) {
if(permissionCodeList.contains(pcode) == false) {
throw new NotPermissionException(pcode, this.loginKey); // 没有权限抛出异常
}
}
@@ -720,11 +720,11 @@ public class StpLogic {
* 当前账号是否含有指定权限, [指定多个,有一个就可以通过]
* @param permissionCodeArray 权限码数组
*/
public void checkPermissionOr(Object... permissionCodeArray){
public void checkPermissionOr(String... permissionCodeArray){
Object loginId = getLoginId();
List<Object> pcodeList = SaTokenManager.getStpInterface().getPermissionCodeList(loginId, loginKey);
for (Object pcode : permissionCodeArray) {
if(pcodeList.contains(pcode) == true) {
List<String> permissionCodeList = SaTokenManager.getStpInterface().getPermissionCodeList(loginId, loginKey);
for (String permissionCode : permissionCodeArray) {
if(permissionCodeList.contains(permissionCode) == true) {
return; // 有的话提前退出
}
}

View File

@@ -311,8 +311,8 @@ public class StpUtil {
* @param permissionCode 权限码
* @return 是否含有指定权限
*/
public static boolean hasPermission(Object loginId, Object pcode) {
return stpLogic.hasPermission(loginId, pcode);
public static boolean hasPermission(Object loginId, String permissionCode) {
return stpLogic.hasPermission(loginId, permissionCode);
}
/**
@@ -320,7 +320,7 @@ public class StpUtil {
* @param permissionCode 权限码
* @return 是否含有指定权限
*/
public static boolean hasPermission(Object permissionCode) {
public static boolean hasPermission(String permissionCode) {
return stpLogic.hasPermission(permissionCode);
}
@@ -328,7 +328,7 @@ public class StpUtil {
* 当前账号是否含有指定权限, 没有就抛出异常
* @param permissionCode 权限码
*/
public static void checkPermission(Object permissionCode) {
public static void checkPermission(String permissionCode) {
stpLogic.checkPermission(permissionCode);
}
@@ -336,7 +336,7 @@ public class StpUtil {
* 当前账号是否含有指定权限, [指定多个,必须全都有]
* @param permissionCodeArray 权限码数组
*/
public static void checkPermissionAnd(Object... permissionCodeArray) {
public static void checkPermissionAnd(String... permissionCodeArray) {
stpLogic.checkPermissionAnd(permissionCodeArray);
}
@@ -344,7 +344,7 @@ public class StpUtil {
* 当前账号是否含有指定权限, [指定多个,有一个就可以通过]
* @param permissionCodeArray 权限码数组
*/
public static void checkPermissionOr(Object... permissionCodeArray) {
public static void checkPermissionOr(String... permissionCodeArray) {
stpLogic.checkPermissionOr(permissionCodeArray);
}