|
@@ -1,5 +1,7 @@
|
|
package com.chelvc.framework.security.interceptor;
|
|
package com.chelvc.framework.security.interceptor;
|
|
|
|
|
|
|
|
+import java.util.Objects;
|
|
|
|
+
|
|
import com.chelvc.framework.base.context.SessionContextHolder;
|
|
import com.chelvc.framework.base.context.SessionContextHolder;
|
|
import com.chelvc.framework.common.model.Platform;
|
|
import com.chelvc.framework.common.model.Platform;
|
|
import com.chelvc.framework.common.model.Terminal;
|
|
import com.chelvc.framework.common.model.Terminal;
|
|
@@ -99,7 +101,7 @@ public class MethodSecurityExpression implements MethodSecurityExpressionOperati
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public boolean isAuthenticated() {
|
|
public boolean isAuthenticated() {
|
|
- return !this.isAnonymous();
|
|
|
|
|
|
+ return Objects.nonNull(SessionContextHolder.getId());
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -138,6 +140,15 @@ public class MethodSecurityExpression implements MethodSecurityExpressionOperati
|
|
this.root.setDefaultRolePrefix(defaultRolePrefix);
|
|
this.root.setDefaultRolePrefix(defaultRolePrefix);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 判断是否是审核用户
|
|
|
|
+ *
|
|
|
|
+ * @return true/false
|
|
|
|
+ */
|
|
|
|
+ public boolean isAuditor() {
|
|
|
|
+ return SessionContextHolder.isAuditor();
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 判断是否是指定应用范围
|
|
* 判断是否是指定应用范围
|
|
*
|
|
*
|
|
@@ -148,6 +159,16 @@ public class MethodSecurityExpression implements MethodSecurityExpressionOperati
|
|
return SessionContextHolder.isScope(scopes);
|
|
return SessionContextHolder.isScope(scopes);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 判断是否是指定渠道
|
|
|
|
+ *
|
|
|
|
+ * @param channels 渠道数组
|
|
|
|
+ * @return true/false
|
|
|
|
+ */
|
|
|
|
+ public boolean isChannel(@NonNull String... channels) {
|
|
|
|
+ return SessionContextHolder.isChannel(channels);
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 判断是否是指定平台
|
|
* 判断是否是指定平台
|
|
*
|
|
*
|
|
@@ -167,4 +188,28 @@ public class MethodSecurityExpression implements MethodSecurityExpressionOperati
|
|
public boolean isTerminal(@NonNull Terminal... terminals) {
|
|
public boolean isTerminal(@NonNull Terminal... terminals) {
|
|
return SessionContextHolder.isTerminal(terminals);
|
|
return SessionContextHolder.isTerminal(terminals);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 判断是否在指定版本之前
|
|
|
|
+ *
|
|
|
|
+ * @param version 指定版本
|
|
|
|
+ * @param contains 是否包含当前版本号
|
|
|
|
+ * @return true/false
|
|
|
|
+ */
|
|
|
|
+ public boolean isBeforeVersion(@NonNull String version, boolean contains) {
|
|
|
|
+ Terminal terminal = SessionContextHolder.getTerminal();
|
|
|
|
+ return terminal != null && SessionContextHolder.isBeforeVersion(terminal, version, contains);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 判断是否在指定版本之后
|
|
|
|
+ *
|
|
|
|
+ * @param version 指定版本
|
|
|
|
+ * @param contains 是否包含当前版本号
|
|
|
|
+ * @return true/false
|
|
|
|
+ */
|
|
|
|
+ public boolean isAfterVersion(@NonNull String version, boolean contains) {
|
|
|
|
+ Terminal terminal = SessionContextHolder.getTerminal();
|
|
|
|
+ return terminal != null && SessionContextHolder.isAfterVersion(terminal, version, contains);
|
|
|
|
+ }
|
|
}
|
|
}
|