add 增加 dubbo 数据权限上下文参数传递过滤器 使 DataPermissionHelper 支持全局使用

This commit is contained in:
疯狂的狮子Li
2022-04-27 19:24:20 +08:00
parent 763c532deb
commit 3bc1d164d9
2 changed files with 29 additions and 0 deletions

View File

@@ -0,0 +1,28 @@
package com.ruoyi.common.mybatis.filter;
import com.ruoyi.common.mybatis.helper.DataPermissionHelper;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.common.constants.CommonConstants;
import org.apache.dubbo.common.extension.Activate;
import org.apache.dubbo.rpc.*;
import java.util.Map;
/**
* dubbo 数据权限参数传递
*
* @author Lion Li
*/
@Slf4j
@Activate(group = {CommonConstants.CONSUMER})
public class DubboDataPermissionFilter implements Filter {
@Override
public Result invoke(Invoker<?> invoker, Invocation invocation) throws RpcException {
RpcServiceContext context = RpcContext.getServiceContext();
Map<String, Object> dataPermissionContext = DataPermissionHelper.getContext();
context.setObjectAttachment(DataPermissionHelper.DATA_PERMISSION_KEY, dataPermissionContext);
return invoker.invoke(invocation);
}
}

View File

@@ -0,0 +1 @@
dubboDataPermissionFilter=com.ruoyi.common.mybatis.filter.DubboDataPermissionFilter