mirror of
https://gitee.com/dromara/RuoYi-Cloud-Plus.git
synced 2025-09-25 05:25:12 +00:00
DataPermissionHelper.getContext()方法
This commit is contained in:
@@ -1,13 +1,11 @@
|
|||||||
package com.ruoyi.common.mybatis.helper;
|
package com.ruoyi.common.mybatis.helper;
|
||||||
|
|
||||||
|
import cn.dev33.satoken.context.SaHolder;
|
||||||
|
import cn.dev33.satoken.context.model.SaStorage;
|
||||||
import cn.hutool.core.util.ObjectUtil;
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import com.ruoyi.common.core.utils.ServletUtils;
|
|
||||||
import lombok.AccessLevel;
|
import lombok.AccessLevel;
|
||||||
import lombok.NoArgsConstructor;
|
import lombok.NoArgsConstructor;
|
||||||
import org.apache.dubbo.rpc.RpcContext;
|
|
||||||
import org.apache.dubbo.rpc.RpcServiceContext;
|
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@@ -35,21 +33,15 @@ public class DataPermissionHelper {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static Map<String, Object> getContext() {
|
public static Map<String, Object> getContext() {
|
||||||
HttpServletRequest request = ServletUtils.getRequest();
|
/*
|
||||||
Object attribute;
|
*借用satoken的SaStorage存储数据权限标识
|
||||||
if (request != null) {
|
*
|
||||||
attribute = request.getAttribute(DATA_PERMISSION_KEY);
|
*/
|
||||||
|
SaStorage saStorage = SaHolder.getStorage();
|
||||||
|
Object attribute = saStorage.get(DATA_PERMISSION_KEY);
|
||||||
if (ObjectUtil.isNull(attribute)) {
|
if (ObjectUtil.isNull(attribute)) {
|
||||||
request.setAttribute(DATA_PERMISSION_KEY, new HashMap<>());
|
saStorage.set(DATA_PERMISSION_KEY, new HashMap<>());
|
||||||
attribute = request.getAttribute(DATA_PERMISSION_KEY);
|
attribute = saStorage.get(DATA_PERMISSION_KEY);
|
||||||
}
|
|
||||||
} else {
|
|
||||||
RpcServiceContext context = RpcContext.getServiceContext();
|
|
||||||
attribute = context.getObjectAttachment(DATA_PERMISSION_KEY);
|
|
||||||
if (ObjectUtil.isNull(attribute)) {
|
|
||||||
context.setObjectAttachment(DATA_PERMISSION_KEY, new HashMap<>());
|
|
||||||
attribute = context.getObjectAttachment(DATA_PERMISSION_KEY);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
if (attribute instanceof Map) {
|
if (attribute instanceof Map) {
|
||||||
return (Map<String, Object>) attribute;
|
return (Map<String, Object>) attribute;
|
||||||
|
Reference in New Issue
Block a user