From 1578440ca1921dd9bdb74623e8c4991960a5e70a Mon Sep 17 00:00:00 2001
From: houzhongjian <houzhongyi@126.com>
Date: 星期四, 10 四月 2025 14:10:19 +0800
Subject: [PATCH] 恢复iailab-framework

---
 iailab-framework/iailab-common-biz-data-permission/src/main/java/com/iailab/framework/datapermission/config/IailabDataPermissionRpcAutoConfiguration.java |   35 +++++++++++++++++++++++++++++++++++
 1 files changed, 35 insertions(+), 0 deletions(-)

diff --git a/iailab-framework/iailab-common-biz-data-permission/src/main/java/com/iailab/framework/datapermission/config/IailabDataPermissionRpcAutoConfiguration.java b/iailab-framework/iailab-common-biz-data-permission/src/main/java/com/iailab/framework/datapermission/config/IailabDataPermissionRpcAutoConfiguration.java
new file mode 100644
index 0000000..e4ba244
--- /dev/null
+++ b/iailab-framework/iailab-common-biz-data-permission/src/main/java/com/iailab/framework/datapermission/config/IailabDataPermissionRpcAutoConfiguration.java
@@ -0,0 +1,35 @@
+package com.iailab.framework.datapermission.config;
+
+import com.iailab.framework.datapermission.core.rpc.DataPermissionRequestInterceptor;
+import com.iailab.framework.datapermission.core.rpc.DataPermissionRpcWebFilter;
+import org.springframework.boot.autoconfigure.AutoConfiguration;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
+import org.springframework.boot.web.servlet.FilterRegistrationBean;
+import org.springframework.context.annotation.Bean;
+
+import static com.iailab.framework.common.enums.WebFilterOrderEnum.TENANT_CONTEXT_FILTER;
+
+
+/**
+ * 数据权限针对 RPC 的自动配置类
+ *
+ * @author iailab
+ */
+@AutoConfiguration
+@ConditionalOnClass(name = "feign.RequestInterceptor")
+public class IailabDataPermissionRpcAutoConfiguration {
+
+    @Bean
+    public DataPermissionRequestInterceptor dataPermissionRequestInterceptor() {
+        return new DataPermissionRequestInterceptor();
+    }
+
+    @Bean
+    public FilterRegistrationBean<DataPermissionRpcWebFilter> dataPermissionRpcFilter() {
+        FilterRegistrationBean<DataPermissionRpcWebFilter> registrationBean = new FilterRegistrationBean<>();
+        registrationBean.setFilter(new DataPermissionRpcWebFilter());
+        registrationBean.setOrder(TENANT_CONTEXT_FILTER - 1); // 顺序没有绝对的要求,在租户 Filter 前面稳妥点
+        return registrationBean;
+    }
+
+}

--
Gitblit v1.9.3