diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index ea777c8..ac357cf 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -13,10 +13,10 @@
-
-
-
-
+
+
+
+
diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml
index 0a0608c..1945c07 100644
--- a/.idea/jarRepositories.xml
+++ b/.idea/jarRepositories.xml
@@ -1,16 +1,16 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/.idea/modules.xml b/.idea/modules.xml
deleted file mode 100644
index 58b6083..0000000
--- a/.idea/modules.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/dependencies/pom.xml b/dependencies/pom.xml
index 03a30c6..e90b564 100644
--- a/dependencies/pom.xml
+++ b/dependencies/pom.xml
@@ -85,8 +85,8 @@
1.4.0
1.28
2.6.10
- 1.2.11
- 1.2.11
+ 1.5.8
+ 1.5.8
2.9.3
2.3.0
diff --git a/framework/commons/pom.xml b/framework/commons/pom.xml
index 654cec1..bb63b37 100644
--- a/framework/commons/pom.xml
+++ b/framework/commons/pom.xml
@@ -171,6 +171,27 @@
spring-boot-starter-test
test
+
+ com.baomidou
+ mybatis-plus-annotation
+ 3.5.8
+ compile
+
+
+ org.mybatis
+ mybatis
+ 3.5.16
+
+
+ io.github.mouzt
+ bizlog-sdk
+ 3.0.6
+
+
+ org.lionsoul
+ ip2region
+ 2.7.0
+
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/aop/TenantIgnore.java b/framework/commons/src/main/java/cd/casic/framework/commons/annotation/TenantIgnore.java
similarity index 92%
rename from framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/aop/TenantIgnore.java
rename to framework/commons/src/main/java/cd/casic/framework/commons/annotation/TenantIgnore.java
index 3873ac6..fb61455 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/aop/TenantIgnore.java
+++ b/framework/commons/src/main/java/cd/casic/framework/commons/annotation/TenantIgnore.java
@@ -1,4 +1,4 @@
-package cd.casic.framework.tenant.core.aop;
+package cd.casic.framework.commons.annotation;
import java.lang.annotation.*;
diff --git a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/config/WebProperties.java b/framework/commons/src/main/java/cd/casic/framework/commons/config/WebProperties.java
similarity index 97%
rename from framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/config/WebProperties.java
rename to framework/commons/src/main/java/cd/casic/framework/commons/config/WebProperties.java
index 7b46a59..ccdc5db 100644
--- a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/config/WebProperties.java
+++ b/framework/commons/src/main/java/cd/casic/framework/commons/config/WebProperties.java
@@ -1,4 +1,4 @@
-package cd.casic.framework.web.config;
+package cd.casic.framework.commons.config;
import jakarta.validation.Valid;
import jakarta.validation.constraints.NotEmpty;
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/context/TenantContextHolder.java b/framework/commons/src/main/java/cd/casic/framework/commons/context/TenantContextHolder.java
similarity index 96%
rename from framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/context/TenantContextHolder.java
rename to framework/commons/src/main/java/cd/casic/framework/commons/context/TenantContextHolder.java
index 8745378..746ac1e 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/context/TenantContextHolder.java
+++ b/framework/commons/src/main/java/cd/casic/framework/commons/context/TenantContextHolder.java
@@ -1,4 +1,4 @@
-package cd.casic.framework.tenant.core.context;
+package cd.casic.framework.commons.context;
import com.alibaba.ttl.TransmittableThreadLocal;
diff --git a/framework/spring-boot-starter-mybatis/src/main/java/cd/casic/framework/mybatis/core/dataobject/BaseDO.java b/framework/commons/src/main/java/cd/casic/framework/commons/dataobject/BaseDO.java
similarity index 96%
rename from framework/spring-boot-starter-mybatis/src/main/java/cd/casic/framework/mybatis/core/dataobject/BaseDO.java
rename to framework/commons/src/main/java/cd/casic/framework/commons/dataobject/BaseDO.java
index 5376ed5..ada3e2f 100644
--- a/framework/spring-boot-starter-mybatis/src/main/java/cd/casic/framework/mybatis/core/dataobject/BaseDO.java
+++ b/framework/commons/src/main/java/cd/casic/framework/commons/dataobject/BaseDO.java
@@ -1,4 +1,4 @@
-package cd.casic.framework.mybatis.core.dataobject;
+package cd.casic.framework.commons.dataobject;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dept/DeptDO.java b/framework/commons/src/main/java/cd/casic/framework/commons/dataobject/dept/DeptDO.java
similarity index 88%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dept/DeptDO.java
rename to framework/commons/src/main/java/cd/casic/framework/commons/dataobject/dept/DeptDO.java
index 2c70e20..d2052d5 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dept/DeptDO.java
+++ b/framework/commons/src/main/java/cd/casic/framework/commons/dataobject/dept/DeptDO.java
@@ -1,8 +1,7 @@
-package cd.casic.module.system.dal.dataobject.dept;
+package cd.casic.framework.commons.dataobject.dept;
import cd.casic.framework.commons.enums.CommonStatusEnum;
-import cd.casic.framework.tenant.core.db.TenantBaseDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.commons.dataobject.tenant.TenantBaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dept/PostDO.java b/framework/commons/src/main/java/cd/casic/framework/commons/dataobject/dept/PostDO.java
similarity index 90%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dept/PostDO.java
rename to framework/commons/src/main/java/cd/casic/framework/commons/dataobject/dept/PostDO.java
index 1708b3c..604e2a5 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dept/PostDO.java
+++ b/framework/commons/src/main/java/cd/casic/framework/commons/dataobject/dept/PostDO.java
@@ -1,7 +1,7 @@
-package cd.casic.module.system.dal.dataobject.dept;
+package cd.casic.framework.commons.dataobject.dept;
import cd.casic.framework.commons.enums.CommonStatusEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dept/UserPostDO.java b/framework/commons/src/main/java/cd/casic/framework/commons/dataobject/dept/UserPostDO.java
similarity index 83%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dept/UserPostDO.java
rename to framework/commons/src/main/java/cd/casic/framework/commons/dataobject/dept/UserPostDO.java
index 6938877..3c8740c 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dept/UserPostDO.java
+++ b/framework/commons/src/main/java/cd/casic/framework/commons/dataobject/dept/UserPostDO.java
@@ -1,7 +1,6 @@
-package cd.casic.module.system.dal.dataobject.dept;
+package cd.casic.framework.commons.dataobject.dept;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/framework/spring-boot-starter-biz-ip/src/main/java/cd/casic/framework/redis/core/Area.java b/framework/commons/src/main/java/cd/casic/framework/commons/util/redis/core/Area.java
similarity index 91%
rename from framework/spring-boot-starter-biz-ip/src/main/java/cd/casic/framework/redis/core/Area.java
rename to framework/commons/src/main/java/cd/casic/framework/commons/util/redis/core/Area.java
index 6c1c9b6..4270bc8 100644
--- a/framework/spring-boot-starter-biz-ip/src/main/java/cd/casic/framework/redis/core/Area.java
+++ b/framework/commons/src/main/java/cd/casic/framework/commons/util/redis/core/Area.java
@@ -1,6 +1,6 @@
-package cd.casic.framework.redis.core;
+package cd.casic.framework.commons.util.redis.core;
-import cd.casic.framework.redis.core.enums.AreaTypeEnum;
+import cd.casic.framework.commons.util.redis.core.enums.AreaTypeEnum;
import com.fasterxml.jackson.annotation.JsonBackReference;
import com.fasterxml.jackson.annotation.JsonManagedReference;
import lombok.AllArgsConstructor;
diff --git a/framework/spring-boot-starter-biz-ip/src/main/java/cd/casic/framework/redis/core/enums/AreaTypeEnum.java b/framework/commons/src/main/java/cd/casic/framework/commons/util/redis/core/enums/AreaTypeEnum.java
similarity index 92%
rename from framework/spring-boot-starter-biz-ip/src/main/java/cd/casic/framework/redis/core/enums/AreaTypeEnum.java
rename to framework/commons/src/main/java/cd/casic/framework/commons/util/redis/core/enums/AreaTypeEnum.java
index c858422..df7a572 100644
--- a/framework/spring-boot-starter-biz-ip/src/main/java/cd/casic/framework/redis/core/enums/AreaTypeEnum.java
+++ b/framework/commons/src/main/java/cd/casic/framework/commons/util/redis/core/enums/AreaTypeEnum.java
@@ -1,4 +1,4 @@
-package cd.casic.framework.redis.core.enums;
+package cd.casic.framework.commons.util.redis.core.enums;
import cd.casic.framework.commons.core.IntArrayValuable;
import lombok.AllArgsConstructor;
diff --git a/framework/spring-boot-starter-biz-ip/src/main/java/cd/casic/framework/redis/core/utils/AreaUtils.java b/framework/commons/src/main/java/cd/casic/framework/commons/util/redis/core/utils/AreaUtils.java
similarity index 97%
rename from framework/spring-boot-starter-biz-ip/src/main/java/cd/casic/framework/redis/core/utils/AreaUtils.java
rename to framework/commons/src/main/java/cd/casic/framework/commons/util/redis/core/utils/AreaUtils.java
index 1a1bf48..ab30493 100644
--- a/framework/spring-boot-starter-biz-ip/src/main/java/cd/casic/framework/redis/core/utils/AreaUtils.java
+++ b/framework/commons/src/main/java/cd/casic/framework/commons/util/redis/core/utils/AreaUtils.java
@@ -1,7 +1,7 @@
-package cd.casic.framework.redis.core.utils;
+package cd.casic.framework.commons.util.redis.core.utils;
-import cd.casic.framework.redis.core.Area;
-import cd.casic.framework.redis.core.enums.AreaTypeEnum;
+import cd.casic.framework.commons.util.redis.core.Area;
+import cd.casic.framework.commons.util.redis.core.enums.AreaTypeEnum;
import cd.casic.framework.commons.util.object.ObjectUtils;
import cn.hutool.core.io.resource.ResourceUtil;
import cn.hutool.core.lang.Assert;
diff --git a/framework/spring-boot-starter-biz-ip/src/main/java/cd/casic/framework/redis/core/utils/IPUtils.java b/framework/commons/src/main/java/cd/casic/framework/commons/util/redis/core/utils/IPUtils.java
similarity index 95%
rename from framework/spring-boot-starter-biz-ip/src/main/java/cd/casic/framework/redis/core/utils/IPUtils.java
rename to framework/commons/src/main/java/cd/casic/framework/commons/util/redis/core/utils/IPUtils.java
index 1c2bd00..90ec64a 100644
--- a/framework/spring-boot-starter-biz-ip/src/main/java/cd/casic/framework/redis/core/utils/IPUtils.java
+++ b/framework/commons/src/main/java/cd/casic/framework/commons/util/redis/core/utils/IPUtils.java
@@ -1,6 +1,6 @@
-package cd.casic.framework.redis.core.utils;
+package cd.casic.framework.commons.util.redis.core.utils;
-import cd.casic.framework.redis.core.Area;
+import cd.casic.framework.commons.util.redis.core.Area;
import cn.hutool.core.io.resource.ResourceUtil;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/util/TenantUtils.java b/framework/commons/src/main/java/cd/casic/framework/commons/util/tenant/TenantUtils.java
similarity index 90%
rename from framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/util/TenantUtils.java
rename to framework/commons/src/main/java/cd/casic/framework/commons/util/tenant/TenantUtils.java
index 22f4d57..9e657b6 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/util/TenantUtils.java
+++ b/framework/commons/src/main/java/cd/casic/framework/commons/util/tenant/TenantUtils.java
@@ -1,12 +1,12 @@
-package cd.casic.framework.tenant.core.util;
+package cd.casic.framework.commons.util.tenant;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
+import cd.casic.framework.commons.context.TenantContextHolder;
+import cd.casic.framework.commons.util.util.WebFrameworkUtils;
import java.util.Map;
import java.util.concurrent.Callable;
-import static cd.casic.framework.web.core.util.WebFrameworkUtils.HEADER_TENANT_ID;
/**
* 多租户 Util
@@ -87,7 +87,7 @@ public class TenantUtils {
*/
public static void addTenantHeader(Map headers, Long tenantId) {
if (tenantId != null) {
- headers.put(HEADER_TENANT_ID, tenantId.toString());
+ headers.put(WebFrameworkUtils.HEADER_TENANT_ID, tenantId.toString());
}
}
diff --git a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/util/WebFrameworkUtils.java b/framework/commons/src/main/java/cd/casic/framework/commons/util/util/WebFrameworkUtils.java
similarity index 97%
rename from framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/util/WebFrameworkUtils.java
rename to framework/commons/src/main/java/cd/casic/framework/commons/util/util/WebFrameworkUtils.java
index 5f83f07..a1dd8e5 100644
--- a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/util/WebFrameworkUtils.java
+++ b/framework/commons/src/main/java/cd/casic/framework/commons/util/util/WebFrameworkUtils.java
@@ -1,9 +1,10 @@
-package cd.casic.framework.web.core.util;
+package cd.casic.framework.commons.util.util;
+import cd.casic.framework.commons.config.WebProperties;
import cd.casic.framework.commons.enums.TerminalEnum;
import cd.casic.framework.commons.enums.UserTypeEnum;
import cd.casic.framework.commons.pojo.CommonResult;
-import cd.casic.framework.web.config.WebProperties;
+
import cn.hutool.core.util.NumberUtil;
import jakarta.servlet.ServletRequest;
import jakarta.servlet.http.HttpServletRequest;
diff --git a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/apilog/config/OpsApiLogAutoConfiguration.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsApiLogAutoConfiguration.java
similarity index 93%
rename from framework/spring-boot-starter-web/src/main/java/cd/casic/framework/apilog/config/OpsApiLogAutoConfiguration.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsApiLogAutoConfiguration.java
index f28fe46..a64f861 100644
--- a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/apilog/config/OpsApiLogAutoConfiguration.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsApiLogAutoConfiguration.java
@@ -1,10 +1,10 @@
-package cd.casic.framework.apilog.config;
+package cd.casic.framework.datapermission.config;
import cd.casic.framework.apilog.core.filter.ApiAccessLogFilter;
import cd.casic.framework.apilog.core.interceptor.ApiAccessLogInterceptor;
+import cd.casic.framework.commons.config.WebProperties;
import cd.casic.framework.commons.enums.WebFilterOrderEnum;
-import cd.casic.framework.web.config.OpsWebAutoConfiguration;
-import cd.casic.framework.web.config.WebProperties;
+
import cd.casic.module.infra.api.logger.ApiAccessLogApi;
import jakarta.servlet.Filter;
import org.springframework.beans.factory.annotation.Value;
diff --git a/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsDeptDataPermissionAutoConfiguration.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsDeptDataPermissionAutoConfiguration.java
index 21992c4..3d071e3 100644
--- a/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsDeptDataPermissionAutoConfiguration.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsDeptDataPermissionAutoConfiguration.java
@@ -2,8 +2,9 @@ package cd.casic.framework.datapermission.config;
import cd.casic.framework.datapermission.core.rule.dept.DeptDataPermissionRule;
import cd.casic.framework.datapermission.core.rule.dept.DeptDataPermissionRuleCustomizer;
+import cd.casic.framework.datapermission.service.PermissionApi;
import cd.casic.framework.security.core.LoginUser;
-import cd.casic.module.system.api.permission.PermissionApi;
+
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
diff --git a/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/config/OpsSecurityAutoConfiguration.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsSecurityAutoConfiguration.java
similarity index 83%
rename from framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/config/OpsSecurityAutoConfiguration.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsSecurityAutoConfiguration.java
index 517b3af..f444784 100644
--- a/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/config/OpsSecurityAutoConfiguration.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsSecurityAutoConfiguration.java
@@ -1,15 +1,17 @@
-package cd.casic.framework.security.config;
+package cd.casic.framework.datapermission.config;
+import cd.casic.framework.datapermission.service.PermissionApi;
+import cd.casic.framework.datapermission.service.SecurityFrameworkService;
+import cd.casic.framework.datapermission.service.SecurityFrameworkServiceImpl;
+import cd.casic.framework.datapermission.service.user.OAuth2TokenApi;
+import cd.casic.framework.datapermission.service.user.OAuth2TokenApiImpl;
+import cd.casic.framework.security.config.SecurityProperties;
import cd.casic.framework.security.core.context.TransmittableThreadLocalSecurityContextHolderStrategy;
-import cd.casic.framework.security.core.filter.TokenAuthenticationFilter;
+import cd.casic.framework.datapermission.core.filter.TokenAuthenticationFilter;
import cd.casic.framework.security.core.handler.AccessDeniedHandlerImpl;
import cd.casic.framework.security.core.handler.AuthenticationEntryPointImpl;
-import cd.casic.framework.security.core.service.SecurityFrameworkService;
-import cd.casic.framework.security.core.service.SecurityFrameworkServiceImpl;
-import cd.casic.framework.web.core.handler.GlobalExceptionHandler;
-import cd.casic.module.system.api.oauth2.OAuth2TokenApi;
-import cd.casic.module.system.api.permission.PermissionApi;
+import cd.casic.framework.datapermission.handler.GlobalExceptionHandler;
import jakarta.annotation.Resource;
import org.springframework.beans.factory.config.MethodInvokingFactoryBean;
import org.springframework.boot.autoconfigure.AutoConfiguration;
@@ -68,12 +70,16 @@ public class OpsSecurityAutoConfiguration {
/**
* Token 认证过滤器 Bean
*/
+
@Bean
public TokenAuthenticationFilter authenticationTokenFilter(GlobalExceptionHandler globalExceptionHandler,
OAuth2TokenApi oauth2TokenApi) {
return new TokenAuthenticationFilter(securityProperties, globalExceptionHandler, oauth2TokenApi);
}
-
+ @Bean
+ public OAuth2TokenApi oAuth2TokenApi(){
+ return new OAuth2TokenApiImpl();
+ }
@Bean("ss") // 使用 Spring Security 的缩写,方便使用
public SecurityFrameworkService securityFrameworkService(PermissionApi permissionApi) {
return new SecurityFrameworkServiceImpl(permissionApi);
diff --git a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/config/OpsWebAutoConfiguration.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsWebAutoConfiguration.java
similarity index 94%
rename from framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/config/OpsWebAutoConfiguration.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsWebAutoConfiguration.java
index d4703f6..7d7497b 100644
--- a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/config/OpsWebAutoConfiguration.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsWebAutoConfiguration.java
@@ -1,11 +1,12 @@
-package cd.casic.framework.web.config;
+package cd.casic.framework.datapermission.config;
+import cd.casic.framework.commons.config.WebProperties;
import cd.casic.framework.commons.enums.WebFilterOrderEnum;
+import cd.casic.framework.datapermission.handler.GlobalExceptionHandler;
+import cd.casic.framework.datapermission.handler.GlobalResponseBodyHandler;
import cd.casic.framework.web.core.filter.CacheRequestBodyFilter;
import cd.casic.framework.web.core.filter.DemoFilter;
-import cd.casic.framework.web.core.handler.GlobalExceptionHandler;
-import cd.casic.framework.web.core.handler.GlobalResponseBodyHandler;
-import cd.casic.framework.web.core.util.WebFrameworkUtils;
+import cd.casic.framework.commons.util.util.WebFrameworkUtils;
import cd.casic.module.infra.api.logger.ApiErrorLogApi;
import jakarta.annotation.Resource;
import jakarta.servlet.Filter;
diff --git a/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/config/OpsWebSecurityConfigurerAdapter.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsWebSecurityConfigurerAdapter.java
similarity index 97%
rename from framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/config/OpsWebSecurityConfigurerAdapter.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsWebSecurityConfigurerAdapter.java
index 210931c..291462c 100644
--- a/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/config/OpsWebSecurityConfigurerAdapter.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsWebSecurityConfigurerAdapter.java
@@ -1,7 +1,9 @@
-package cd.casic.framework.security.config;
+package cd.casic.framework.datapermission.config;
-import cd.casic.framework.security.core.filter.TokenAuthenticationFilter;
-import cd.casic.framework.web.config.WebProperties;
+import cd.casic.framework.commons.config.WebProperties;
+import cd.casic.framework.datapermission.core.filter.TokenAuthenticationFilter;
+import cd.casic.framework.security.config.AuthorizeRequestsCustomizer;
+import cd.casic.framework.security.config.SecurityProperties;
import cn.hutool.core.collection.CollUtil;
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
diff --git a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/xss/config/OpsXssAutoConfiguration.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsXssAutoConfiguration.java
similarity index 91%
rename from framework/spring-boot-starter-web/src/main/java/cd/casic/framework/xss/config/OpsXssAutoConfiguration.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsXssAutoConfiguration.java
index 4368f17..aaa8f2d 100644
--- a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/xss/config/OpsXssAutoConfiguration.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/OpsXssAutoConfiguration.java
@@ -1,7 +1,8 @@
-package cd.casic.framework.xss.config;
+package cd.casic.framework.datapermission.config;
import cd.casic.framework.commons.enums.WebFilterOrderEnum;
+import cd.casic.framework.xss.config.XssProperties;
import cd.casic.framework.xss.core.clean.JsoupXssCleaner;
import cd.casic.framework.xss.core.clean.XssCleaner;
import cd.casic.framework.xss.core.filter.XssFilter;
@@ -18,7 +19,6 @@ import org.springframework.context.annotation.Bean;
import org.springframework.util.PathMatcher;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
-import static cd.casic.framework.web.config.OpsWebAutoConfiguration.createFilterBean;
@AutoConfiguration
@EnableConfigurationProperties(XssProperties.class)
@@ -58,7 +58,7 @@ public class OpsXssAutoConfiguration implements WebMvcConfigurer {
@Bean
@ConditionalOnBean(XssCleaner.class)
public FilterRegistrationBean xssFilter(XssProperties properties, PathMatcher pathMatcher, XssCleaner xssCleaner) {
- return createFilterBean(new XssFilter(properties, pathMatcher, xssCleaner), WebFilterOrderEnum.XSS_FILTER);
+ return OpsWebAutoConfiguration.createFilterBean(new XssFilter(properties, pathMatcher, xssCleaner), WebFilterOrderEnum.XSS_FILTER);
}
}
diff --git a/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/TenantProperties.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/TenantProperties.java
new file mode 100644
index 0000000..497a1b5
--- /dev/null
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/config/TenantProperties.java
@@ -0,0 +1,49 @@
+package cd.casic.framework.datapermission.config;
+
+import lombok.Data;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+
+import java.util.Collections;
+import java.util.Set;
+
+/**
+ * 多租户配置
+ *
+ * @author mianbin modified from yudao
+ */
+@ConfigurationProperties(prefix = "ops.tenant")
+@Data
+public class TenantProperties {
+
+ /**
+ * 租户是否开启
+ */
+ private static final Boolean ENABLE_DEFAULT = true;
+
+ /**
+ * 是否开启
+ */
+ private Boolean enable = ENABLE_DEFAULT;
+
+ /**
+ * 需要忽略多租户的请求
+ *
+ * 默认情况下,每个请求需要带上 tenant-id 的请求头。但是,部分请求是无需带上的,例如说短信回调、支付回调等 Open API!
+ */
+ private Set ignoreUrls = Collections.emptySet();
+
+ /**
+ * 需要忽略多租户的表
+ *
+ * 即默认所有表都开启多租户的功能,所以记得添加对应的 tenant_id 字段哟
+ */
+ private Set ignoreTables = Collections.emptySet();
+
+ /**
+ * 需要忽略多租户的 Spring Cache 缓存
+ *
+ * 即默认所有缓存都开启多租户的功能,所以记得添加对应的 tenant_id 字段哟
+ */
+ private Set ignoreCaches = Collections.emptySet();
+
+}
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/convert/tenant/TenantConvert.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/convert/TenantConvert.java
similarity index 73%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/convert/tenant/TenantConvert.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/convert/TenantConvert.java
index fa86046..d03871b 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/convert/tenant/TenantConvert.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/convert/TenantConvert.java
@@ -1,7 +1,7 @@
-package cd.casic.module.system.convert.tenant;
+package cd.casic.framework.datapermission.convert;
-import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantSaveReqVO;
-import cd.casic.module.system.controller.admin.user.vo.user.UserSaveReqVO;
+import cd.casic.framework.security.vo.vo.tenant.TenantSaveReqVO;
+import cd.casic.framework.datapermission.core.vo.UserSaveReqVO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/convert/user/UserConvert.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/convert/UserConvert.java
similarity index 70%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/convert/user/UserConvert.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/convert/UserConvert.java
index bad7890..494b40d 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/convert/user/UserConvert.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/convert/UserConvert.java
@@ -1,18 +1,18 @@
-package cd.casic.module.system.convert.user;
+package cd.casic.framework.datapermission.convert;
import cd.casic.framework.commons.util.collection.CollectionUtils;
import cd.casic.framework.commons.util.collection.MapUtils;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.module.system.controller.admin.dept.vo.dept.DeptSimpleRespVO;
-import cd.casic.module.system.controller.admin.dept.vo.post.PostSimpleRespVO;
-import cd.casic.module.system.controller.admin.permission.vo.role.RoleSimpleRespVO;
-import cd.casic.module.system.controller.admin.user.vo.profile.UserProfileRespVO;
-import cd.casic.module.system.controller.admin.user.vo.user.UserRespVO;
-import cd.casic.module.system.controller.admin.user.vo.user.UserSimpleRespVO;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
-import cd.casic.module.system.dal.dataobject.dept.PostDO;
-import cd.casic.module.system.dal.dataobject.permission.RoleDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.security.vo.dept.DeptSimpleRespVO;
+import cd.casic.framework.security.vo.dept.post.PostSimpleRespVO;
+import cd.casic.framework.datapermission.core.vo.role.RoleSimpleRespVO;
+import cd.casic.framework.datapermission.service.auth.vo.profile.UserProfileRespVO;
+import cd.casic.framework.datapermission.core.vo.UserRespVO;
+import cd.casic.framework.datapermission.core.vo.UserSimpleRespVO;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.commons.dataobject.dept.PostDO;
+import cd.casic.framework.security.dal.permission.RoleDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/user/AdminUserMapper.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/AdminUserMapper.java
similarity index 90%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/user/AdminUserMapper.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/AdminUserMapper.java
index ffef284..534d05f 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/user/AdminUserMapper.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/AdminUserMapper.java
@@ -1,10 +1,10 @@
-package cd.casic.module.system.dal.mysql.user;
+package cd.casic.framework.datapermission.core.dal;
import cd.casic.framework.commons.pojo.PageResult;
+import cd.casic.framework.datapermission.core.vo.UserPageReqVO;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cd.casic.module.system.controller.admin.user.vo.user.UserPageReqVO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import org.apache.ibatis.annotations.Mapper;
import java.util.Collection;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/logger/LoginLogMapper.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/LoginLogMapper.java
similarity index 85%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/logger/LoginLogMapper.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/LoginLogMapper.java
index 43705e1..6eb6ea6 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/logger/LoginLogMapper.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/LoginLogMapper.java
@@ -1,10 +1,10 @@
-package cd.casic.module.system.dal.mysql.logger;
+package cd.casic.framework.datapermission.core.dal;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cd.casic.module.system.controller.admin.logger.vo.loginlog.LoginLogPageReqVO;
-import cd.casic.module.system.dal.dataobject.logger.LoginLogDO;
+import cd.casic.framework.security.vo.loginlog.LoginLogPageReqVO;
+import cd.casic.framework.security.vo.logger.LoginLogDO;
import cd.casic.module.system.enums.logger.LoginResultEnum;
import org.apache.ibatis.annotations.Mapper;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/permission/MenuMapper.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/MenuMapper.java
similarity index 82%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/permission/MenuMapper.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/MenuMapper.java
index b484745..eea7053 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/permission/MenuMapper.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/MenuMapper.java
@@ -1,9 +1,10 @@
-package cd.casic.module.system.dal.mysql.permission;
+package cd.casic.framework.datapermission.core.dal;
+
+import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
+import cd.casic.framework.datapermission.service.permission.menu.MenuListReqVO;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cd.casic.module.system.controller.admin.permission.vo.menu.MenuListReqVO;
-import cd.casic.module.system.dal.dataobject.permission.MenuDO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/permission/RoleMapper.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/RoleMapper.java
similarity index 82%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/permission/RoleMapper.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/RoleMapper.java
index a943023..8eaaabd 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/permission/RoleMapper.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/RoleMapper.java
@@ -1,11 +1,11 @@
-package cd.casic.module.system.dal.mysql.permission;
+package cd.casic.framework.datapermission.core.dal;
import cd.casic.framework.commons.pojo.PageResult;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
+import cd.casic.framework.datapermission.core.vo.RolePageReqVO;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cd.casic.module.system.controller.admin.permission.vo.role.RolePageReqVO;
-import cd.casic.module.system.dal.dataobject.permission.RoleDO;
+import cd.casic.framework.security.dal.permission.RoleDO;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.lang.Nullable;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/tenant/TenantMapper.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/TenantMapper.java
similarity index 88%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/tenant/TenantMapper.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/TenantMapper.java
index 97f9ac2..91b5055 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/tenant/TenantMapper.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/TenantMapper.java
@@ -1,10 +1,10 @@
-package cd.casic.module.system.dal.mysql.tenant;
+package cd.casic.framework.datapermission.core.dal;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantPageReqVO;
-import cd.casic.module.system.dal.dataobject.tenant.TenantDO;
+import cd.casic.framework.security.vo.vo.tenant.TenantPageReqVO;
+import cd.casic.framework.security.dal.tenant.TenantDO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/tenant/TenantPackageMapper.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/TenantPackageMapper.java
similarity index 85%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/tenant/TenantPackageMapper.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/TenantPackageMapper.java
index 3f97971..460f1bd 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/tenant/TenantPackageMapper.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/TenantPackageMapper.java
@@ -1,10 +1,11 @@
-package cd.casic.module.system.dal.mysql.tenant;
+package cd.casic.framework.datapermission.core.dal;
import cd.casic.framework.commons.pojo.PageResult;
+import cd.casic.framework.datapermission.core.vo.packages.TenantPackagePageReqVO;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cd.casic.module.system.controller.admin.tenant.vo.packages.TenantPackagePageReqVO;
-import cd.casic.module.system.dal.dataobject.tenant.TenantPackageDO;
+
+import cd.casic.framework.security.dal.tenant.TenantPackageDO;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/permission/MenuDO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/dataobject/MenuDO.java
similarity index 96%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/permission/MenuDO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/dataobject/MenuDO.java
index 0bb8a67..5026f9c 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/permission/MenuDO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/dal/dataobject/MenuDO.java
@@ -1,7 +1,7 @@
-package cd.casic.module.system.dal.dataobject.permission;
+package cd.casic.framework.datapermission.core.dal.dataobject;
import cd.casic.framework.commons.enums.CommonStatusEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import cd.casic.module.system.enums.permission.MenuTypeEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
diff --git a/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/core/filter/TokenAuthenticationFilter.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/filter/TokenAuthenticationFilter.java
similarity index 95%
rename from framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/core/filter/TokenAuthenticationFilter.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/filter/TokenAuthenticationFilter.java
index b0e4916..c19d552 100644
--- a/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/core/filter/TokenAuthenticationFilter.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/filter/TokenAuthenticationFilter.java
@@ -1,14 +1,14 @@
-package cd.casic.framework.security.core.filter;
+package cd.casic.framework.datapermission.core.filter;
import cd.casic.framework.commons.exception.ServiceException;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.util.servlet.ServletUtils;
+import cd.casic.framework.datapermission.service.user.OAuth2TokenApi;
import cd.casic.framework.security.config.SecurityProperties;
import cd.casic.framework.security.core.util.SecurityFrameworkUtils;
import cd.casic.framework.security.core.LoginUser;
-import cd.casic.framework.web.core.handler.GlobalExceptionHandler;
-import cd.casic.framework.web.core.util.WebFrameworkUtils;
-import cd.casic.module.system.api.oauth2.OAuth2TokenApi;
+import cd.casic.framework.datapermission.handler.GlobalExceptionHandler;
+import cd.casic.framework.commons.util.util.WebFrameworkUtils;
import cd.casic.module.system.api.oauth2.dto.OAuth2AccessTokenCheckRespDTO;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
diff --git a/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/rule/dept/DeptDataPermissionRule.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/rule/dept/DeptDataPermissionRule.java
index e517972..f569b63 100644
--- a/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/rule/dept/DeptDataPermissionRule.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/rule/dept/DeptDataPermissionRule.java
@@ -4,11 +4,11 @@ import cd.casic.framework.commons.enums.UserTypeEnum;
import cd.casic.framework.commons.util.collection.CollectionUtils;
import cd.casic.framework.commons.util.json.JsonUtils;
import cd.casic.framework.datapermission.core.rule.DataPermissionRule;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
+import cd.casic.framework.datapermission.service.PermissionApi;
import cd.casic.framework.mybatis.core.util.MyBatisUtils;
import cd.casic.framework.security.core.LoginUser;
import cd.casic.framework.security.core.util.SecurityFrameworkUtils;
-import cd.casic.module.system.api.permission.PermissionApi;
import cd.casic.module.system.api.permission.dto.DeptDataPermissionRespDTO;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/role/RolePageReqVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/RolePageReqVO.java
similarity index 94%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/role/RolePageReqVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/RolePageReqVO.java
index 5de729f..cae2df8 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/role/RolePageReqVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/RolePageReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.permission.vo.role;
+package cd.casic.framework.datapermission.core.vo;
import cd.casic.framework.commons.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserImportExcelVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserImportExcelVO.java
similarity index 95%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserImportExcelVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserImportExcelVO.java
index bac3dc0..aa89954 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserImportExcelVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserImportExcelVO.java
@@ -1,8 +1,10 @@
-package cd.casic.module.system.controller.admin.user.vo.user;
+package cd.casic.framework.datapermission.core.vo;
+
import cd.casic.framework.excel.excel.core.annotations.DictFormat;
import cd.casic.framework.excel.excel.core.convert.DictConvert;
import cd.casic.module.system.enums.DictTypeConstants;
+
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserImportRespVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserImportRespVO.java
similarity index 92%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserImportRespVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserImportRespVO.java
index 2685bd4..92a8061 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserImportRespVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserImportRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.user.vo.user;
+package cd.casic.framework.datapermission.core.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Builder;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserPageReqVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserPageReqVO.java
similarity index 95%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserPageReqVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserPageReqVO.java
index b5b25b7..d6b64d0 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserPageReqVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserPageReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.user.vo.user;
+package cd.casic.framework.datapermission.core.vo;
import cd.casic.framework.commons.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserRespVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserRespVO.java
similarity index 97%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserRespVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserRespVO.java
index ea9e07d..7112183 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserRespVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.user.vo.user;
+package cd.casic.framework.datapermission.core.vo;
import cd.casic.framework.excel.excel.core.annotations.DictFormat;
import cd.casic.framework.excel.excel.core.convert.DictConvert;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserSaveReqVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserSaveReqVO.java
similarity index 91%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserSaveReqVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserSaveReqVO.java
index f0b5624..ecf496f 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserSaveReqVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserSaveReqVO.java
@@ -1,10 +1,11 @@
-package cd.casic.module.system.controller.admin.user.vo.user;
+package cd.casic.framework.datapermission.core.vo;
+import cd.casic.framework.datapermission.operatelog.core.DeptParseFunction;
+import cd.casic.framework.datapermission.operatelog.core.PostParseFunction;
+import cd.casic.framework.datapermission.operatelog.core.SexParseFunction;
import cn.hutool.core.util.ObjectUtil;
import cd.casic.framework.commons.validation.Mobile;
-import cd.casic.module.system.framework.operatelog.core.DeptParseFunction;
-import cd.casic.module.system.framework.operatelog.core.PostParseFunction;
-import cd.casic.module.system.framework.operatelog.core.SexParseFunction;
+
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.mzt.logapi.starter.annotation.DiffLogField;
import io.swagger.v3.oas.annotations.media.Schema;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserSimpleRespVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserSimpleRespVO.java
similarity index 92%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserSimpleRespVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserSimpleRespVO.java
index 2aae69d..9be4f71 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserSimpleRespVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserSimpleRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.user.vo.user;
+package cd.casic.framework.datapermission.core.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserUpdatePasswordReqVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserUpdatePasswordReqVO.java
similarity index 93%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserUpdatePasswordReqVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserUpdatePasswordReqVO.java
index 39eb93e..ef61e28 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserUpdatePasswordReqVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserUpdatePasswordReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.user.vo.user;
+package cd.casic.framework.datapermission.core.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserUpdateStatusReqVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserUpdateStatusReqVO.java
similarity index 93%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserUpdateStatusReqVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserUpdateStatusReqVO.java
index e6cb41a..459ede9 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/user/UserUpdateStatusReqVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/UserUpdateStatusReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.user.vo.user;
+package cd.casic.framework.datapermission.core.vo;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.validation.InEnum;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/packages/TenantPackagePageReqVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/packages/TenantPackagePageReqVO.java
similarity index 93%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/packages/TenantPackagePageReqVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/packages/TenantPackagePageReqVO.java
index d2ddfc5..31b9961 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/packages/TenantPackagePageReqVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/packages/TenantPackagePageReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.tenant.vo.packages;
+package cd.casic.framework.datapermission.core.vo.packages;
import cd.casic.framework.commons.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/packages/TenantPackageRespVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/packages/TenantPackageRespVO.java
similarity index 93%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/packages/TenantPackageRespVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/packages/TenantPackageRespVO.java
index d94ebd2..31576c1 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/packages/TenantPackageRespVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/packages/TenantPackageRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.tenant.vo.packages;
+package cd.casic.framework.datapermission.core.vo.packages;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/packages/TenantPackageSaveReqVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/packages/TenantPackageSaveReqVO.java
similarity index 95%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/packages/TenantPackageSaveReqVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/packages/TenantPackageSaveReqVO.java
index aa71cfc..edff7e4 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/packages/TenantPackageSaveReqVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/packages/TenantPackageSaveReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.tenant.vo.packages;
+package cd.casic.framework.datapermission.core.vo.packages;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.validation.InEnum;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/packages/TenantPackageSimpleRespVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/packages/TenantPackageSimpleRespVO.java
similarity index 90%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/packages/TenantPackageSimpleRespVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/packages/TenantPackageSimpleRespVO.java
index eda9f8c..1934001 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/packages/TenantPackageSimpleRespVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/packages/TenantPackageSimpleRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.tenant.vo.packages;
+package cd.casic.framework.datapermission.core.vo.packages;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/role/RoleRespVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/role/RoleRespVO.java
similarity index 97%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/role/RoleRespVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/role/RoleRespVO.java
index 92ca2e4..34197f3 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/role/RoleRespVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/role/RoleRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.permission.vo.role;
+package cd.casic.framework.datapermission.core.vo.role;
import cd.casic.framework.excel.excel.core.annotations.DictFormat;
import cd.casic.framework.excel.excel.core.convert.DictConvert;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/role/RoleSaveReqVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/role/RoleSaveReqVO.java
similarity index 96%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/role/RoleSaveReqVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/role/RoleSaveReqVO.java
index 65d6d03..9407e69 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/role/RoleSaveReqVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/role/RoleSaveReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.permission.vo.role;
+package cd.casic.framework.datapermission.core.vo.role;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.validation.InEnum;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/role/RoleSimpleRespVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/role/RoleSimpleRespVO.java
similarity index 88%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/role/RoleSimpleRespVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/role/RoleSimpleRespVO.java
index 0300e4e..86a35e1 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/role/RoleSimpleRespVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/core/vo/role/RoleSimpleRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.permission.vo.role;
+package cd.casic.framework.datapermission.core.vo.role;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
diff --git a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/handler/GlobalExceptionHandler.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/handler/GlobalExceptionHandler.java
similarity index 99%
rename from framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/handler/GlobalExceptionHandler.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/handler/GlobalExceptionHandler.java
index c296706..aef2ca0 100644
--- a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/handler/GlobalExceptionHandler.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/handler/GlobalExceptionHandler.java
@@ -1,4 +1,4 @@
-package cd.casic.framework.web.core.handler;
+package cd.casic.framework.datapermission.handler;
import cd.casic.module.infra.api.logger.ApiErrorLogApi;
import cd.casic.module.infra.api.logger.dto.ApiErrorLogCreateReqDTO;
@@ -14,7 +14,7 @@ import cd.casic.framework.commons.util.collection.SetUtils;
import cd.casic.framework.commons.util.json.JsonUtils;
import cd.casic.framework.commons.util.monitor.TracerUtils;
import cd.casic.framework.commons.util.servlet.ServletUtils;
-import cd.casic.framework.web.core.util.WebFrameworkUtils;
+import cd.casic.framework.commons.util.util.WebFrameworkUtils;
import com.fasterxml.jackson.databind.exc.InvalidFormatException;
import jakarta.servlet.http.HttpServletRequest;
@@ -25,6 +25,7 @@ import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.converter.HttpMessageNotReadableException;
import org.springframework.security.access.AccessDeniedException;
+import org.springframework.stereotype.Component;
import org.springframework.util.Assert;
import org.springframework.validation.BindException;
import org.springframework.validation.FieldError;
@@ -51,6 +52,7 @@ import static cd.casic.framework.commons.exception.enums.GlobalErrorCodeConstant
@RestControllerAdvice
@AllArgsConstructor
@Slf4j
+@Component
public class GlobalExceptionHandler {
/**
diff --git a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/handler/GlobalResponseBodyHandler.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/handler/GlobalResponseBodyHandler.java
similarity index 94%
rename from framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/handler/GlobalResponseBodyHandler.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/handler/GlobalResponseBodyHandler.java
index 20847ad..ef6f2f2 100644
--- a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/handler/GlobalResponseBodyHandler.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/handler/GlobalResponseBodyHandler.java
@@ -1,7 +1,7 @@
-package cd.casic.framework.web.core.handler;
+package cd.casic.framework.datapermission.handler;
import cd.casic.framework.commons.pojo.CommonResult;
-import cd.casic.framework.web.core.util.WebFrameworkUtils;
+import cd.casic.framework.commons.util.util.WebFrameworkUtils;
import org.springframework.core.MethodParameter;
import org.springframework.http.MediaType;
import org.springframework.http.server.ServerHttpRequest;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/AdminUserParseFunction.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/AdminUserParseFunction.java
similarity index 86%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/AdminUserParseFunction.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/AdminUserParseFunction.java
index 8781173..060db8a 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/AdminUserParseFunction.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/AdminUserParseFunction.java
@@ -1,9 +1,9 @@
-package cd.casic.module.system.framework.operatelog.core;
+package cd.casic.framework.datapermission.operatelog.core;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.StrUtil;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
-import cd.casic.module.system.service.user.AdminUserService;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import com.mzt.logapi.service.IParseFunction;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/AreaParseFunction.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/AreaParseFunction.java
similarity index 86%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/AreaParseFunction.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/AreaParseFunction.java
index bed0605..aa07de8 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/AreaParseFunction.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/AreaParseFunction.java
@@ -1,6 +1,7 @@
-package cd.casic.module.system.framework.operatelog.core;
+package cd.casic.framework.datapermission.operatelog.core;
-import cd.casic.framework.redis.core.utils.AreaUtils;
+
+import cd.casic.framework.commons.util.redis.core.utils.AreaUtils;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.StrUtil;
import com.mzt.logapi.service.IParseFunction;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/BooleanParseFunction.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/BooleanParseFunction.java
similarity index 93%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/BooleanParseFunction.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/BooleanParseFunction.java
index 7084d19..ee5fa51 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/BooleanParseFunction.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/BooleanParseFunction.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.framework.operatelog.core;
+package cd.casic.framework.datapermission.operatelog.core;
import cd.casic.framework.excel.dict.core.DictFrameworkUtils;
import cn.hutool.core.util.StrUtil;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/DeptParseFunction.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/DeptParseFunction.java
similarity index 84%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/DeptParseFunction.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/DeptParseFunction.java
index 53e13db..9344512 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/DeptParseFunction.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/DeptParseFunction.java
@@ -1,9 +1,9 @@
-package cd.casic.module.system.framework.operatelog.core;
+package cd.casic.framework.datapermission.operatelog.core;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.datapermission.service.dept.DeptService;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.StrUtil;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
-import cd.casic.module.system.service.dept.DeptService;
import com.mzt.logapi.service.IParseFunction;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/PostParseFunction.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/PostParseFunction.java
similarity index 84%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/PostParseFunction.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/PostParseFunction.java
index 9c5d4d7..64f892f 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/PostParseFunction.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/PostParseFunction.java
@@ -1,9 +1,10 @@
-package cd.casic.module.system.framework.operatelog.core;
+package cd.casic.framework.datapermission.operatelog.core;
+
+import cd.casic.framework.commons.dataobject.dept.PostDO;
+import cd.casic.framework.datapermission.service.dept.PostService;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.StrUtil;
-import cd.casic.module.system.dal.dataobject.dept.PostDO;
-import cd.casic.module.system.service.dept.PostService;
import com.mzt.logapi.service.IParseFunction;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/SexParseFunction.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/SexParseFunction.java
similarity index 93%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/SexParseFunction.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/SexParseFunction.java
index 5d131cb..b594cb2 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/core/SexParseFunction.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/core/SexParseFunction.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.framework.operatelog.core;
+package cd.casic.framework.datapermission.operatelog.core;
import cd.casic.framework.excel.dict.core.DictFrameworkUtils;
import cn.hutool.core.util.StrUtil;
diff --git a/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/package-info.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/package-info.java
new file mode 100644
index 0000000..e80c39a
--- /dev/null
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/operatelog/package-info.java
@@ -0,0 +1,4 @@
+/**
+ * 占位文件,避免文件夹缩进
+ */
+package cd.casic.framework.datapermission.operatelog;
\ No newline at end of file
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/MenuService.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/MenuService.java
similarity index 84%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/MenuService.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/MenuService.java
index 3e57e9b..851f4a7 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/MenuService.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/MenuService.java
@@ -1,10 +1,11 @@
-package cd.casic.module.system.service.permission;
+package cd.casic.framework.datapermission.service;
-import cd.casic.module.system.controller.admin.permission.vo.menu.MenuListReqVO;
-import cd.casic.module.system.controller.admin.permission.vo.menu.MenuSaveVO;
-import cd.casic.module.system.controller.admin.permission.vo.menu.MenuTreeVO;
-import cd.casic.module.system.dal.dataobject.permission.MenuDO;
+
+import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
+import cd.casic.framework.datapermission.service.permission.menu.MenuListReqVO;
+import cd.casic.framework.datapermission.service.permission.menu.MenuSaveVO;
+import cd.casic.framework.datapermission.service.permission.menu.MenuTreeVO;
import java.util.Collection;
import java.util.List;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/MenuServiceImpl.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/MenuServiceImpl.java
similarity index 92%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/MenuServiceImpl.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/MenuServiceImpl.java
index fb39ef8..714ea23 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/MenuServiceImpl.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/MenuServiceImpl.java
@@ -1,17 +1,18 @@
-package cd.casic.module.system.service.permission;
+package cd.casic.framework.datapermission.service;
+
+import cd.casic.framework.commons.util.collection.CollectionUtils;
+import cd.casic.framework.datapermission.core.dal.MenuMapper;
+import cd.casic.framework.datapermission.service.permission.menu.MenuListReqVO;
+import cd.casic.framework.datapermission.service.permission.menu.MenuSaveVO;
+import cd.casic.framework.datapermission.service.permission.menu.MenuTreeVO;
+
-import cd.casic.module.system.controller.admin.permission.vo.menu.MenuTreeVO;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjUtil;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.module.system.controller.admin.permission.vo.menu.MenuListReqVO;
-import cd.casic.module.system.controller.admin.permission.vo.menu.MenuSaveVO;
-import cd.casic.module.system.dal.dataobject.permission.MenuDO;
-import cd.casic.module.system.dal.mysql.permission.MenuMapper;
-import cd.casic.module.system.dal.redis.RedisKeyConstants;
+import cd.casic.framework.security.redis.RedisKeyConstants;
import cd.casic.module.system.enums.permission.MenuTypeEnum;
-import cd.casic.module.system.service.tenant.TenantService;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.collect.Lists;
import jakarta.annotation.Resource;
@@ -28,9 +29,8 @@ import java.util.stream.Collectors;
import static cd.casic.framework.commons.exception.util.ServiceExceptionUtil.exception;
import static cd.casic.framework.commons.util.collection.CollectionUtils.convertList;
import static cd.casic.framework.commons.util.collection.CollectionUtils.convertMap;
-import static cd.casic.module.system.dal.dataobject.permission.MenuDO.ID_ROOT;
import static cd.casic.module.system.enums.ErrorCodeConstants.*;
-
+import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
/**
* 菜单 Service 实现
*
@@ -150,7 +150,7 @@ public class MenuServiceImpl implements MenuService {
// 2. 遍历到 parentId 为根节点,则无需判断
Long parentId = node.getParentId();
- if (ObjUtil.equal(parentId, ID_ROOT)) {
+ if (ObjUtil.equal(parentId, MenuDO.ID_ROOT)) {
return false;
}
@@ -172,7 +172,7 @@ public class MenuServiceImpl implements MenuService {
@Cacheable(value = RedisKeyConstants.PERMISSION_MENU_ID_LIST, key = "#permission")
public List getMenuIdListByPermissionFromCache(String permission) {
List menus = menuMapper.selectListByPermission(permission);
- return convertList(menus, MenuDO::getId);
+ return CollectionUtils.convertList(menus, MenuDO::getId);
}
@Override
@@ -200,8 +200,8 @@ public class MenuServiceImpl implements MenuService {
* @param childId 当前菜单编号
*/
@VisibleForTesting
- void validateParentMenu(Long parentId, Long childId) {
- if (parentId == null || ID_ROOT.equals(parentId)) {
+ public void validateParentMenu(Long parentId, Long childId) {
+ if (parentId == null || MenuDO.ID_ROOT.equals(parentId)) {
return;
}
// 不能设置自己为父菜单
@@ -230,7 +230,7 @@ public class MenuServiceImpl implements MenuService {
* @param id 菜单编号
*/
@VisibleForTesting
- void validateMenu(Long parentId, String name, Long id) {
+ public void validateMenu(Long parentId, String name, Long id) {
MenuDO menu = menuMapper.selectByParentIdAndName(parentId, name);
if (menu == null) {
return;
diff --git a/modules/module-system-api/src/main/java/cd/casic/module/system/api/permission/PermissionApi.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/PermissionApi.java
similarity index 95%
rename from modules/module-system-api/src/main/java/cd/casic/module/system/api/permission/PermissionApi.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/PermissionApi.java
index e90a16e..548f7e3 100644
--- a/modules/module-system-api/src/main/java/cd/casic/module/system/api/permission/PermissionApi.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/PermissionApi.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.api.permission;
+package cd.casic.framework.datapermission.service;
import cd.casic.module.system.api.permission.dto.DeptDataPermissionRespDTO;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/permission/PermissionApiImpl.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/PermissionApiImpl.java
similarity index 85%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/api/permission/PermissionApiImpl.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/PermissionApiImpl.java
index 9a83ab7..ada3e65 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/permission/PermissionApiImpl.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/PermissionApiImpl.java
@@ -1,8 +1,7 @@
-package cd.casic.module.system.api.permission;
+package cd.casic.framework.datapermission.service;
import cd.casic.module.system.api.permission.dto.DeptDataPermissionRespDTO;
-import cd.casic.module.system.service.permission.PermissionService;
-import org.springframework.stereotype.Service;
+import org.springframework.stereotype.Component;
import jakarta.annotation.Resource;
import java.util.Collection;
@@ -13,7 +12,7 @@ import java.util.Set;
*
* @author mianbin modified from yudao
*/
-@Service
+@Component
public class PermissionApiImpl implements PermissionApi {
@Resource
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/PermissionService.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/PermissionService.java
similarity index 98%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/PermissionService.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/PermissionService.java
index 9309e4d..a2b815e 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/PermissionService.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/PermissionService.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.service.permission;
+package cd.casic.framework.datapermission.service;
import cd.casic.module.system.api.permission.dto.DeptDataPermissionRespDTO;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/PermissionServiceImpl.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/PermissionServiceImpl.java
similarity index 95%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/PermissionServiceImpl.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/PermissionServiceImpl.java
index 30089a3..7e286aa 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/PermissionServiceImpl.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/PermissionServiceImpl.java
@@ -1,5 +1,10 @@
-package cd.casic.module.system.service.permission;
+package cd.casic.framework.datapermission.service;
+import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
+import cd.casic.framework.datapermission.service.dept.DeptService;
+
+
+import cd.casic.framework.security.dal.permission.*;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ArrayUtil;
@@ -8,16 +13,9 @@ import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.util.collection.CollectionUtils;
import cd.casic.framework.datapermission.core.annotation.DataPermission;
import cd.casic.module.system.api.permission.dto.DeptDataPermissionRespDTO;
-import cd.casic.module.system.dal.dataobject.permission.MenuDO;
-import cd.casic.module.system.dal.dataobject.permission.RoleDO;
-import cd.casic.module.system.dal.dataobject.permission.RoleMenuDO;
-import cd.casic.module.system.dal.dataobject.permission.UserRoleDO;
-import cd.casic.module.system.dal.mysql.permission.RoleMenuMapper;
-import cd.casic.module.system.dal.mysql.permission.UserRoleMapper;
-import cd.casic.module.system.dal.redis.RedisKeyConstants;
+import cd.casic.framework.security.redis.RedisKeyConstants;
import cd.casic.module.system.enums.permission.DataScopeEnum;
-import cd.casic.module.system.service.dept.DeptService;
-import cd.casic.module.system.service.user.AdminUserService;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
import com.google.common.annotations.VisibleForTesting;
import com.google.common.base.Suppliers;
@@ -201,7 +199,6 @@ public class PermissionServiceImpl implements PermissionService {
}
// ========== 用户-角色的相关方法 ==========
-
@Override
@DSTransactional // 多数据源,使用 @DSTransactional 保证本地事务,以及数据源的切换
@CacheEvict(value = RedisKeyConstants.USER_ROLE_ID_LIST, key = "#userId")
@@ -256,7 +253,7 @@ public class PermissionServiceImpl implements PermissionService {
* @return 用户拥有的角色
*/
@VisibleForTesting
- List getEnableUserRoleListByUserIdFromCache(Long userId) {
+ public List getEnableUserRoleListByUserIdFromCache(Long userId) {
// 获得用户拥有的角色编号
Set roleIds = getSelf().getUserRoleIdListByUserIdFromCache(userId);
// 获得角色数组,并移除被禁用的
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/RoleService.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/RoleService.java
similarity index 90%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/RoleService.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/RoleService.java
index c7cf03b..7ea40a0 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/RoleService.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/RoleService.java
@@ -1,10 +1,10 @@
-package cd.casic.module.system.service.permission;
+package cd.casic.framework.datapermission.service;
import cd.casic.framework.commons.pojo.PageResult;
-import cd.casic.module.system.controller.admin.permission.vo.role.RolePageReqVO;
-import cd.casic.module.system.controller.admin.permission.vo.role.RoleSaveReqVO;
-import cd.casic.module.system.dal.dataobject.permission.RoleDO;
+import cd.casic.framework.datapermission.core.vo.RolePageReqVO;
+import cd.casic.framework.datapermission.core.vo.role.RoleSaveReqVO;
+import cd.casic.framework.security.dal.permission.RoleDO;
import jakarta.validation.Valid;
import java.util.Collection;
import java.util.List;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/RoleServiceImpl.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/RoleServiceImpl.java
similarity index 93%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/RoleServiceImpl.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/RoleServiceImpl.java
index 315f35c..7153840 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/permission/RoleServiceImpl.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/RoleServiceImpl.java
@@ -1,5 +1,10 @@
-package cd.casic.module.system.service.permission;
+package cd.casic.framework.datapermission.service;
+import cd.casic.framework.commons.exception.util.ServiceExceptionUtil;
+import cd.casic.framework.datapermission.core.vo.RolePageReqVO;
+import cd.casic.framework.datapermission.core.vo.role.RoleSaveReqVO;
+import cd.casic.framework.security.dal.permission.RoleDO;
+import cd.casic.framework.datapermission.core.dal.RoleMapper;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.ObjUtil;
@@ -9,11 +14,7 @@ import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.collection.CollectionUtils;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.module.system.controller.admin.permission.vo.role.RolePageReqVO;
-import cd.casic.module.system.controller.admin.permission.vo.role.RoleSaveReqVO;
-import cd.casic.module.system.dal.dataobject.permission.RoleDO;
-import cd.casic.module.system.dal.mysql.permission.RoleMapper;
-import cd.casic.module.system.dal.redis.RedisKeyConstants;
+import cd.casic.framework.security.redis.RedisKeyConstants;
import cd.casic.module.system.enums.permission.DataScopeEnum;
import cd.casic.module.system.enums.permission.RoleCodeEnum;
import cd.casic.module.system.enums.permission.RoleTypeEnum;
@@ -133,7 +134,7 @@ public class RoleServiceImpl implements RoleService {
* @param id 角色编号
*/
@VisibleForTesting
- void validateRoleDuplicate(String name, String code, Long id) {
+ public void validateRoleDuplicate(String name, String code, Long id) {
// 0. 超级管理员,不允许创建
if (RoleCodeEnum.isSuperAdmin(code)) {
throw exception(ROLE_ADMIN_CODE_ERROR, code);
@@ -160,7 +161,7 @@ public class RoleServiceImpl implements RoleService {
* @param id 角色编号
*/
@VisibleForTesting
- RoleDO validateRoleForUpdate(Long id) {
+ public RoleDO validateRoleForUpdate(Long id) {
RoleDO role = roleMapper.selectById(id);
if (role == null) {
throw exception(ROLE_NOT_EXISTS);
@@ -245,7 +246,7 @@ public class RoleServiceImpl implements RoleService {
throw exception(ROLE_NOT_EXISTS);
}
if (!CommonStatusEnum.ENABLE.getStatus().equals(role.getStatus())) {
- throw exception(ROLE_IS_DISABLE, role.getName());
+ throw ServiceExceptionUtil.exception(ROLE_IS_DISABLE, role.getName());
}
});
}
diff --git a/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/SecurityFrameworkService.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/SecurityFrameworkService.java
new file mode 100644
index 0000000..8d99961
--- /dev/null
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/SecurityFrameworkService.java
@@ -0,0 +1,59 @@
+package cd.casic.framework.datapermission.service;
+
+/**
+ * Security 框架 Service 接口,定义权限相关的校验操作
+ *
+ * @author mianbin modified from yudao
+ */
+public interface SecurityFrameworkService {
+
+ /**
+ * 判断是否有权限
+ *
+ * @param permission 权限
+ * @return 是否
+ */
+ boolean hasPermission(String permission);
+
+ /**
+ * 判断是否有权限,任一一个即可
+ *
+ * @param permissions 权限
+ * @return 是否
+ */
+ boolean hasAnyPermissions(String... permissions);
+
+ /**
+ * 判断是否有角色
+ *
+ * 注意,角色使用的是 SysRoleDO 的 code 标识
+ *
+ * @param role 角色
+ * @return 是否
+ */
+ boolean hasRole(String role);
+
+ /**
+ * 判断是否有角色,任一一个即可
+ *
+ * @param roles 角色数组
+ * @return 是否
+ */
+ boolean hasAnyRoles(String... roles);
+
+ /**
+ * 判断是否有授权
+ *
+ * @param scope 授权
+ * @return 是否
+ */
+ boolean hasScope(String scope);
+
+ /**
+ * 判断是否有授权范围,任一一个即可
+ *
+ * @param scope 授权范围数组
+ * @return 是否
+ */
+ boolean hasAnyScopes(String... scope);
+}
diff --git a/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/core/service/SecurityFrameworkServiceImpl.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/SecurityFrameworkServiceImpl.java
similarity index 93%
rename from framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/core/service/SecurityFrameworkServiceImpl.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/SecurityFrameworkServiceImpl.java
index a776fa0..54f5672 100644
--- a/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/core/service/SecurityFrameworkServiceImpl.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/SecurityFrameworkServiceImpl.java
@@ -1,8 +1,7 @@
-package cd.casic.framework.security.core.service;
+package cd.casic.framework.datapermission.service;
import cd.casic.framework.security.core.LoginUser;
import cd.casic.framework.security.core.util.SecurityFrameworkUtils;
-import cd.casic.module.system.api.permission.PermissionApi;
import cn.hutool.core.collection.CollUtil;
import lombok.AllArgsConstructor;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/TenantPackageService.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/TenantPackageService.java
similarity index 82%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/TenantPackageService.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/TenantPackageService.java
index e540104..8bb97ef 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/TenantPackageService.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/TenantPackageService.java
@@ -1,9 +1,9 @@
-package cd.casic.module.system.service.tenant;
+package cd.casic.framework.datapermission.service;
import cd.casic.framework.commons.pojo.PageResult;
-import cd.casic.module.system.controller.admin.tenant.vo.packages.TenantPackagePageReqVO;
-import cd.casic.module.system.controller.admin.tenant.vo.packages.TenantPackageSaveReqVO;
-import cd.casic.module.system.dal.dataobject.tenant.TenantPackageDO;
+import cd.casic.framework.datapermission.core.vo.packages.TenantPackagePageReqVO;
+import cd.casic.framework.datapermission.core.vo.packages.TenantPackageSaveReqVO;
+import cd.casic.framework.security.dal.tenant.TenantPackageDO;
import jakarta.validation.Valid;
import java.util.List;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/TenantPackageServiceImpl.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/TenantPackageServiceImpl.java
similarity index 91%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/TenantPackageServiceImpl.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/TenantPackageServiceImpl.java
index 6ee5e6a..16933f9 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/TenantPackageServiceImpl.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/TenantPackageServiceImpl.java
@@ -1,15 +1,16 @@
-package cd.casic.module.system.service.tenant;
+package cd.casic.framework.datapermission.service;
+import cd.casic.framework.datapermission.core.dal.TenantPackageMapper;
+import cd.casic.framework.datapermission.core.vo.packages.TenantPackagePageReqVO;
+import cd.casic.framework.datapermission.core.vo.packages.TenantPackageSaveReqVO;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.module.system.controller.admin.tenant.vo.packages.TenantPackagePageReqVO;
-import cd.casic.module.system.controller.admin.tenant.vo.packages.TenantPackageSaveReqVO;
-import cd.casic.module.system.dal.dataobject.tenant.TenantDO;
-import cd.casic.module.system.dal.dataobject.tenant.TenantPackageDO;
-import cd.casic.module.system.dal.mysql.tenant.TenantPackageMapper;
+
+import cd.casic.framework.security.dal.tenant.TenantDO;
+import cd.casic.framework.security.dal.tenant.TenantPackageDO;
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
import com.google.common.annotations.VisibleForTesting;
import org.springframework.context.annotation.Lazy;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/TenantService.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/TenantService.java
similarity index 84%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/TenantService.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/TenantService.java
index adbedc2..c3b6f2a 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/TenantService.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/TenantService.java
@@ -1,12 +1,13 @@
-package cd.casic.module.system.service.tenant;
+package cd.casic.framework.datapermission.service;
import cd.casic.framework.commons.pojo.PageResult;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
-import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantPageReqVO;
-import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantSaveReqVO;
-import cd.casic.module.system.dal.dataobject.tenant.TenantDO;
-import cd.casic.module.system.service.tenant.handler.TenantInfoHandler;
-import cd.casic.module.system.service.tenant.handler.TenantMenuHandler;
+import cd.casic.framework.commons.context.TenantContextHolder;
+
+import cd.casic.framework.datapermission.service.handler.TenantInfoHandler;
+import cd.casic.framework.datapermission.service.handler.TenantMenuHandler;
+import cd.casic.framework.security.dal.tenant.TenantDO;
+import cd.casic.framework.security.vo.vo.tenant.TenantPageReqVO;
+import cd.casic.framework.security.vo.vo.tenant.TenantSaveReqVO;
import jakarta.validation.Valid;
import java.util.List;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/TenantServiceImpl.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/TenantServiceImpl.java
similarity index 88%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/TenantServiceImpl.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/TenantServiceImpl.java
index a8b8fbe..19c73a0 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/TenantServiceImpl.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/TenantServiceImpl.java
@@ -1,4 +1,20 @@
-package cd.casic.module.system.service.tenant;
+package cd.casic.framework.datapermission.service;
+
+import cd.casic.framework.commons.exception.util.ServiceExceptionUtil;
+
+import cd.casic.framework.datapermission.config.TenantProperties;
+import cd.casic.framework.datapermission.convert.TenantConvert;
+import cd.casic.framework.datapermission.core.dal.TenantMapper;
+import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
+import cd.casic.framework.datapermission.service.handler.TenantInfoHandler;
+import cd.casic.framework.datapermission.service.handler.TenantMenuHandler;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
+import cd.casic.framework.datapermission.core.vo.role.RoleSaveReqVO;
+import cd.casic.framework.security.dal.permission.RoleDO;
+import cd.casic.framework.security.dal.tenant.TenantDO;
+import cd.casic.framework.security.dal.tenant.TenantPackageDO;
+import cd.casic.framework.security.vo.vo.tenant.TenantPageReqVO;
+import cd.casic.framework.security.vo.vo.tenant.TenantSaveReqVO;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.lang.Assert;
@@ -9,33 +25,16 @@ import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.collection.CollectionUtils;
import cd.casic.framework.commons.util.date.DateUtils;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.framework.tenant.config.TenantProperties;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
-import cd.casic.framework.tenant.core.util.TenantUtils;
-import cd.casic.module.system.controller.admin.permission.vo.role.RoleSaveReqVO;
-import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantPageReqVO;
-import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantSaveReqVO;
-import cd.casic.module.system.convert.tenant.TenantConvert;
-import cd.casic.module.system.dal.dataobject.permission.MenuDO;
-import cd.casic.module.system.dal.dataobject.permission.RoleDO;
-import cd.casic.module.system.dal.dataobject.tenant.TenantDO;
-import cd.casic.module.system.dal.dataobject.tenant.TenantPackageDO;
-import cd.casic.module.system.dal.mysql.tenant.TenantMapper;
+import cd.casic.framework.commons.context.TenantContextHolder;
+import cd.casic.framework.commons.util.tenant.TenantUtils;
import cd.casic.module.system.enums.permission.RoleCodeEnum;
import cd.casic.module.system.enums.permission.RoleTypeEnum;
-import cd.casic.module.system.service.permission.MenuService;
-import cd.casic.module.system.service.permission.PermissionService;
-import cd.casic.module.system.service.permission.RoleService;
-import cd.casic.module.system.service.tenant.handler.TenantInfoHandler;
-import cd.casic.module.system.service.tenant.handler.TenantMenuHandler;
-import cd.casic.module.system.service.user.AdminUserService;
import com.baomidou.dynamic.datasource.annotation.DSTransactional;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
-
import jakarta.annotation.Resource;
import java.util.List;
import java.util.Objects;
@@ -87,10 +86,10 @@ public class TenantServiceImpl implements TenantService {
throw exception(TENANT_NOT_EXISTS);
}
if (tenant.getStatus().equals(CommonStatusEnum.DISABLE.getStatus())) {
- throw exception(TENANT_DISABLE, tenant.getName());
+ throw ServiceExceptionUtil.exception(TENANT_DISABLE, tenant.getName());
}
if (DateUtils.isExpired(tenant.getExpireTime())) {
- throw exception(TENANT_EXPIRE, tenant.getName());
+ throw ServiceExceptionUtil.exception(TENANT_EXPIRE, tenant.getName());
}
}
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthLoginReqVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/AuthLoginReqVO.java
similarity index 95%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthLoginReqVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/AuthLoginReqVO.java
index 60292df..2551a40 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthLoginReqVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/AuthLoginReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.auth.vo;
+package cd.casic.framework.datapermission.service.auth.vo;
import cd.casic.framework.commons.validation.InEnum;
import cn.hutool.core.util.StrUtil;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthLoginRespVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/AuthLoginRespVO.java
similarity index 94%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthLoginRespVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/AuthLoginRespVO.java
index 2702b26..fe7112e 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthLoginRespVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/AuthLoginRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.auth.vo;
+package cd.casic.framework.datapermission.service.auth.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthMenuRespVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/AuthMenuRespVO.java
similarity index 96%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthMenuRespVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/AuthMenuRespVO.java
index ecdd0aa..077d36b 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthMenuRespVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/AuthMenuRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.auth.vo;
+package cd.casic.framework.datapermission.service.auth.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthPermissionInfoRespVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/AuthPermissionInfoRespVO.java
similarity index 98%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthPermissionInfoRespVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/AuthPermissionInfoRespVO.java
index 57be0a9..1d89c78 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthPermissionInfoRespVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/AuthPermissionInfoRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.auth.vo;
+package cd.casic.framework.datapermission.service.auth.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/profile/UserProfileRespVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/profile/UserProfileRespVO.java
similarity index 88%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/profile/UserProfileRespVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/profile/UserProfileRespVO.java
index 06b61c2..fdeecf2 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/profile/UserProfileRespVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/profile/UserProfileRespVO.java
@@ -1,8 +1,9 @@
-package cd.casic.module.system.controller.admin.user.vo.profile;
+package cd.casic.framework.datapermission.service.auth.vo.profile;
-import cd.casic.module.system.controller.admin.dept.vo.dept.DeptSimpleRespVO;
-import cd.casic.module.system.controller.admin.dept.vo.post.PostSimpleRespVO;
-import cd.casic.module.system.controller.admin.permission.vo.role.RoleSimpleRespVO;
+import cd.casic.framework.datapermission.core.vo.role.RoleSimpleRespVO;
+import cd.casic.framework.security.vo.dept.DeptSimpleRespVO;
+
+import cd.casic.framework.security.vo.dept.post.PostSimpleRespVO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/profile/UserProfileUpdatePasswordReqVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/profile/UserProfileUpdatePasswordReqVO.java
similarity index 92%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/profile/UserProfileUpdatePasswordReqVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/profile/UserProfileUpdatePasswordReqVO.java
index ce69439..74c6790 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/profile/UserProfileUpdatePasswordReqVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/profile/UserProfileUpdatePasswordReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.user.vo.profile;
+package cd.casic.framework.datapermission.service.auth.vo.profile;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/profile/UserProfileUpdateReqVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/profile/UserProfileUpdateReqVO.java
similarity index 94%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/profile/UserProfileUpdateReqVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/profile/UserProfileUpdateReqVO.java
index 7f0eafb..618bf0c 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/vo/profile/UserProfileUpdateReqVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/auth/vo/profile/UserProfileUpdateReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.user.vo.profile;
+package cd.casic.framework.datapermission.service.auth.vo.profile;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Email;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/dept/DeptService.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/dept/DeptService.java
similarity index 90%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/dept/DeptService.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/dept/DeptService.java
index a958fbd..74a28a7 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/dept/DeptService.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/dept/DeptService.java
@@ -1,10 +1,10 @@
-package cd.casic.module.system.service.dept;
+package cd.casic.framework.datapermission.service.dept;
import cd.casic.framework.commons.util.collection.CollectionUtils;
-import cd.casic.module.system.controller.admin.dept.vo.dept.DeptListReqVO;
-import cd.casic.module.system.controller.admin.dept.vo.dept.DeptSaveReqVO;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.security.vo.dept.DeptListReqVO;
+import cd.casic.framework.security.vo.dept.DeptSaveReqVO;
import java.util.*;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/dept/DeptServiceImpl.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/dept/DeptServiceImpl.java
similarity index 93%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/dept/DeptServiceImpl.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/dept/DeptServiceImpl.java
index bb73bfb..1cd9448 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/dept/DeptServiceImpl.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/dept/DeptServiceImpl.java
@@ -1,15 +1,16 @@
-package cd.casic.module.system.service.dept;
+package cd.casic.framework.datapermission.service.dept;
+import cd.casic.framework.datapermission.core.annotation.DataPermission;
+import cd.casic.framework.security.dal.dept.DeptMapper;
+import cd.casic.framework.security.vo.dept.DeptListReqVO;
+import cd.casic.framework.security.vo.dept.DeptSaveReqVO;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.framework.datapermission.core.annotation.DataPermission;
-import cd.casic.module.system.controller.admin.dept.vo.dept.DeptListReqVO;
-import cd.casic.module.system.controller.admin.dept.vo.dept.DeptSaveReqVO;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
-import cd.casic.module.system.dal.mysql.dept.DeptMapper;
-import cd.casic.module.system.dal.redis.RedisKeyConstants;
+
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.security.redis.RedisKeyConstants;
import com.google.common.annotations.VisibleForTesting;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cache.annotation.CacheEvict;
@@ -89,7 +90,7 @@ public class DeptServiceImpl implements DeptService {
}
@VisibleForTesting
- void validateDeptExists(Long id) {
+ public void validateDeptExists(Long id) {
if (id == null) {
return;
}
@@ -100,7 +101,7 @@ public class DeptServiceImpl implements DeptService {
}
@VisibleForTesting
- void validateParentDept(Long id, Long parentId) {
+ public void validateParentDept(Long id, Long parentId) {
if (parentId == null || DeptDO.PARENT_ID_ROOT.equals(parentId)) {
return;
}
@@ -135,7 +136,7 @@ public class DeptServiceImpl implements DeptService {
}
@VisibleForTesting
- void validateDeptNameUnique(Long id, Long parentId, String name) {
+ public void validateDeptNameUnique(Long id, Long parentId, String name) {
DeptDO dept = deptMapper.selectByParentIdAndName(parentId, name);
if (dept == null) {
return;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/dept/PostService.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/dept/PostService.java
similarity index 87%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/dept/PostService.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/dept/PostService.java
index e81166d..272fa6e 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/dept/PostService.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/dept/PostService.java
@@ -1,9 +1,9 @@
-package cd.casic.module.system.service.dept;
+package cd.casic.framework.datapermission.service.dept;
import cd.casic.framework.commons.pojo.PageResult;
-import cd.casic.module.system.controller.admin.dept.vo.post.PostPageReqVO;
-import cd.casic.module.system.controller.admin.dept.vo.post.PostSaveReqVO;
-import cd.casic.module.system.dal.dataobject.dept.PostDO;
+import cd.casic.framework.security.vo.dept.post.PostPageReqVO;
+import cd.casic.framework.security.vo.dept.post.PostSaveReqVO;
+import cd.casic.framework.commons.dataobject.dept.PostDO;
import org.springframework.lang.Nullable;
import java.util.Collection;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/dept/PostServiceImpl.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/dept/PostServiceImpl.java
similarity index 93%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/dept/PostServiceImpl.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/dept/PostServiceImpl.java
index e3b34c8..81bc795 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/dept/PostServiceImpl.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/dept/PostServiceImpl.java
@@ -1,13 +1,14 @@
-package cd.casic.module.system.service.dept;
+package cd.casic.framework.datapermission.service.dept;
+import cd.casic.framework.security.dal.dept.PostMapper;
+import cd.casic.framework.security.vo.dept.post.PostPageReqVO;
+import cd.casic.framework.security.vo.dept.post.PostSaveReqVO;
import cn.hutool.core.collection.CollUtil;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.module.system.controller.admin.dept.vo.post.PostPageReqVO;
-import cd.casic.module.system.controller.admin.dept.vo.post.PostSaveReqVO;
-import cd.casic.module.system.dal.dataobject.dept.PostDO;
-import cd.casic.module.system.dal.mysql.dept.PostMapper;
+
+import cd.casic.framework.commons.dataobject.dept.PostDO;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/handler/TenantInfoHandler.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/handler/TenantInfoHandler.java
similarity index 76%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/handler/TenantInfoHandler.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/handler/TenantInfoHandler.java
index 7408559..430c327 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/handler/TenantInfoHandler.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/handler/TenantInfoHandler.java
@@ -1,6 +1,6 @@
-package cd.casic.module.system.service.tenant.handler;
+package cd.casic.framework.datapermission.service.handler;
-import cd.casic.module.system.dal.dataobject.tenant.TenantDO;
+import cd.casic.framework.security.dal.tenant.TenantDO;
/**
* 租户信息处理
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/handler/TenantMenuHandler.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/handler/TenantMenuHandler.java
similarity index 88%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/handler/TenantMenuHandler.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/handler/TenantMenuHandler.java
index 2c85f7d..b1255f5 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/tenant/handler/TenantMenuHandler.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/handler/TenantMenuHandler.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.service.tenant.handler;
+package cd.casic.framework.datapermission.service.handler;
import java.util.Set;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/logger/LoginLogService.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/log/LoginLogService.java
similarity index 74%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/logger/LoginLogService.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/log/LoginLogService.java
index e2b9880..7101bfa 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/logger/LoginLogService.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/log/LoginLogService.java
@@ -1,10 +1,10 @@
-package cd.casic.module.system.service.logger;
+package cd.casic.framework.datapermission.service.log;
import cd.casic.framework.commons.pojo.PageResult;
+import cd.casic.framework.security.vo.logger.LoginLogDO;
+import cd.casic.framework.security.vo.loginlog.LoginLogPageReqVO;
import cd.casic.module.system.api.logger.dto.LoginLogCreateReqDTO;
-import cd.casic.module.system.controller.admin.logger.vo.loginlog.LoginLogPageReqVO;
-import cd.casic.module.system.dal.dataobject.logger.LoginLogDO;
import jakarta.validation.Valid;
/**
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/logger/LoginLogServiceImpl.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/log/LoginLogServiceImpl.java
similarity index 76%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/logger/LoginLogServiceImpl.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/log/LoginLogServiceImpl.java
index d39d3bd..18ff1d6 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/logger/LoginLogServiceImpl.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/log/LoginLogServiceImpl.java
@@ -1,11 +1,12 @@
-package cd.casic.module.system.service.logger;
+package cd.casic.framework.datapermission.service.log;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.object.BeanUtils;
+import cd.casic.framework.datapermission.core.dal.LoginLogMapper;
+import cd.casic.framework.security.vo.logger.LoginLogDO;
+import cd.casic.framework.security.vo.loginlog.LoginLogPageReqVO;
import cd.casic.module.system.api.logger.dto.LoginLogCreateReqDTO;
-import cd.casic.module.system.controller.admin.logger.vo.loginlog.LoginLogPageReqVO;
-import cd.casic.module.system.dal.dataobject.logger.LoginLogDO;
-import cd.casic.module.system.dal.mysql.logger.LoginLogMapper;
+
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuListReqVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuListReqVO.java
similarity index 87%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuListReqVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuListReqVO.java
index 8c1414a..844d48d 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuListReqVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuListReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.permission.vo.menu;
+package cd.casic.framework.datapermission.service.permission.menu;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuRespVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuRespVO.java
similarity index 98%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuRespVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuRespVO.java
index cd603b3..5843093 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuRespVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.permission.vo.menu;
+package cd.casic.framework.datapermission.service.permission.menu;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import io.swagger.v3.oas.annotations.media.Schema;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuSaveVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuSaveVO.java
similarity index 97%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuSaveVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuSaveVO.java
index 2ac0fa7..1dfff14 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuSaveVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuSaveVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.permission.vo.menu;
+package cd.casic.framework.datapermission.service.permission.menu;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuSimpleRespVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuSimpleRespVO.java
similarity index 92%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuSimpleRespVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuSimpleRespVO.java
index 537c9e4..09c03c7 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuSimpleRespVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuSimpleRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.permission.vo.menu;
+package cd.casic.framework.datapermission.service.permission.menu;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuTreeVO.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuTreeVO.java
similarity index 97%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuTreeVO.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuTreeVO.java
index 8acc4c6..f5acf9c 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/vo/menu/MenuTreeVO.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/permission/menu/MenuTreeVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.permission.vo.menu;
+package cd.casic.framework.datapermission.service.permission.menu;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import com.fasterxml.jackson.annotation.JsonInclude;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/user/AdminUserService.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/AdminUserService.java
similarity index 87%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/user/AdminUserService.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/AdminUserService.java
index 1c6a7c8..86fe41a 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/user/AdminUserService.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/AdminUserService.java
@@ -1,15 +1,17 @@
-package cd.casic.module.system.service.user;
+package cd.casic.framework.datapermission.service.user;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.collection.CollectionUtils;
-import cd.casic.module.system.controller.admin.auth.vo.AuthRegisterReqVO;
-import cd.casic.module.system.controller.admin.user.vo.profile.UserProfileUpdatePasswordReqVO;
-import cd.casic.module.system.controller.admin.user.vo.profile.UserProfileUpdateReqVO;
-import cd.casic.module.system.controller.admin.user.vo.user.UserImportExcelVO;
-import cd.casic.module.system.controller.admin.user.vo.user.UserImportRespVO;
-import cd.casic.module.system.controller.admin.user.vo.user.UserPageReqVO;
-import cd.casic.module.system.controller.admin.user.vo.user.UserSaveReqVO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.datapermission.core.service.auth.vo.AuthRegisterReqVO;
+
+import cd.casic.framework.datapermission.service.auth.vo.profile.UserProfileUpdatePasswordReqVO;
+import cd.casic.framework.datapermission.service.auth.vo.profile.UserProfileUpdateReqVO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
+import cd.casic.framework.datapermission.core.vo.UserImportExcelVO;
+import cd.casic.framework.datapermission.core.vo.UserImportRespVO;
+import cd.casic.framework.datapermission.core.vo.UserPageReqVO;
+import cd.casic.framework.datapermission.core.vo.UserSaveReqVO;
+
import cn.hutool.core.collection.CollUtil;
import jakarta.validation.Valid;
diff --git a/modules/module-system-api/src/main/java/cd/casic/module/system/api/oauth2/OAuth2TokenApi.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/OAuth2TokenApi.java
similarity index 95%
rename from modules/module-system-api/src/main/java/cd/casic/module/system/api/oauth2/OAuth2TokenApi.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/OAuth2TokenApi.java
index 4673949..c03647e 100644
--- a/modules/module-system-api/src/main/java/cd/casic/module/system/api/oauth2/OAuth2TokenApi.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/OAuth2TokenApi.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.api.oauth2;
+package cd.casic.framework.datapermission.service.user;
import cd.casic.module.system.api.oauth2.dto.OAuth2AccessTokenCheckRespDTO;
import cd.casic.module.system.api.oauth2.dto.OAuth2AccessTokenCreateReqDTO;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/oauth2/OAuth2TokenApiImpl.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/OAuth2TokenApiImpl.java
similarity index 90%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/api/oauth2/OAuth2TokenApiImpl.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/OAuth2TokenApiImpl.java
index 66921bd..1f2be3b 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/oauth2/OAuth2TokenApiImpl.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/OAuth2TokenApiImpl.java
@@ -1,11 +1,10 @@
-package cd.casic.module.system.api.oauth2;
+package cd.casic.framework.datapermission.service.user;
import cd.casic.framework.commons.util.object.BeanUtils;
+import cd.casic.framework.security.dal.oauth2.OAuth2AccessTokenDO;
import cd.casic.module.system.api.oauth2.dto.OAuth2AccessTokenCheckRespDTO;
import cd.casic.module.system.api.oauth2.dto.OAuth2AccessTokenCreateReqDTO;
import cd.casic.module.system.api.oauth2.dto.OAuth2AccessTokenRespDTO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
-import cd.casic.module.system.service.oauth2.OAuth2TokenService;
import org.springframework.stereotype.Service;
import jakarta.annotation.Resource;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2TokenService.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/OAuth2TokenService.java
similarity index 90%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2TokenService.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/OAuth2TokenService.java
index 82346f5..3569de8 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2TokenService.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/OAuth2TokenService.java
@@ -1,9 +1,10 @@
-package cd.casic.module.system.service.oauth2;
+package cd.casic.framework.datapermission.service.user;
+
import cd.casic.framework.commons.pojo.PageResult;
-import cd.casic.module.system.controller.admin.oauth2.vo.token.OAuth2AccessTokenPageReqVO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.security.vo.vo.token.OAuth2AccessTokenPageReqVO;
import java.util.List;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2TokenServiceImpl.java b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/OAuth2TokenServiceImpl.java
similarity index 91%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2TokenServiceImpl.java
rename to framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/OAuth2TokenServiceImpl.java
index 53a9c17..01b040c 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2TokenServiceImpl.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/main/java/cd/casic/framework/datapermission/service/user/OAuth2TokenServiceImpl.java
@@ -1,5 +1,12 @@
-package cd.casic.module.system.service.oauth2;
+package cd.casic.framework.datapermission.service.user;
+import cd.casic.framework.commons.context.TenantContextHolder;
+import cd.casic.framework.commons.util.tenant.TenantUtils;
+import cd.casic.framework.security.dal.oauth2.*;
+import cd.casic.framework.security.dal.user.AdminUserDO;
+import cd.casic.framework.security.oauth2.OAuth2ClientService;
+import cd.casic.framework.security.redis.oauth2.OAuth2AccessTokenRedisDAO;
+import cd.casic.framework.security.vo.vo.token.OAuth2AccessTokenPageReqVO;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.IdUtil;
@@ -11,17 +18,6 @@ import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.date.DateUtils;
import cd.casic.framework.commons.util.object.BeanUtils;
import cd.casic.framework.security.core.LoginUser;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
-import cd.casic.framework.tenant.core.util.TenantUtils;
-import cd.casic.module.system.controller.admin.oauth2.vo.token.OAuth2AccessTokenPageReqVO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ClientDO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2RefreshTokenDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
-import cd.casic.module.system.dal.mysql.oauth2.OAuth2AccessTokenMapper;
-import cd.casic.module.system.dal.mysql.oauth2.OAuth2RefreshTokenMapper;
-import cd.casic.module.system.dal.redis.oauth2.OAuth2AccessTokenRedisDAO;
-import cd.casic.module.system.service.user.AdminUserService;
import jakarta.annotation.Resource;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
@@ -54,7 +50,7 @@ public class OAuth2TokenServiceImpl implements OAuth2TokenService {
@Resource
private OAuth2ClientService oauth2ClientService;
@Resource
- @Lazy // 懒加载,避免循环依赖
+// @Lazy // 懒加载,避免循环依赖
private AdminUserService adminUserService;
@Override
diff --git a/framework/spring-boot-starter-biz-data-permission/src/test/java/cd/casic/framework/datapermission/rule/dept/DeptDataPermissionRuleTest.java b/framework/spring-boot-starter-biz-data-permission/src/test/java/cd/casic/framework/datapermission/rule/dept/DeptDataPermissionRuleTest.java
index b6c28aa..6e393c0 100644
--- a/framework/spring-boot-starter-biz-data-permission/src/test/java/cd/casic/framework/datapermission/rule/dept/DeptDataPermissionRuleTest.java
+++ b/framework/spring-boot-starter-biz-data-permission/src/test/java/cd/casic/framework/datapermission/rule/dept/DeptDataPermissionRuleTest.java
@@ -3,10 +3,10 @@ package cd.casic.framework.datapermission.rule.dept;
import cd.casic.framework.commons.enums.UserTypeEnum;
import cd.casic.framework.commons.util.collection.SetUtils;
import cd.casic.framework.datapermission.core.rule.dept.DeptDataPermissionRule;
+import cd.casic.framework.datapermission.service.PermissionApi;
import cd.casic.framework.security.core.LoginUser;
import cd.casic.framework.security.core.util.SecurityFrameworkUtils;
import cd.casic.framework.test.core.ut.BaseMockitoUnitTest;
-import cd.casic.module.system.api.permission.PermissionApi;
import cd.casic.module.system.api.permission.dto.DeptDataPermissionRespDTO;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ReflectUtil;
@@ -21,7 +21,6 @@ import org.mockito.MockedStatic;
import java.util.Map;
-import static cd.casic.framework.datapermission.core.rule.dept.DeptDataPermissionRule.*;
import static cd.casic.framework.test.core.util.RandomUtils.*;
import static org.junit.jupiter.api.Assertions.*;
import static org.mockito.ArgumentMatchers.eq;
diff --git a/framework/spring-boot-starter-biz-ip/src/test/java/cd/casic/framework/redis/AreaUtilsTest.java b/framework/spring-boot-starter-biz-ip/src/test/java/cd/casic/framework/redis/AreaUtilsTest.java
index 02318b5..05cb326 100644
--- a/framework/spring-boot-starter-biz-ip/src/test/java/cd/casic/framework/redis/AreaUtilsTest.java
+++ b/framework/spring-boot-starter-biz-ip/src/test/java/cd/casic/framework/redis/AreaUtilsTest.java
@@ -1,9 +1,9 @@
package cd.casic.framework.redis;
-import cd.casic.framework.redis.core.Area;
-import cd.casic.framework.redis.core.enums.AreaTypeEnum;
-import cd.casic.framework.redis.core.utils.AreaUtils;
+import cd.casic.framework.commons.util.redis.core.Area;
+import cd.casic.framework.commons.util.redis.core.enums.AreaTypeEnum;
+import cd.casic.framework.commons.util.redis.core.utils.AreaUtils;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertEquals;
diff --git a/framework/spring-boot-starter-biz-ip/src/test/java/cd/casic/framework/redis/IPUtilsTest.java b/framework/spring-boot-starter-biz-ip/src/test/java/cd/casic/framework/redis/IPUtilsTest.java
index 8208c87..db97c52 100644
--- a/framework/spring-boot-starter-biz-ip/src/test/java/cd/casic/framework/redis/IPUtilsTest.java
+++ b/framework/spring-boot-starter-biz-ip/src/test/java/cd/casic/framework/redis/IPUtilsTest.java
@@ -1,7 +1,7 @@
package cd.casic.framework.redis;
-import cd.casic.framework.redis.core.Area;
-import cd.casic.framework.redis.core.utils.IPUtils;
+import cd.casic.framework.commons.util.redis.core.Area;
+import cd.casic.framework.commons.util.redis.core.utils.IPUtils;
import org.junit.jupiter.api.Test;
import org.lionsoul.ip2region.xdb.Searcher;
diff --git a/framework/spring-boot-starter-biz-tenant/pom.xml b/framework/spring-boot-starter-biz-tenant/pom.xml
index 6976d4b..57aca4f 100644
--- a/framework/spring-boot-starter-biz-tenant/pom.xml
+++ b/framework/spring-boot-starter-biz-tenant/pom.xml
@@ -22,7 +22,7 @@
cd.casic.boot
- spring-boot-starter-security
+ spring-boot-starter-biz-data-permission
@@ -77,6 +77,10 @@
spring-boot-starter-test
test
+
+ cd.casic.boot
+ spring-boot-starter-security
+
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/config/OpsTenantAutoConfiguration.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/config/OpsTenantAutoConfiguration.java
index a7ebaa2..d8583d8 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/config/OpsTenantAutoConfiguration.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/config/OpsTenantAutoConfiguration.java
@@ -1,5 +1,6 @@
package cd.casic.framework.tenant.config;
+import cd.casic.framework.commons.config.WebProperties;
import cd.casic.framework.commons.enums.WebFilterOrderEnum;
import cd.casic.framework.mybatis.core.util.MyBatisUtils;
import cd.casic.framework.redis.config.OpsCacheProperties;
@@ -12,8 +13,7 @@ import cd.casic.framework.tenant.core.service.TenantFrameworkServiceImpl;
import cd.casic.framework.tenant.core.mq.redis.TenantRedisMessageInterceptor;
import cd.casic.framework.tenant.core.service.TenantFrameworkService;
import cd.casic.framework.tenant.core.web.TenantContextWebFilter;
-import cd.casic.framework.web.config.WebProperties;
-import cd.casic.framework.web.core.handler.GlobalExceptionHandler;
+import cd.casic.framework.datapermission.handler.GlobalExceptionHandler;
import cd.casic.module.system.api.tenant.TenantApi;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.TenantLineInnerInterceptor;
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/convert/AuthConvert.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/convert/AuthConvert.java
new file mode 100644
index 0000000..8b062b4
--- /dev/null
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/convert/AuthConvert.java
@@ -0,0 +1,80 @@
+package cd.casic.framework.tenant.convert;
+
+import cd.casic.framework.commons.util.object.BeanUtils;
+import cd.casic.framework.datapermission.service.auth.vo.AuthLoginRespVO;
+import cd.casic.framework.datapermission.service.auth.vo.AuthPermissionInfoRespVO;
+import cd.casic.framework.security.dal.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.security.dal.permission.RoleDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
+import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
+import cd.casic.module.system.enums.permission.MenuTypeEnum;
+import cn.hutool.core.collection.CollUtil;
+import org.mapstruct.Mapper;
+import org.mapstruct.factory.Mappers;
+import org.slf4j.LoggerFactory;
+
+import java.util.*;
+
+import static cd.casic.framework.commons.util.collection.CollectionUtils.convertSet;
+import static cd.casic.framework.commons.util.collection.CollectionUtils.filterList;
+import static cd.casic.framework.datapermission.core.dal.dataobject.MenuDO.ID_ROOT;
+
+@Mapper
+public interface AuthConvert {
+
+ AuthConvert INSTANCE = Mappers.getMapper(AuthConvert.class);
+
+ AuthLoginRespVO convert(OAuth2AccessTokenDO bean);
+
+ default AuthPermissionInfoRespVO convert(AdminUserDO user, List roleList, List menuList) {
+ return AuthPermissionInfoRespVO.builder()
+ .user(BeanUtils.toBean(user, AuthPermissionInfoRespVO.UserVO.class))
+ .roles(convertSet(roleList, RoleDO::getCode))
+ // 权限标识信息
+ .permissions(convertSet(menuList, MenuDO::getPermission))
+ // 菜单树
+ .menus(buildMenuTree(menuList))
+ .build();
+ }
+
+ AuthPermissionInfoRespVO.MenuVO convertTreeNode(MenuDO menu);
+
+ /**
+ * 将菜单列表,构建成菜单树
+ *
+ * @param menuList 菜单列表
+ * @return 菜单树
+ */
+ default List buildMenuTree(List menuList) {
+ if (CollUtil.isEmpty(menuList)) {
+ return Collections.emptyList();
+ }
+ // 移除按钮
+ menuList.removeIf(menu -> menu.getType().equals(MenuTypeEnum.BUTTON.getType()));
+ // 排序,保证菜单的有序性
+ menuList.sort(Comparator.comparing(MenuDO::getSort));
+
+ // 构建菜单树
+ // 使用 LinkedHashMap 的原因,是为了排序 。实际也可以用 Stream API ,就是太丑了。
+ Map treeNodeMap = new LinkedHashMap<>();
+ menuList.forEach(menu -> treeNodeMap.put(menu.getId(), AuthConvert.INSTANCE.convertTreeNode(menu)));
+ // 处理父子关系
+ treeNodeMap.values().stream().filter(node -> !node.getParentId().equals(ID_ROOT)).forEach(childNode -> {
+ // 获得父节点
+ AuthPermissionInfoRespVO.MenuVO parentNode = treeNodeMap.get(childNode.getParentId());
+ if (parentNode == null) {
+ LoggerFactory.getLogger(getClass()).error("[buildRouterTree][resource({}) 找不到父资源({})]",
+ childNode.getId(), childNode.getParentId());
+ return;
+ }
+ // 将自己添加到父节点中
+ if (parentNode.getChildren() == null) {
+ parentNode.setChildren(new ArrayList<>());
+ }
+ parentNode.getChildren().add(childNode);
+ });
+ // 获得到所有的根节点
+ return filterList(treeNodeMap.values(), node -> ID_ROOT.equals(node.getParentId()));
+ }
+
+}
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/aop/TenantIgnoreAspect.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/aop/TenantIgnoreAspect.java
index 6b910b7..5418bb2 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/aop/TenantIgnoreAspect.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/aop/TenantIgnoreAspect.java
@@ -1,7 +1,8 @@
package cd.casic.framework.tenant.core.aop;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
-import cd.casic.framework.tenant.core.util.TenantUtils;
+import cd.casic.framework.commons.annotation.TenantIgnore;
+import cd.casic.framework.commons.context.TenantContextHolder;
+import cd.casic.framework.commons.util.tenant.TenantUtils;
import lombok.extern.slf4j.Slf4j;
import org.aspectj.lang.ProceedingJoinPoint;
import org.aspectj.lang.annotation.Around;
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/db/TenantBaseDO.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/db/TenantBaseDO.java
deleted file mode 100644
index a3425fc..0000000
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/db/TenantBaseDO.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package cd.casic.framework.tenant.core.db;
-
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-import lombok.experimental.Accessors;
-
-/**
- * 拓展多租户的 BaseDO 基类
- *
- * @author mianbin modified from yudao
- */
-@Data
-@Accessors(chain = true)
-@EqualsAndHashCode(callSuper = true)
-public abstract class TenantBaseDO extends BaseDO {
-
- /**
- * 多租户编号
- */
- private Long tenantId;
-
-}
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/db/TenantDatabaseInterceptor.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/db/TenantDatabaseInterceptor.java
index 607bc36..fc3ceff 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/db/TenantDatabaseInterceptor.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/db/TenantDatabaseInterceptor.java
@@ -1,6 +1,6 @@
package cd.casic.framework.tenant.core.db;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
+import cd.casic.framework.commons.context.TenantContextHolder;
import cd.casic.framework.tenant.config.TenantProperties;
import cn.hutool.core.collection.CollUtil;
import com.baomidou.mybatisplus.extension.plugins.handler.TenantLineHandler;
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/job/TenantJobAspect.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/job/TenantJobAspect.java
index 25ac86c..3af66cd 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/job/TenantJobAspect.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/job/TenantJobAspect.java
@@ -2,7 +2,7 @@ package cd.casic.framework.tenant.core.job;
import cd.casic.framework.commons.util.json.JsonUtils;
import cd.casic.framework.tenant.core.service.TenantFrameworkService;
-import cd.casic.framework.tenant.core.util.TenantUtils;
+import cd.casic.framework.commons.util.tenant.TenantUtils;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.exceptions.ExceptionUtil;
import cn.hutool.core.util.StrUtil;
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/kafka/TenantKafkaProducerInterceptor.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/kafka/TenantKafkaProducerInterceptor.java
index 37ca9f0..d2a0215 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/kafka/TenantKafkaProducerInterceptor.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/kafka/TenantKafkaProducerInterceptor.java
@@ -1,6 +1,6 @@
package cd.casic.framework.tenant.core.mq.kafka;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
+import cd.casic.framework.commons.context.TenantContextHolder;
import cn.hutool.core.util.ReflectUtil;
import org.apache.kafka.clients.producer.ProducerInterceptor;
import org.apache.kafka.clients.producer.ProducerRecord;
@@ -10,7 +10,7 @@ import org.springframework.messaging.handler.invocation.InvocableHandlerMethod;
import java.util.Map;
-import static cd.casic.framework.web.core.util.WebFrameworkUtils.HEADER_TENANT_ID;
+import static cd.casic.framework.commons.util.util.WebFrameworkUtils.HEADER_TENANT_ID;
/**
* Kafka 消息队列的多租户 {@link ProducerInterceptor} 实现类
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/rabbitmq/TenantRabbitMQMessagePostProcessor.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/rabbitmq/TenantRabbitMQMessagePostProcessor.java
index 03a42d9..83aebbd 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/rabbitmq/TenantRabbitMQMessagePostProcessor.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/rabbitmq/TenantRabbitMQMessagePostProcessor.java
@@ -1,13 +1,13 @@
package cd.casic.framework.tenant.core.mq.rabbitmq;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
+import cd.casic.framework.commons.context.TenantContextHolder;
import org.apache.kafka.clients.producer.ProducerInterceptor;
import org.springframework.amqp.AmqpException;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.core.MessagePostProcessor;
import org.springframework.messaging.handler.invocation.InvocableHandlerMethod;
-import static cd.casic.framework.web.core.util.WebFrameworkUtils.HEADER_TENANT_ID;
+import static cd.casic.framework.commons.util.util.WebFrameworkUtils.HEADER_TENANT_ID;
/**
* RabbitMQ 消息队列的多租户 {@link ProducerInterceptor} 实现类
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/redis/TenantRedisMessageInterceptor.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/redis/TenantRedisMessageInterceptor.java
index 3df4121..9f7f822 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/redis/TenantRedisMessageInterceptor.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/redis/TenantRedisMessageInterceptor.java
@@ -2,10 +2,10 @@ package cd.casic.framework.tenant.core.mq.redis;
import cd.casic.framework.mq.redis.core.interceptor.RedisMessageInterceptor;
import cd.casic.framework.mq.redis.core.message.AbstractRedisMessage;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
+import cd.casic.framework.commons.context.TenantContextHolder;
import cn.hutool.core.util.StrUtil;
-import static cd.casic.framework.web.core.util.WebFrameworkUtils.HEADER_TENANT_ID;
+import static cd.casic.framework.commons.util.util.WebFrameworkUtils.HEADER_TENANT_ID;
/**
* 多租户 {@link AbstractRedisMessage} 拦截器
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/rocketmq/TenantRocketMQConsumeMessageHook.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/rocketmq/TenantRocketMQConsumeMessageHook.java
index 958a7c7..1d67c8c 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/rocketmq/TenantRocketMQConsumeMessageHook.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/rocketmq/TenantRocketMQConsumeMessageHook.java
@@ -1,6 +1,6 @@
package cd.casic.framework.tenant.core.mq.rocketmq;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
+import cd.casic.framework.commons.context.TenantContextHolder;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.StrUtil;
import org.apache.rocketmq.client.hook.ConsumeMessageContext;
@@ -10,7 +10,7 @@ import org.springframework.messaging.handler.invocation.InvocableHandlerMethod;
import java.util.List;
-import static cd.casic.framework.web.core.util.WebFrameworkUtils.HEADER_TENANT_ID;
+import static cd.casic.framework.commons.util.util.WebFrameworkUtils.HEADER_TENANT_ID;
/**
* RocketMQ 消息队列的多租户 {@link ConsumeMessageHook} 实现类
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/rocketmq/TenantRocketMQSendMessageHook.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/rocketmq/TenantRocketMQSendMessageHook.java
index 540d58b..f86ef47 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/rocketmq/TenantRocketMQSendMessageHook.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/mq/rocketmq/TenantRocketMQSendMessageHook.java
@@ -1,10 +1,10 @@
package cd.casic.framework.tenant.core.mq.rocketmq;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
+import cd.casic.framework.commons.context.TenantContextHolder;
import org.apache.rocketmq.client.hook.SendMessageContext;
import org.apache.rocketmq.client.hook.SendMessageHook;
-import static cd.casic.framework.web.core.util.WebFrameworkUtils.HEADER_TENANT_ID;
+import static cd.casic.framework.commons.util.util.WebFrameworkUtils.HEADER_TENANT_ID;
/**
* RocketMQ 消息队列的多租户 {@link SendMessageHook} 实现类
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/redis/TenantRedisCacheManager.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/redis/TenantRedisCacheManager.java
index 9073d4c..09a68d1 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/redis/TenantRedisCacheManager.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/redis/TenantRedisCacheManager.java
@@ -1,7 +1,7 @@
package cd.casic.framework.tenant.core.redis;
import cd.casic.framework.redis.core.TimeoutRedisCacheManager;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
+import cd.casic.framework.commons.context.TenantContextHolder;
import cn.hutool.core.collection.CollUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cache.Cache;
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/security/TenantSecurityWebFilter.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/security/TenantSecurityWebFilter.java
index 0535c57..eb7bbb2 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/security/TenantSecurityWebFilter.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/security/TenantSecurityWebFilter.java
@@ -1,17 +1,17 @@
package cd.casic.framework.tenant.core.security;
+import cd.casic.framework.commons.config.WebProperties;
import cd.casic.framework.commons.exception.enums.GlobalErrorCodeConstants;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.util.servlet.ServletUtils;
import cd.casic.framework.security.core.LoginUser;
import cd.casic.framework.security.core.util.SecurityFrameworkUtils;
import cd.casic.framework.tenant.config.TenantProperties;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
+import cd.casic.framework.commons.context.TenantContextHolder;
import cd.casic.framework.tenant.core.service.TenantFrameworkService;
import cd.casic.framework.web.core.filter.ApiRequestFilter;
-import cd.casic.framework.web.core.handler.GlobalExceptionHandler;
+import cd.casic.framework.datapermission.handler.GlobalExceptionHandler;
import cn.hutool.core.collection.CollUtil;
-import cd.casic.framework.web.config.WebProperties;
import jakarta.servlet.FilterChain;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/auth/AdminAuthService.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/AdminAuthService.java
similarity index 76%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/auth/AdminAuthService.java
rename to framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/AdminAuthService.java
index 6fc9db3..d717633 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/auth/AdminAuthService.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/AdminAuthService.java
@@ -1,8 +1,11 @@
-package cd.casic.module.system.service.auth;
+package cd.casic.framework.tenant.core.service;
-import cd.casic.module.system.controller.admin.auth.vo.*;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+
+import cd.casic.framework.datapermission.service.auth.vo.AuthLoginReqVO;
+import cd.casic.framework.datapermission.service.auth.vo.AuthLoginRespVO;
+import cd.casic.framework.datapermission.core.service.auth.vo.AuthRegisterReqVO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import jakarta.validation.Valid;
/**
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/auth/AdminAuthServiceImpl.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/AdminAuthServiceImpl.java
similarity index 89%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/auth/AdminAuthServiceImpl.java
rename to framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/AdminAuthServiceImpl.java
index 3d4efdd..cfc0b3d 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/auth/AdminAuthServiceImpl.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/AdminAuthServiceImpl.java
@@ -1,23 +1,25 @@
-package cd.casic.module.system.service.auth;
+package cd.casic.framework.tenant.core.service;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.enums.UserTypeEnum;
import cd.casic.framework.commons.util.monitor.TracerUtils;
import cd.casic.framework.commons.util.servlet.ServletUtils;
+import cd.casic.framework.datapermission.service.auth.vo.AuthLoginReqVO;
+import cd.casic.framework.datapermission.service.auth.vo.AuthLoginRespVO;
+import cd.casic.framework.datapermission.core.service.auth.vo.AuthRegisterReqVO;
+import cd.casic.framework.datapermission.service.log.LoginLogService;
+
+import cd.casic.framework.security.dal.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
+import cd.casic.framework.service.member.MemberService;
+import cd.casic.framework.tenant.convert.AuthConvert;
import cd.casic.module.system.api.logger.dto.LoginLogCreateReqDTO;
-import cd.casic.module.system.controller.admin.auth.vo.AuthLoginReqVO;
-import cd.casic.module.system.controller.admin.auth.vo.AuthLoginRespVO;
-import cd.casic.module.system.controller.admin.auth.vo.AuthRegisterReqVO;
-import cd.casic.module.system.convert.auth.AuthConvert;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import cd.casic.module.system.enums.logger.LoginLogTypeEnum;
import cd.casic.module.system.enums.logger.LoginResultEnum;
import cd.casic.module.system.enums.oauth2.OAuth2ClientConstants;
-import cd.casic.module.system.service.logger.LoginLogService;
-import cd.casic.module.system.service.member.MemberService;
-import cd.casic.module.system.service.oauth2.OAuth2TokenService;
-import cd.casic.module.system.service.user.AdminUserService;
+import cd.casic.framework.datapermission.service.user.OAuth2TokenService;
+
import cn.hutool.core.util.ObjectUtil;
import jakarta.annotation.Resource;
import jakarta.validation.Validator;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/user/AdminUserServiceImpl.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/AdminUserServiceImpl.java
similarity index 92%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/user/AdminUserServiceImpl.java
rename to framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/AdminUserServiceImpl.java
index 1263e63..6b42aa7 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/user/AdminUserServiceImpl.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/AdminUserServiceImpl.java
@@ -1,5 +1,21 @@
-package cd.casic.module.system.service.user;
+package cd.casic.framework.tenant.core.service;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.commons.dataobject.dept.UserPostDO;
+import cd.casic.framework.datapermission.core.util.DataPermissionUtils;
+import cd.casic.framework.datapermission.service.PermissionService;
+import cd.casic.framework.datapermission.service.TenantService;
+import cd.casic.framework.security.dal.dept.UserPostMapper;
+import cd.casic.framework.datapermission.core.dal.AdminUserMapper;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
+import cd.casic.framework.datapermission.core.vo.UserImportExcelVO;
+import cd.casic.framework.datapermission.core.vo.UserImportRespVO;
+import cd.casic.framework.datapermission.core.vo.UserPageReqVO;
+import cd.casic.framework.datapermission.core.vo.UserSaveReqVO;
+import cd.casic.framework.datapermission.service.auth.vo.profile.UserProfileUpdatePasswordReqVO;
+import cd.casic.framework.datapermission.service.auth.vo.profile.UserProfileUpdateReqVO;
+import cd.casic.framework.datapermission.service.dept.DeptService;
+import cd.casic.framework.datapermission.service.dept.PostService;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.io.IoUtil;
@@ -10,25 +26,12 @@ import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.collection.CollectionUtils;
import cd.casic.framework.commons.util.object.BeanUtils;
import cd.casic.framework.commons.util.validation.ValidationUtils;
-import cd.casic.framework.datapermission.core.util.DataPermissionUtils;
+
import cd.casic.module.infra.api.config.ConfigApi;
import cd.casic.module.infra.api.file.FileApi;
-import cd.casic.module.system.controller.admin.auth.vo.AuthRegisterReqVO;
-import cd.casic.module.system.controller.admin.user.vo.profile.UserProfileUpdatePasswordReqVO;
-import cd.casic.module.system.controller.admin.user.vo.profile.UserProfileUpdateReqVO;
-import cd.casic.module.system.controller.admin.user.vo.user.UserImportExcelVO;
-import cd.casic.module.system.controller.admin.user.vo.user.UserImportRespVO;
-import cd.casic.module.system.controller.admin.user.vo.user.UserPageReqVO;
-import cd.casic.module.system.controller.admin.user.vo.user.UserSaveReqVO;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
-import cd.casic.module.system.dal.dataobject.dept.UserPostDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
-import cd.casic.module.system.dal.mysql.dept.UserPostMapper;
-import cd.casic.module.system.dal.mysql.user.AdminUserMapper;
-import cd.casic.module.system.service.dept.DeptService;
-import cd.casic.module.system.service.dept.PostService;
-import cd.casic.module.system.service.permission.PermissionService;
-import cd.casic.module.system.service.tenant.TenantService;
+import cd.casic.framework.datapermission.core.service.auth.vo.AuthRegisterReqVO;
+
+import cd.casic.framework.security.dal.user.AdminUserDO;
import com.google.common.annotations.VisibleForTesting;
import com.mzt.logapi.context.LogRecordContext;
import com.mzt.logapi.service.impl.DiffParseFunction;
@@ -59,7 +62,7 @@ import static cd.casic.module.system.enums.LogRecordConstants.*;
@Slf4j
public class AdminUserServiceImpl implements AdminUserService {
- static final String USER_INIT_PASSWORD_KEY = "system.user.init-password";
+ public static final String USER_INIT_PASSWORD_KEY = "system.user.init-password";
@Resource
private AdminUserMapper userMapper;
@@ -373,7 +376,7 @@ public class AdminUserServiceImpl implements AdminUserService {
}
@VisibleForTesting
- AdminUserDO validateUserExists(Long id) {
+ public AdminUserDO validateUserExists(Long id) {
if (id == null) {
return null;
}
@@ -385,7 +388,7 @@ public class AdminUserServiceImpl implements AdminUserService {
}
@VisibleForTesting
- void validateUsernameUnique(Long id, String username) {
+ public void validateUsernameUnique(Long id, String username) {
if (StrUtil.isBlank(username)) {
return;
}
@@ -403,7 +406,7 @@ public class AdminUserServiceImpl implements AdminUserService {
}
@VisibleForTesting
- void validateEmailUnique(Long id, String email) {
+ public void validateEmailUnique(Long id, String email) {
if (StrUtil.isBlank(email)) {
return;
}
@@ -421,7 +424,7 @@ public class AdminUserServiceImpl implements AdminUserService {
}
@VisibleForTesting
- void validateMobileUnique(Long id, String mobile) {
+ public void validateMobileUnique(Long id, String mobile) {
if (StrUtil.isBlank(mobile)) {
return;
}
@@ -444,7 +447,7 @@ public class AdminUserServiceImpl implements AdminUserService {
* @param oldPassword 旧密码
*/
@VisibleForTesting
- void validateOldPassword(Long id, String oldPassword) {
+ public void validateOldPassword(Long id, String oldPassword) {
AdminUserDO user = userMapper.selectById(id);
if (user == null) {
throw exception(USER_NOT_EXISTS);
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2GrantService.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/OAuth2GrantService.java
similarity index 96%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2GrantService.java
rename to framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/OAuth2GrantService.java
index c6410ca..f4584f0 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2GrantService.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/OAuth2GrantService.java
@@ -1,6 +1,8 @@
-package cd.casic.module.system.service.oauth2;
+package cd.casic.framework.tenant.core.service;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
+
+
+import cd.casic.framework.security.dal.oauth2.OAuth2AccessTokenDO;
import java.util.List;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2GrantServiceImpl.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/OAuth2GrantServiceImpl.java
similarity index 91%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2GrantServiceImpl.java
rename to framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/OAuth2GrantServiceImpl.java
index 9c03b81..5765c38 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2GrantServiceImpl.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/OAuth2GrantServiceImpl.java
@@ -1,14 +1,17 @@
-package cd.casic.module.system.service.oauth2;
+package cd.casic.framework.tenant.core.service;
+
+
+import cd.casic.framework.datapermission.service.user.OAuth2TokenService;
+import cd.casic.framework.security.dal.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2CodeDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
+import cd.casic.framework.security.oauth2.OAuth2CodeService;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import cd.casic.framework.commons.enums.UserTypeEnum;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2CodeDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
import cd.casic.module.system.enums.ErrorCodeConstants;
-import cd.casic.module.system.service.auth.AdminAuthService;
import org.springframework.stereotype.Service;
import jakarta.annotation.Resource;
diff --git a/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/core/service/SecurityFrameworkService.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/SecurityFrameworkService.java
similarity index 95%
rename from framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/core/service/SecurityFrameworkService.java
rename to framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/SecurityFrameworkService.java
index 095f50f..ee0adca 100644
--- a/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/core/service/SecurityFrameworkService.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/SecurityFrameworkService.java
@@ -1,4 +1,4 @@
-package cd.casic.framework.security.core.service;
+package cd.casic.framework.tenant.core.service;
/**
* Security 框架 Service 接口,定义权限相关的校验操作
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/SecurityFrameworkServiceImpl.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/SecurityFrameworkServiceImpl.java
new file mode 100644
index 0000000..1e79d06
--- /dev/null
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/service/SecurityFrameworkServiceImpl.java
@@ -0,0 +1,66 @@
+package cd.casic.framework.tenant.core.service;
+
+import cd.casic.framework.datapermission.service.PermissionApi;
+import cd.casic.framework.security.core.LoginUser;
+import cd.casic.framework.security.core.util.SecurityFrameworkUtils;
+import cn.hutool.core.collection.CollUtil;
+import lombok.AllArgsConstructor;
+
+import java.util.Arrays;
+
+import static cd.casic.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
+
+
+/**
+ * 默认的 {@link SecurityFrameworkService} 实现类
+ *
+ * @author mianbin modified from yudao
+ */
+@AllArgsConstructor
+public class SecurityFrameworkServiceImpl implements SecurityFrameworkService {
+
+ private final PermissionApi permissionApi;
+
+ @Override
+ public boolean hasPermission(String permission) {
+ return hasAnyPermissions(permission);
+ }
+
+ @Override
+ public boolean hasAnyPermissions(String... permissions) {
+ Long userId = getLoginUserId();
+ if (userId == null) {
+ return false;
+ }
+ return permissionApi.hasAnyPermissions(userId, permissions);
+ }
+
+ @Override
+ public boolean hasRole(String role) {
+ return hasAnyRoles(role);
+ }
+
+ @Override
+ public boolean hasAnyRoles(String... roles) {
+ Long userId = getLoginUserId();
+ if (userId == null) {
+ return false;
+ }
+ return permissionApi.hasAnyRoles(userId, roles);
+ }
+
+ @Override
+ public boolean hasScope(String scope) {
+ return hasAnyScopes(scope);
+ }
+
+ @Override
+ public boolean hasAnyScopes(String... scope) {
+ LoginUser user = SecurityFrameworkUtils.getLoginUser();
+ if (user == null) {
+ return false;
+ }
+ return CollUtil.containsAny(user.getScopes(), Arrays.asList(scope));
+ }
+
+}
diff --git a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/web/TenantContextWebFilter.java b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/web/TenantContextWebFilter.java
index 226e761..6773d7c 100644
--- a/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/web/TenantContextWebFilter.java
+++ b/framework/spring-boot-starter-biz-tenant/src/main/java/cd/casic/framework/tenant/core/web/TenantContextWebFilter.java
@@ -1,7 +1,7 @@
package cd.casic.framework.tenant.core.web;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
-import cd.casic.framework.web.core.util.WebFrameworkUtils;
+import cd.casic.framework.commons.context.TenantContextHolder;
+import cd.casic.framework.commons.util.util.WebFrameworkUtils;
import jakarta.servlet.FilterChain;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
diff --git a/framework/spring-boot-starter-excel/pom.xml b/framework/spring-boot-starter-excel/pom.xml
index 5ca1acc..251ff3d 100644
--- a/framework/spring-boot-starter-excel/pom.xml
+++ b/framework/spring-boot-starter-excel/pom.xml
@@ -47,8 +47,25 @@
com.alibaba
easyexcel
+
+
+ com.alibaba
+ easyexcel-core
+
+
+
+
+ com.alibaba
+ easyexcel-core
+ 4.0.3
+ compile
+
+
+ org.ehcache
+ ehcache
+
+
-
com.google.guava
guava
diff --git a/framework/spring-boot-starter-excel/src/main/java/cd/casic/framework/excel/excel/core/convert/AreaConvert.java b/framework/spring-boot-starter-excel/src/main/java/cd/casic/framework/excel/excel/core/convert/AreaConvert.java
index 54b38d0..f6e425e 100644
--- a/framework/spring-boot-starter-excel/src/main/java/cd/casic/framework/excel/excel/core/convert/AreaConvert.java
+++ b/framework/spring-boot-starter-excel/src/main/java/cd/casic/framework/excel/excel/core/convert/AreaConvert.java
@@ -1,7 +1,7 @@
package cd.casic.framework.excel.excel.core.convert;
-import cd.casic.framework.redis.core.Area;
-import cd.casic.framework.redis.core.utils.AreaUtils;
+import cd.casic.framework.commons.util.redis.core.Area;
+import cd.casic.framework.commons.util.redis.core.utils.AreaUtils;
import cn.hutool.core.convert.Convert;
import com.alibaba.excel.converters.Converter;
import com.alibaba.excel.enums.CellDataTypeEnum;
diff --git a/framework/spring-boot-starter-mybatis/src/main/java/cd/casic/framework/mybatis/core/handler/DefaultDBFieldHandler.java b/framework/spring-boot-starter-mybatis/src/main/java/cd/casic/framework/mybatis/core/handler/DefaultDBFieldHandler.java
index 28fa14d..415040a 100644
--- a/framework/spring-boot-starter-mybatis/src/main/java/cd/casic/framework/mybatis/core/handler/DefaultDBFieldHandler.java
+++ b/framework/spring-boot-starter-mybatis/src/main/java/cd/casic/framework/mybatis/core/handler/DefaultDBFieldHandler.java
@@ -1,7 +1,7 @@
package cd.casic.framework.mybatis.core.handler;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
-import cd.casic.framework.web.core.util.WebFrameworkUtils;
+import cd.casic.framework.commons.dataobject.BaseDO;
+import cd.casic.framework.commons.util.util.WebFrameworkUtils;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import org.apache.ibatis.reflection.MetaObject;
diff --git a/framework/spring-boot-starter-protection/src/main/java/cd/casic/framework/protection/idempotent/core/keyresolver/impl/UserIdempotentKeyResolver.java b/framework/spring-boot-starter-protection/src/main/java/cd/casic/framework/protection/idempotent/core/keyresolver/impl/UserIdempotentKeyResolver.java
index 496b9f2..74f07d8 100644
--- a/framework/spring-boot-starter-protection/src/main/java/cd/casic/framework/protection/idempotent/core/keyresolver/impl/UserIdempotentKeyResolver.java
+++ b/framework/spring-boot-starter-protection/src/main/java/cd/casic/framework/protection/idempotent/core/keyresolver/impl/UserIdempotentKeyResolver.java
@@ -2,7 +2,7 @@ package cd.casic.framework.protection.idempotent.core.keyresolver.impl;
import cd.casic.framework.protection.idempotent.core.annotation.Idempotent;
import cd.casic.framework.protection.idempotent.core.keyresolver.IdempotentKeyResolver;
-import cd.casic.framework.web.core.util.WebFrameworkUtils;
+import cd.casic.framework.commons.util.util.WebFrameworkUtils;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import org.aspectj.lang.JoinPoint;
diff --git a/framework/spring-boot-starter-protection/src/main/java/cd/casic/framework/protection/ratelimiter/core/keyresolver/impl/UserRateLimiterKeyResolver.java b/framework/spring-boot-starter-protection/src/main/java/cd/casic/framework/protection/ratelimiter/core/keyresolver/impl/UserRateLimiterKeyResolver.java
index e33f47f..e059109 100644
--- a/framework/spring-boot-starter-protection/src/main/java/cd/casic/framework/protection/ratelimiter/core/keyresolver/impl/UserRateLimiterKeyResolver.java
+++ b/framework/spring-boot-starter-protection/src/main/java/cd/casic/framework/protection/ratelimiter/core/keyresolver/impl/UserRateLimiterKeyResolver.java
@@ -2,7 +2,7 @@ package cd.casic.framework.protection.ratelimiter.core.keyresolver.impl;
import cd.casic.framework.protection.ratelimiter.core.annotation.RateLimiter;
import cd.casic.framework.protection.ratelimiter.core.keyresolver.RateLimiterKeyResolver;
-import cd.casic.framework.web.core.util.WebFrameworkUtils;
+import cd.casic.framework.commons.util.util.WebFrameworkUtils;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.SecureUtil;
import org.aspectj.lang.JoinPoint;
diff --git a/framework/spring-boot-starter-security/pom.xml b/framework/spring-boot-starter-security/pom.xml
index 59e30cb..5bf8dcf 100644
--- a/framework/spring-boot-starter-security/pom.xml
+++ b/framework/spring-boot-starter-security/pom.xml
@@ -67,7 +67,19 @@
spring-boot-starter-test
test
-
+
+ com.baomidou
+ mybatis-plus-extension
+ 3.5.8
+
+
+ cd.casic.boot
+ spring-boot-starter-mybatis
+
+
+ cd.casic.boot
+ spring-boot-starter-excel
+
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthRegisterReqVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/datapermission/core/service/auth/vo/AuthRegisterReqVO.java
similarity index 94%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthRegisterReqVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/datapermission/core/service/auth/vo/AuthRegisterReqVO.java
index 7d31cd5..4ff6388 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/vo/AuthRegisterReqVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/datapermission/core/service/auth/vo/AuthRegisterReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.auth.vo;
+package cd.casic.framework.datapermission.core.service.auth.vo;
import io.swagger.v3.oas.annotations.media.Schema;
diff --git a/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/config/AuthorizeRequestsCustomizer.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/config/AuthorizeRequestsCustomizer.java
index eeeec0b..8d923f8 100644
--- a/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/config/AuthorizeRequestsCustomizer.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/config/AuthorizeRequestsCustomizer.java
@@ -1,6 +1,6 @@
package cd.casic.framework.security.config;
-import cd.casic.framework.web.config.WebProperties;
+import cd.casic.framework.commons.config.WebProperties;
import jakarta.annotation.Resource;
import org.springframework.core.Ordered;
import org.springframework.security.config.Customizer;
diff --git a/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/core/util/SecurityFrameworkUtils.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/core/util/SecurityFrameworkUtils.java
index c9d7a34..3287388 100644
--- a/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/core/util/SecurityFrameworkUtils.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/core/util/SecurityFrameworkUtils.java
@@ -1,7 +1,7 @@
package cd.casic.framework.security.core.util;
import cd.casic.framework.security.core.LoginUser;
-import cd.casic.framework.web.core.util.WebFrameworkUtils;
+import cd.casic.framework.commons.util.util.WebFrameworkUtils;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.StrUtil;
import jakarta.servlet.http.HttpServletRequest;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/dept/DeptMapper.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/dept/DeptMapper.java
similarity index 85%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/dept/DeptMapper.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/dept/DeptMapper.java
index 0a310e2..7f2c2e1 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/dept/DeptMapper.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/dept/DeptMapper.java
@@ -1,9 +1,9 @@
-package cd.casic.module.system.dal.mysql.dept;
+package cd.casic.framework.security.dal.dept;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cd.casic.module.system.controller.admin.dept.vo.dept.DeptListReqVO;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
+import cd.casic.framework.security.vo.dept.DeptListReqVO;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
import org.apache.ibatis.annotations.Mapper;
import java.util.Collection;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/dept/PostMapper.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/dept/PostMapper.java
similarity index 83%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/dept/PostMapper.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/dept/PostMapper.java
index 0b285ea..14be5b0 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/dept/PostMapper.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/dept/PostMapper.java
@@ -1,16 +1,15 @@
-package cd.casic.module.system.dal.mysql.dept;
+package cd.casic.framework.security.dal.dept;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cd.casic.module.system.dal.dataobject.dept.PostDO;
+import cd.casic.framework.commons.dataobject.dept.PostDO;
+import cd.casic.framework.security.vo.dept.post.PostPageReqVO;
import org.apache.ibatis.annotations.Mapper;
import java.util.Collection;
import java.util.List;
-import cd.casic.module.system.controller.admin.dept.vo.post.PostPageReqVO;
-import java.util.Collection;
-import java.util.List;
+
@Mapper
public interface PostMapper extends BaseMapperX {
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/dept/UserPostMapper.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/dept/UserPostMapper.java
similarity index 90%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/dept/UserPostMapper.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/dept/UserPostMapper.java
index ff58784..393de16 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/dept/UserPostMapper.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/dept/UserPostMapper.java
@@ -1,8 +1,8 @@
-package cd.casic.module.system.dal.mysql.dept;
+package cd.casic.framework.security.dal.dept;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cd.casic.module.system.dal.dataobject.dept.UserPostDO;
+import cd.casic.framework.commons.dataobject.dept.UserPostDO;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import org.apache.ibatis.annotations.Mapper;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2AccessTokenDO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2AccessTokenDO.java
similarity index 94%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2AccessTokenDO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2AccessTokenDO.java
index 49a5adf..87d1005 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2AccessTokenDO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2AccessTokenDO.java
@@ -1,7 +1,8 @@
-package cd.casic.module.system.dal.dataobject.oauth2;
+package cd.casic.framework.security.dal.oauth2;
+import cd.casic.framework.commons.dataobject.tenant.TenantBaseDO;
import cd.casic.framework.commons.enums.UserTypeEnum;
-import cd.casic.framework.tenant.core.db.TenantBaseDO;
+
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2AccessTokenMapper.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2AccessTokenMapper.java
similarity index 84%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2AccessTokenMapper.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2AccessTokenMapper.java
index f747f1b..8c393bc 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2AccessTokenMapper.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2AccessTokenMapper.java
@@ -1,11 +1,10 @@
-package cd.casic.module.system.dal.mysql.oauth2;
+package cd.casic.framework.security.dal.oauth2;
+import cd.casic.framework.commons.annotation.TenantIgnore;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cd.casic.framework.tenant.core.aop.TenantIgnore;
-import cd.casic.module.system.controller.admin.oauth2.vo.token.OAuth2AccessTokenPageReqVO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.security.vo.vo.token.OAuth2AccessTokenPageReqVO;
import org.apache.ibatis.annotations.Mapper;
import java.time.LocalDateTime;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2ApproveDO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2ApproveDO.java
similarity index 92%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2ApproveDO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2ApproveDO.java
index 83fa606..1c84ede 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2ApproveDO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2ApproveDO.java
@@ -1,7 +1,7 @@
-package cd.casic.module.system.dal.dataobject.oauth2;
+package cd.casic.framework.security.dal.oauth2;
import cd.casic.framework.commons.enums.UserTypeEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2ApproveMapper.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2ApproveMapper.java
similarity index 90%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2ApproveMapper.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2ApproveMapper.java
index 5d40aaf..9653421 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2ApproveMapper.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2ApproveMapper.java
@@ -1,8 +1,8 @@
-package cd.casic.module.system.dal.mysql.oauth2;
+package cd.casic.framework.security.dal.oauth2;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ApproveDO;
+
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2ClientDO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2ClientDO.java
similarity index 96%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2ClientDO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2ClientDO.java
index 907f774..70cd4b1 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2ClientDO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2ClientDO.java
@@ -1,7 +1,7 @@
-package cd.casic.module.system.dal.dataobject.oauth2;
+package cd.casic.framework.security.dal.oauth2;
import cd.casic.framework.commons.enums.CommonStatusEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import cd.casic.module.system.enums.oauth2.OAuth2GrantTypeEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2ClientMapper.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2ClientMapper.java
similarity index 81%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2ClientMapper.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2ClientMapper.java
index 8fb4135..1264cff 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2ClientMapper.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2ClientMapper.java
@@ -1,10 +1,10 @@
-package cd.casic.module.system.dal.mysql.oauth2;
+package cd.casic.framework.security.dal.oauth2;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cd.casic.module.system.controller.admin.oauth2.vo.client.OAuth2ClientPageReqVO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ClientDO;
+
+import cd.casic.framework.security.vo.vo.client.OAuth2ClientPageReqVO;
import org.apache.ibatis.annotations.Mapper;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2CodeDO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2CodeDO.java
similarity index 93%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2CodeDO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2CodeDO.java
index a323407..816cb45 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2CodeDO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2CodeDO.java
@@ -1,7 +1,7 @@
-package cd.casic.module.system.dal.dataobject.oauth2;
+package cd.casic.framework.security.dal.oauth2;
import cd.casic.framework.commons.enums.UserTypeEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2CodeMapper.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2CodeMapper.java
similarity index 72%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2CodeMapper.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2CodeMapper.java
index 5affe04..ed165c4 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2CodeMapper.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2CodeMapper.java
@@ -1,7 +1,6 @@
-package cd.casic.module.system.dal.mysql.oauth2;
+package cd.casic.framework.security.dal.oauth2;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2CodeDO;
import org.apache.ibatis.annotations.Mapper;
@Mapper
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2RefreshTokenDO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2RefreshTokenDO.java
similarity index 93%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2RefreshTokenDO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2RefreshTokenDO.java
index 8b609fc..44965ca 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/oauth2/OAuth2RefreshTokenDO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2RefreshTokenDO.java
@@ -1,7 +1,7 @@
-package cd.casic.module.system.dal.dataobject.oauth2;
+package cd.casic.framework.security.dal.oauth2;
+import cd.casic.framework.commons.dataobject.tenant.TenantBaseDO;
import cd.casic.framework.commons.enums.UserTypeEnum;
-import cd.casic.framework.tenant.core.db.TenantBaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2RefreshTokenMapper.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2RefreshTokenMapper.java
similarity index 82%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2RefreshTokenMapper.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2RefreshTokenMapper.java
index 0e1f712..89e8787 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/oauth2/OAuth2RefreshTokenMapper.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/oauth2/OAuth2RefreshTokenMapper.java
@@ -1,9 +1,8 @@
-package cd.casic.module.system.dal.mysql.oauth2;
+package cd.casic.framework.security.dal.oauth2;
+import cd.casic.framework.commons.annotation.TenantIgnore;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.framework.mybatis.core.query.LambdaQueryWrapperX;
-import cd.casic.framework.tenant.core.aop.TenantIgnore;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2RefreshTokenDO;
import org.apache.ibatis.annotations.Mapper;
@Mapper
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/permission/RoleDO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/RoleDO.java
similarity index 91%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/permission/RoleDO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/RoleDO.java
index c960b48..6c46eef 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/permission/RoleDO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/RoleDO.java
@@ -1,8 +1,7 @@
-package cd.casic.module.system.dal.dataobject.permission;
+package cd.casic.framework.security.dal.permission;
import cd.casic.framework.commons.enums.CommonStatusEnum;
-import cd.casic.framework.excel.dict.core.DictFrameworkUtils;
-import cd.casic.framework.tenant.core.db.TenantBaseDO;
+import cd.casic.framework.commons.dataobject.tenant.TenantBaseDO;
import cd.casic.module.system.enums.permission.DataScopeEnum;
import cd.casic.module.system.enums.permission.RoleTypeEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/permission/RoleMenuDO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/RoleMenuDO.java
similarity index 87%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/permission/RoleMenuDO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/RoleMenuDO.java
index 13935d9..0e30513 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/permission/RoleMenuDO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/RoleMenuDO.java
@@ -1,6 +1,6 @@
-package cd.casic.module.system.dal.dataobject.permission;
+package cd.casic.framework.security.dal.permission;
-import cd.casic.framework.tenant.core.db.TenantBaseDO;
+import cd.casic.framework.commons.dataobject.tenant.TenantBaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/permission/RoleMenuMapper.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/RoleMenuMapper.java
similarity index 91%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/permission/RoleMenuMapper.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/RoleMenuMapper.java
index 150c12e..0ad545d 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/permission/RoleMenuMapper.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/RoleMenuMapper.java
@@ -1,7 +1,7 @@
-package cd.casic.module.system.dal.mysql.permission;
+package cd.casic.framework.security.dal.permission;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
-import cd.casic.module.system.dal.dataobject.permission.RoleMenuDO;
+import cd.casic.framework.security.dal.permission.RoleMenuDO;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.apache.ibatis.annotations.Mapper;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/permission/UserRoleDO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/UserRoleDO.java
similarity index 87%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/permission/UserRoleDO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/UserRoleDO.java
index 052ed14..3f00655 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/permission/UserRoleDO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/UserRoleDO.java
@@ -1,6 +1,6 @@
-package cd.casic.module.system.dal.dataobject.permission;
+package cd.casic.framework.security.dal.permission;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/permission/UserRoleMapper.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/UserRoleMapper.java
similarity index 90%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/permission/UserRoleMapper.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/UserRoleMapper.java
index 38a4279..51111e3 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/mysql/permission/UserRoleMapper.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/permission/UserRoleMapper.java
@@ -1,7 +1,7 @@
-package cd.casic.module.system.dal.mysql.permission;
+package cd.casic.framework.security.dal.permission;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
-import cd.casic.module.system.dal.dataobject.permission.UserRoleDO;
+import cd.casic.framework.security.dal.permission.UserRoleDO;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.apache.ibatis.annotations.Mapper;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/tenant/TenantDO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/tenant/TenantDO.java
similarity index 90%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/tenant/TenantDO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/tenant/TenantDO.java
index 00782c4..802e724 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/tenant/TenantDO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/tenant/TenantDO.java
@@ -1,8 +1,8 @@
-package cd.casic.module.system.dal.dataobject.tenant;
+package cd.casic.framework.security.dal.tenant;
import cd.casic.framework.commons.enums.CommonStatusEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/tenant/TenantPackageDO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/tenant/TenantPackageDO.java
similarity index 92%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/tenant/TenantPackageDO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/tenant/TenantPackageDO.java
index a83c670..d47f11a 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/tenant/TenantPackageDO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/tenant/TenantPackageDO.java
@@ -1,7 +1,7 @@
-package cd.casic.module.system.dal.dataobject.tenant;
+package cd.casic.framework.security.dal.tenant;
import cd.casic.framework.commons.enums.CommonStatusEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/user/AdminUserDO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/user/AdminUserDO.java
similarity index 95%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/user/AdminUserDO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/user/AdminUserDO.java
index e6b6877..188c4da 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/user/AdminUserDO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/dal/user/AdminUserDO.java
@@ -1,7 +1,7 @@
-package cd.casic.module.system.dal.dataobject.user;
+package cd.casic.framework.security.dal.user;
import cd.casic.framework.commons.enums.CommonStatusEnum;
-import cd.casic.framework.tenant.core.db.TenantBaseDO;
+import cd.casic.framework.commons.dataobject.tenant.TenantBaseDO;
import cd.casic.module.system.enums.common.SexEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2ApproveService.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2ApproveService.java
similarity index 93%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2ApproveService.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2ApproveService.java
index 047ea4d..4a90bf3 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2ApproveService.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2ApproveService.java
@@ -1,6 +1,8 @@
-package cd.casic.module.system.service.oauth2;
+package cd.casic.framework.security.oauth2;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ApproveDO;
+
+
+import cd.casic.framework.security.dal.oauth2.OAuth2ApproveDO;
import java.util.Collection;
import java.util.List;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2ApproveServiceImpl.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2ApproveServiceImpl.java
similarity index 90%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2ApproveServiceImpl.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2ApproveServiceImpl.java
index 1ea2983..47aeda8 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2ApproveServiceImpl.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2ApproveServiceImpl.java
@@ -1,13 +1,15 @@
-package cd.casic.module.system.service.oauth2;
+package cd.casic.framework.security.oauth2;
+import cd.casic.framework.security.dal.oauth2.OAuth2ApproveDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2ApproveMapper;
+import cd.casic.framework.security.dal.oauth2.OAuth2ClientDO;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.lang.Assert;
import cd.casic.framework.commons.util.date.DateUtils;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ApproveDO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ClientDO;
-import cd.casic.module.system.dal.mysql.oauth2.OAuth2ApproveMapper;
+
import com.google.common.annotations.VisibleForTesting;
import org.springframework.stereotype.Service;
+
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
@@ -88,8 +90,8 @@ public class OAuth2ApproveServiceImpl implements OAuth2ApproveService {
}
@VisibleForTesting
- void saveApprove(Long userId, Integer userType, String clientId,
- String scope, Boolean approved, LocalDateTime expireTime) {
+ public void saveApprove(Long userId, Integer userType, String clientId,
+ String scope, Boolean approved, LocalDateTime expireTime) {
// 先更新
OAuth2ApproveDO approveDO = new OAuth2ApproveDO().setUserId(userId).setUserType(userType)
.setClientId(clientId).setScope(scope).setApproved(approved).setExpiresTime(expireTime);
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2ClientService.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2ClientService.java
similarity index 88%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2ClientService.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2ClientService.java
index 07d709b..7727938 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2ClientService.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2ClientService.java
@@ -1,10 +1,10 @@
-package cd.casic.module.system.service.oauth2;
+package cd.casic.framework.security.oauth2;
import cd.casic.framework.commons.pojo.PageResult;
-import cd.casic.module.system.controller.admin.oauth2.vo.client.OAuth2ClientPageReqVO;
-import cd.casic.module.system.controller.admin.oauth2.vo.client.OAuth2ClientSaveReqVO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ClientDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2ClientDO;
+import cd.casic.framework.security.vo.vo.client.OAuth2ClientPageReqVO;
+import cd.casic.framework.security.vo.vo.client.OAuth2ClientSaveReqVO;
import jakarta.validation.Valid;
import java.util.Collection;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2ClientServiceImpl.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2ClientServiceImpl.java
similarity index 91%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2ClientServiceImpl.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2ClientServiceImpl.java
index dd01f41..3d83d04 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2ClientServiceImpl.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2ClientServiceImpl.java
@@ -1,5 +1,10 @@
-package cd.casic.module.system.service.oauth2;
+package cd.casic.framework.security.oauth2;
+import cd.casic.framework.security.dal.oauth2.OAuth2ClientDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2ClientMapper;
+import cd.casic.framework.security.redis.RedisKeyConstants;
+import cd.casic.framework.security.vo.vo.client.OAuth2ClientPageReqVO;
+import cd.casic.framework.security.vo.vo.client.OAuth2ClientSaveReqVO;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
@@ -8,11 +13,6 @@ import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.object.BeanUtils;
import cd.casic.framework.commons.util.string.StrUtils;
-import cd.casic.module.system.controller.admin.oauth2.vo.client.OAuth2ClientPageReqVO;
-import cd.casic.module.system.controller.admin.oauth2.vo.client.OAuth2ClientSaveReqVO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ClientDO;
-import cd.casic.module.system.dal.mysql.oauth2.OAuth2ClientMapper;
-import cd.casic.module.system.dal.redis.RedisKeyConstants;
import com.google.common.annotations.VisibleForTesting;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cache.annotation.CacheEvict;
@@ -79,7 +79,7 @@ public class OAuth2ClientServiceImpl implements OAuth2ClientService {
}
@VisibleForTesting
- void validateClientIdExists(Long id, String clientId) {
+ public void validateClientIdExists(Long id, String clientId) {
OAuth2ClientDO client = oauth2ClientMapper.selectByClientId(clientId);
if (client == null) {
return;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2CodeService.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2CodeService.java
similarity index 89%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2CodeService.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2CodeService.java
index efcd038..3ec100b 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2CodeService.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2CodeService.java
@@ -1,6 +1,8 @@
-package cd.casic.module.system.service.oauth2;
+package cd.casic.framework.security.oauth2;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2CodeDO;
+
+
+import cd.casic.framework.security.dal.oauth2.OAuth2CodeDO;
import java.util.List;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2CodeServiceImpl.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2CodeServiceImpl.java
similarity index 91%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2CodeServiceImpl.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2CodeServiceImpl.java
index e8b4dd4..8b2d456 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/oauth2/OAuth2CodeServiceImpl.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/oauth2/OAuth2CodeServiceImpl.java
@@ -1,9 +1,9 @@
-package cd.casic.module.system.service.oauth2;
+package cd.casic.framework.security.oauth2;
+import cd.casic.framework.security.dal.oauth2.OAuth2CodeDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2CodeMapper;
import cn.hutool.core.util.IdUtil;
import cd.casic.framework.commons.util.date.DateUtils;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2CodeDO;
-import cd.casic.module.system.dal.mysql.oauth2.OAuth2CodeMapper;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/redis/RedisKeyConstants.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/redis/RedisKeyConstants.java
similarity index 95%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/redis/RedisKeyConstants.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/redis/RedisKeyConstants.java
index 6550232..b94e801 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/redis/RedisKeyConstants.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/redis/RedisKeyConstants.java
@@ -1,6 +1,4 @@
-package cd.casic.module.system.dal.redis;
-
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
+package cd.casic.framework.security.redis;
/**
* System Redis Key 枚举类
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/redis/oauth2/OAuth2AccessTokenRedisDAO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/redis/oauth2/OAuth2AccessTokenRedisDAO.java
similarity index 87%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/redis/oauth2/OAuth2AccessTokenRedisDAO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/redis/oauth2/OAuth2AccessTokenRedisDAO.java
index fb2a3b5..1f757e1 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/redis/oauth2/OAuth2AccessTokenRedisDAO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/redis/oauth2/OAuth2AccessTokenRedisDAO.java
@@ -1,9 +1,10 @@
-package cd.casic.module.system.dal.redis.oauth2;
+package cd.casic.framework.security.redis.oauth2;
+import cd.casic.framework.security.dal.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.security.redis.RedisKeyConstants;
import cn.hutool.core.date.LocalDateTimeUtil;
import cd.casic.framework.commons.util.collection.CollectionUtils;
import cd.casic.framework.commons.util.json.JsonUtils;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Repository;
@@ -14,8 +15,6 @@ import java.util.Collection;
import java.util.List;
import java.util.concurrent.TimeUnit;
-import static cd.casic.module.system.dal.redis.RedisKeyConstants.OAUTH2_ACCESS_TOKEN;
-
/**
* {@link OAuth2AccessTokenDO} 的 RedisDAO
*
@@ -53,7 +52,7 @@ public class OAuth2AccessTokenRedisDAO {
}
private static String formatKey(String accessToken) {
- return String.format(OAUTH2_ACCESS_TOKEN, accessToken);
+ return String.format(RedisKeyConstants.OAUTH2_ACCESS_TOKEN, accessToken);
}
}
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/dept/DeptListReqVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/DeptListReqVO.java
similarity index 88%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/dept/DeptListReqVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/DeptListReqVO.java
index f7aabcf..771c3af 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/dept/DeptListReqVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/DeptListReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.dept.vo.dept;
+package cd.casic.framework.security.vo.dept;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/dept/DeptRespVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/DeptRespVO.java
similarity index 95%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/dept/DeptRespVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/DeptRespVO.java
index b8f80f2..9f1b7e5 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/dept/DeptRespVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/DeptRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.dept.vo.dept;
+package cd.casic.framework.security.vo.dept;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/dept/DeptSaveReqVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/DeptSaveReqVO.java
similarity index 96%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/dept/DeptSaveReqVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/DeptSaveReqVO.java
index 172a1b1..a4f6fde 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/dept/DeptSaveReqVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/DeptSaveReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.dept.vo.dept;
+package cd.casic.framework.security.vo.dept;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.validation.InEnum;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/dept/DeptSimpleRespVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/DeptSimpleRespVO.java
similarity index 92%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/dept/DeptSimpleRespVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/DeptSimpleRespVO.java
index e50545c..c1a546c 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/dept/DeptSimpleRespVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/DeptSimpleRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.dept.vo.dept;
+package cd.casic.framework.security.vo.dept;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/post/PostPageReqVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/post/PostPageReqVO.java
similarity index 91%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/post/PostPageReqVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/post/PostPageReqVO.java
index 8aa4f5e..ae9146b 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/post/PostPageReqVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/post/PostPageReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.dept.vo.post;
+package cd.casic.framework.security.vo.dept.post;
import cd.casic.framework.commons.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/post/PostRespVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/post/PostRespVO.java
similarity index 96%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/post/PostRespVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/post/PostRespVO.java
index 359f5be..f209342 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/post/PostRespVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/post/PostRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.dept.vo.post;
+package cd.casic.framework.security.vo.dept.post;
import cd.casic.framework.excel.excel.core.annotations.DictFormat;
import cd.casic.framework.excel.excel.core.convert.DictConvert;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/post/PostSaveReqVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/post/PostSaveReqVO.java
similarity index 96%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/post/PostSaveReqVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/post/PostSaveReqVO.java
index e69130c..11a77eb 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/post/PostSaveReqVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/post/PostSaveReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.dept.vo.post;
+package cd.casic.framework.security.vo.dept.post;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.validation.InEnum;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/post/PostSimpleRespVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/post/PostSimpleRespVO.java
similarity index 91%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/post/PostSimpleRespVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/post/PostSimpleRespVO.java
index 69b0838..a9aa8c9 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/vo/post/PostSimpleRespVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/dept/post/PostSimpleRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.dept.vo.post;
+package cd.casic.framework.security.vo.dept.post;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.v3.oas.annotations.media.Schema;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/logger/LoginLogDO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/logger/LoginLogDO.java
similarity index 93%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/logger/LoginLogDO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/logger/LoginLogDO.java
index ea35675..f3ea695 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/logger/LoginLogDO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/logger/LoginLogDO.java
@@ -1,7 +1,7 @@
-package cd.casic.module.system.dal.dataobject.logger;
+package cd.casic.framework.security.vo.logger;
import cd.casic.framework.commons.enums.UserTypeEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import cd.casic.module.system.enums.logger.LoginLogTypeEnum;
import cd.casic.module.system.enums.logger.LoginResultEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/logger/vo/loginlog/LoginLogPageReqVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/loginlog/LoginLogPageReqVO.java
similarity index 93%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/logger/vo/loginlog/LoginLogPageReqVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/loginlog/LoginLogPageReqVO.java
index 2a3398f..632fc0f 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/logger/vo/loginlog/LoginLogPageReqVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/loginlog/LoginLogPageReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.logger.vo.loginlog;
+package cd.casic.framework.security.vo.loginlog;
import cd.casic.framework.commons.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/logger/vo/loginlog/LoginLogRespVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/loginlog/LoginLogRespVO.java
similarity index 97%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/logger/vo/loginlog/LoginLogRespVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/loginlog/LoginLogRespVO.java
index 00e5c23..6fdff59 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/logger/vo/loginlog/LoginLogRespVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/loginlog/LoginLogRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.logger.vo.loginlog;
+package cd.casic.framework.security.vo.loginlog;
import cd.casic.framework.excel.excel.core.annotations.DictFormat;
import cd.casic.framework.excel.excel.core.convert.DictConvert;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/client/OAuth2ClientPageReqVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/client/OAuth2ClientPageReqVO.java
similarity index 90%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/client/OAuth2ClientPageReqVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/client/OAuth2ClientPageReqVO.java
index 9c28e00..5c9a085 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/client/OAuth2ClientPageReqVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/client/OAuth2ClientPageReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.oauth2.vo.client;
+package cd.casic.framework.security.vo.vo.client;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/client/OAuth2ClientRespVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/client/OAuth2ClientRespVO.java
similarity index 97%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/client/OAuth2ClientRespVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/client/OAuth2ClientRespVO.java
index e3e18e0..998f534 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/client/OAuth2ClientRespVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/client/OAuth2ClientRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.oauth2.vo.client;
+package cd.casic.framework.security.vo.vo.client;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/client/OAuth2ClientSaveReqVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/client/OAuth2ClientSaveReqVO.java
similarity index 98%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/client/OAuth2ClientSaveReqVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/client/OAuth2ClientSaveReqVO.java
index 91fb795..8f5a9ba 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/client/OAuth2ClientSaveReqVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/client/OAuth2ClientSaveReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.oauth2.vo.client;
+package cd.casic.framework.security.vo.vo.client;
import cn.hutool.core.util.StrUtil;
import cd.casic.framework.commons.util.json.JsonUtils;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/open/OAuth2OpenAccessTokenRespVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/open/OAuth2OpenAccessTokenRespVO.java
similarity index 95%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/open/OAuth2OpenAccessTokenRespVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/open/OAuth2OpenAccessTokenRespVO.java
index a1f377e..bf6ee9c 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/open/OAuth2OpenAccessTokenRespVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/open/OAuth2OpenAccessTokenRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.oauth2.vo.open;
+package cd.casic.framework.security.vo.vo.open;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/open/OAuth2OpenAuthorizeInfoRespVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/open/OAuth2OpenAuthorizeInfoRespVO.java
similarity index 94%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/open/OAuth2OpenAuthorizeInfoRespVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/open/OAuth2OpenAuthorizeInfoRespVO.java
index 1fed1ef..29a2a57 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/open/OAuth2OpenAuthorizeInfoRespVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/open/OAuth2OpenAuthorizeInfoRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.oauth2.vo.open;
+package cd.casic.framework.security.vo.vo.open;
import cd.casic.framework.commons.core.KeyValue;
import io.swagger.v3.oas.annotations.media.Schema;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/open/OAuth2OpenCheckTokenRespVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/open/OAuth2OpenCheckTokenRespVO.java
similarity index 96%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/open/OAuth2OpenCheckTokenRespVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/open/OAuth2OpenCheckTokenRespVO.java
index fec7ecd..a025f75 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/open/OAuth2OpenCheckTokenRespVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/open/OAuth2OpenCheckTokenRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.oauth2.vo.open;
+package cd.casic.framework.security.vo.vo.open;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/tenant/TenantPageReqVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/tenant/TenantPageReqVO.java
similarity index 94%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/tenant/TenantPageReqVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/tenant/TenantPageReqVO.java
index 4eb1faf..575135b 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/tenant/TenantPageReqVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/tenant/TenantPageReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.tenant.vo.tenant;
+package cd.casic.framework.security.vo.vo.tenant;
import cd.casic.framework.commons.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/tenant/TenantRespVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/tenant/TenantRespVO.java
similarity index 97%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/tenant/TenantRespVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/tenant/TenantRespVO.java
index a2be9b7..74fe741 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/tenant/TenantRespVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/tenant/TenantRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.tenant.vo.tenant;
+package cd.casic.framework.security.vo.vo.tenant;
import cd.casic.framework.excel.excel.core.annotations.DictFormat;
import cd.casic.framework.excel.excel.core.convert.DictConvert;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/tenant/TenantSaveReqVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/tenant/TenantSaveReqVO.java
similarity index 97%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/tenant/TenantSaveReqVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/tenant/TenantSaveReqVO.java
index 2bf2909..1ab9237 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/tenant/TenantSaveReqVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/tenant/TenantSaveReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.tenant.vo.tenant;
+package cd.casic.framework.security.vo.vo.tenant;
import cn.hutool.core.util.ObjectUtil;
import com.fasterxml.jackson.annotation.JsonIgnore;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/tenant/TenantSimpleRespVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/tenant/TenantSimpleRespVO.java
similarity index 88%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/tenant/TenantSimpleRespVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/tenant/TenantSimpleRespVO.java
index 86d6425..033a3ea 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/vo/tenant/TenantSimpleRespVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/tenant/TenantSimpleRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.tenant.vo.tenant;
+package cd.casic.framework.security.vo.vo.tenant;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/token/OAuth2AccessTokenPageReqVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/token/OAuth2AccessTokenPageReqVO.java
similarity index 92%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/token/OAuth2AccessTokenPageReqVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/token/OAuth2AccessTokenPageReqVO.java
index 0b14806..04b0670 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/token/OAuth2AccessTokenPageReqVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/token/OAuth2AccessTokenPageReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.oauth2.vo.token;
+package cd.casic.framework.security.vo.vo.token;
import cd.casic.framework.commons.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/token/OAuth2AccessTokenRespVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/token/OAuth2AccessTokenRespVO.java
similarity index 95%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/token/OAuth2AccessTokenRespVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/token/OAuth2AccessTokenRespVO.java
index 60ab0f6..874563b 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/token/OAuth2AccessTokenRespVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/token/OAuth2AccessTokenRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.oauth2.vo.token;
+package cd.casic.framework.security.vo.vo.token;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/user/OAuth2UserInfoRespVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/user/OAuth2UserInfoRespVO.java
similarity index 96%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/user/OAuth2UserInfoRespVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/user/OAuth2UserInfoRespVO.java
index 4a20684..a4871ef 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/user/OAuth2UserInfoRespVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/user/OAuth2UserInfoRespVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.oauth2.vo.user;
+package cd.casic.framework.security.vo.vo.user;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/user/OAuth2UserUpdateReqVO.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/user/OAuth2UserUpdateReqVO.java
similarity index 95%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/user/OAuth2UserUpdateReqVO.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/user/OAuth2UserUpdateReqVO.java
index 1d05070..a852586 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/vo/user/OAuth2UserUpdateReqVO.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/security/vo/vo/user/OAuth2UserUpdateReqVO.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.controller.admin.oauth2.vo.user;
+package cd.casic.framework.security.vo.vo.user;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/member/MemberService.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/service/member/MemberService.java
similarity index 90%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/member/MemberService.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/service/member/MemberService.java
index 78932c6..6719033 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/member/MemberService.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/service/member/MemberService.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.service.member;
+package cd.casic.framework.service.member;
/**
* Member Service 接口
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/member/MemberServiceImpl.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/service/member/MemberServiceImpl.java
similarity index 96%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/member/MemberServiceImpl.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/service/member/MemberServiceImpl.java
index f875188..66fd366 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/member/MemberServiceImpl.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/service/member/MemberServiceImpl.java
@@ -1,4 +1,4 @@
-package cd.casic.module.system.service.member;
+package cd.casic.framework.service.member;
import cn.hutool.core.util.ClassUtil;
import cn.hutool.core.util.ReflectUtil;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/member/package-info.java b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/service/member/package-info.java
similarity index 65%
rename from modules/module-system-biz/src/main/java/cd/casic/module/system/service/member/package-info.java
rename to framework/spring-boot-starter-security/src/main/java/cd/casic/framework/service/member/package-info.java
index 11c68a0..7ab69c7 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/member/package-info.java
+++ b/framework/spring-boot-starter-security/src/main/java/cd/casic/framework/service/member/package-info.java
@@ -1,4 +1,4 @@
/**
* ops-module-member 模块的适配,解除 ops-module-system 对它们的依赖
*/
-package cd.casic.module.system.service.member;
+package cd.casic.framework.service.member;
diff --git a/framework/spring-boot-starter-security/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/framework/spring-boot-starter-security/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
index d6ee597..33e9c6c 100644
--- a/framework/spring-boot-starter-security/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
+++ b/framework/spring-boot-starter-security/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -1,3 +1,3 @@
-cd.casic.framework.security.config.OpsSecurityAutoConfiguration
-cd.casic.framework.security.config.OpsWebSecurityConfigurerAdapter
+cd.casic.framework.datapermission.config.OpsSecurityAutoConfiguration
+cd.casic.framework.datapermission.config.OpsWebSecurityConfigurerAdapter
cd.casic.framework.operatelog.config.OpsOperateLogConfiguration
\ No newline at end of file
diff --git a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/apilog/core/filter/ApiAccessLogFilter.java b/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/apilog/core/filter/ApiAccessLogFilter.java
index b41e4ab..0276443 100644
--- a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/apilog/core/filter/ApiAccessLogFilter.java
+++ b/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/apilog/core/filter/ApiAccessLogFilter.java
@@ -2,14 +2,14 @@ package cd.casic.framework.apilog.core.filter;
import cd.casic.framework.apilog.core.annotation.ApiAccessLog;
import cd.casic.framework.apilog.core.enums.OperateTypeEnum;
+import cd.casic.framework.commons.config.WebProperties;
import cd.casic.framework.commons.exception.enums.GlobalErrorCodeConstants;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.util.json.JsonUtils;
import cd.casic.framework.commons.util.monitor.TracerUtils;
import cd.casic.framework.commons.util.servlet.ServletUtils;
-import cd.casic.framework.web.config.WebProperties;
import cd.casic.framework.web.core.filter.ApiRequestFilter;
-import cd.casic.framework.web.core.util.WebFrameworkUtils;
+import cd.casic.framework.commons.util.util.WebFrameworkUtils;
import cd.casic.module.infra.api.logger.ApiAccessLogApi;
import cd.casic.module.infra.api.logger.dto.ApiAccessLogCreateReqDTO;
import cn.hutool.core.collection.CollUtil;
diff --git a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/swagger/config/OpsSwaggerAutoConfiguration.java b/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/swagger/config/OpsSwaggerAutoConfiguration.java
index 09681fd..9dc71c5 100644
--- a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/swagger/config/OpsSwaggerAutoConfiguration.java
+++ b/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/swagger/config/OpsSwaggerAutoConfiguration.java
@@ -31,7 +31,7 @@ import java.util.List;
import java.util.Map;
import java.util.Optional;
-import static cd.casic.framework.web.core.util.WebFrameworkUtils.HEADER_TENANT_ID;
+import static cd.casic.framework.commons.util.util.WebFrameworkUtils.HEADER_TENANT_ID;
/**
* Swagger 自动配置类,基于 OpenAPI + Springdoc 实现。
diff --git a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/filter/ApiRequestFilter.java b/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/filter/ApiRequestFilter.java
index 00cecfc..40802d7 100644
--- a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/filter/ApiRequestFilter.java
+++ b/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/filter/ApiRequestFilter.java
@@ -1,6 +1,6 @@
package cd.casic.framework.web.core.filter;
-import cd.casic.framework.web.config.WebProperties;
+import cd.casic.framework.commons.config.WebProperties;
import cn.hutool.core.util.StrUtil;
import jakarta.servlet.http.HttpServletRequest;
import lombok.RequiredArgsConstructor;
diff --git a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/filter/DemoFilter.java b/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/filter/DemoFilter.java
index b2f99e7..4380130 100644
--- a/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/filter/DemoFilter.java
+++ b/framework/spring-boot-starter-web/src/main/java/cd/casic/framework/web/core/filter/DemoFilter.java
@@ -2,7 +2,7 @@ package cd.casic.framework.web.core.filter;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.util.servlet.ServletUtils;
-import cd.casic.framework.web.core.util.WebFrameworkUtils;
+import cd.casic.framework.commons.util.util.WebFrameworkUtils;
import cn.hutool.core.util.StrUtil;
import jakarta.servlet.FilterChain;
import jakarta.servlet.http.HttpServletRequest;
diff --git a/framework/spring-boot-starter-web/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/framework/spring-boot-starter-web/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
index 59a3899..1f74bb3 100644
--- a/framework/spring-boot-starter-web/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
+++ b/framework/spring-boot-starter-web/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -1,6 +1,6 @@
-cd.casic.framework.apilog.config.OpsApiLogAutoConfiguration
+cd.casic.framework.datapermission.config.OpsApiLogAutoConfiguration
cd.casic.framework.jackson.config.OpsJacksonAutoConfiguration
cd.casic.framework.swagger.config.OpsSwaggerAutoConfiguration
-cd.casic.framework.web.config.OpsWebAutoConfiguration
-cd.casic.framework.xss.config.OpsXssAutoConfiguration
+cd.casic.framework.datapermission.config.OpsWebAutoConfiguration
+cd.casic.framework.datapermission.config.OpsXssAutoConfiguration
cd.casic.framework.banner.config.OpsBannerAutoConfiguration
\ No newline at end of file
diff --git a/framework/spring-boot-starter-websocket/src/main/java/cd/casic/framework/websocket/core/handler/JsonWebSocketMessageHandler.java b/framework/spring-boot-starter-websocket/src/main/java/cd/casic/framework/websocket/core/handler/JsonWebSocketMessageHandler.java
index f1c3bec..25d9d06 100644
--- a/framework/spring-boot-starter-websocket/src/main/java/cd/casic/framework/websocket/core/handler/JsonWebSocketMessageHandler.java
+++ b/framework/spring-boot-starter-websocket/src/main/java/cd/casic/framework/websocket/core/handler/JsonWebSocketMessageHandler.java
@@ -1,7 +1,7 @@
package cd.casic.framework.websocket.core.handler;
import cd.casic.framework.commons.util.json.JsonUtils;
-import cd.casic.framework.tenant.core.util.TenantUtils;
+import cd.casic.framework.commons.util.tenant.TenantUtils;
import cd.casic.framework.websocket.core.listener.WebSocketMessageListener;
import cd.casic.framework.websocket.core.message.JsonWebSocketMessage;
import cd.casic.framework.websocket.core.util.WebSocketFrameworkUtils;
diff --git a/framework/spring-boot-starter-websocket/src/main/java/cd/casic/framework/websocket/core/security/LoginUserHandshakeInterceptor.java b/framework/spring-boot-starter-websocket/src/main/java/cd/casic/framework/websocket/core/security/LoginUserHandshakeInterceptor.java
index 193ca22..ef0415c 100644
--- a/framework/spring-boot-starter-websocket/src/main/java/cd/casic/framework/websocket/core/security/LoginUserHandshakeInterceptor.java
+++ b/framework/spring-boot-starter-websocket/src/main/java/cd/casic/framework/websocket/core/security/LoginUserHandshakeInterceptor.java
@@ -1,7 +1,7 @@
package cd.casic.framework.websocket.core.security;
import cd.casic.framework.security.core.LoginUser;
-import cd.casic.framework.security.core.filter.TokenAuthenticationFilter;
+import cd.casic.framework.datapermission.core.filter.TokenAuthenticationFilter;
import cd.casic.framework.security.core.util.SecurityFrameworkUtils;
import cd.casic.framework.websocket.core.util.WebSocketFrameworkUtils;
import org.springframework.http.server.ServerHttpRequest;
diff --git a/framework/spring-boot-starter-websocket/src/main/java/cd/casic/framework/websocket/core/session/WebSocketSessionManagerImpl.java b/framework/spring-boot-starter-websocket/src/main/java/cd/casic/framework/websocket/core/session/WebSocketSessionManagerImpl.java
index 3f02127..c966695 100644
--- a/framework/spring-boot-starter-websocket/src/main/java/cd/casic/framework/websocket/core/session/WebSocketSessionManagerImpl.java
+++ b/framework/spring-boot-starter-websocket/src/main/java/cd/casic/framework/websocket/core/session/WebSocketSessionManagerImpl.java
@@ -1,7 +1,7 @@
package cd.casic.framework.websocket.core.session;
import cd.casic.framework.security.core.LoginUser;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
+import cd.casic.framework.commons.context.TenantContextHolder;
import cd.casic.framework.websocket.core.util.WebSocketFrameworkUtils;
import cn.hutool.core.collection.CollUtil;
import org.springframework.web.socket.WebSocketSession;
diff --git a/modules/module-ci-log/src/main/java/cd/casic/ci/log/dal/dataobject/LogIndicesV2.java b/modules/module-ci-log/src/main/java/cd/casic/ci/log/dal/dataobject/LogIndicesV2.java
index 5c349e9..9b8b9b9 100644
--- a/modules/module-ci-log/src/main/java/cd/casic/ci/log/dal/dataobject/LogIndicesV2.java
+++ b/modules/module-ci-log/src/main/java/cd/casic/ci/log/dal/dataobject/LogIndicesV2.java
@@ -1,6 +1,6 @@
package cd.casic.ci.log.dal.dataobject;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
diff --git a/modules/module-ci-log/src/main/java/cd/casic/ci/log/dal/dataobject/LogStatus.java b/modules/module-ci-log/src/main/java/cd/casic/ci/log/dal/dataobject/LogStatus.java
index 777c43c..3f5154c 100644
--- a/modules/module-ci-log/src/main/java/cd/casic/ci/log/dal/dataobject/LogStatus.java
+++ b/modules/module-ci-log/src/main/java/cd/casic/ci/log/dal/dataobject/LogStatus.java
@@ -1,6 +1,6 @@
package cd.casic.ci.log.dal.dataobject;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
diff --git a/modules/module-ci-log/src/main/java/cd/casic/ci/log/dal/dataobject/LogSubTags.java b/modules/module-ci-log/src/main/java/cd/casic/ci/log/dal/dataobject/LogSubTags.java
index 84fc541..325a418 100644
--- a/modules/module-ci-log/src/main/java/cd/casic/ci/log/dal/dataobject/LogSubTags.java
+++ b/modules/module-ci-log/src/main/java/cd/casic/ci/log/dal/dataobject/LogSubTags.java
@@ -1,6 +1,6 @@
package cd.casic.ci.log.dal.dataobject;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
diff --git a/modules/module-ci-project/src/main/java/cd/casic/ci/project/dal/dto/Project.java b/modules/module-ci-project/src/main/java/cd/casic/ci/project/dal/dto/Project.java
index aa1b26d..c112fc4 100644
--- a/modules/module-ci-project/src/main/java/cd/casic/ci/project/dal/dto/Project.java
+++ b/modules/module-ci-project/src/main/java/cd/casic/ci/project/dal/dto/Project.java
@@ -1,7 +1,7 @@
package cd.casic.ci.project.dal.dto;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
import lombok.experimental.Accessors;
diff --git a/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryGitToken.java b/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryGitToken.java
index f3ce602..d8d64f7 100644
--- a/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryGitToken.java
+++ b/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryGitToken.java
@@ -1,6 +1,6 @@
package cd.casic.ci.log.scm.dal.dto;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryGitlabToken.java b/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryGitlabToken.java
index 125bc84..3c6486a 100644
--- a/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryGitlabToken.java
+++ b/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryGitlabToken.java
@@ -1,6 +1,6 @@
package cd.casic.ci.log.scm.dal.dto;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryRecord.java b/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryRecord.java
index de86732..b82d4da 100644
--- a/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryRecord.java
+++ b/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryRecord.java
@@ -1,6 +1,6 @@
package cd.casic.ci.log.scm.dal.dto;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryTGitToken.java b/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryTGitToken.java
index 8eccc9b..51e37a4 100644
--- a/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryTGitToken.java
+++ b/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/dal/dto/RepositoryTGitToken.java
@@ -1,6 +1,6 @@
package cd.casic.ci.log.scm.dal.dto;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
diff --git a/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/service/impl/RepositoryServiceImpl.java b/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/service/impl/RepositoryServiceImpl.java
index 093b67c..b1834c2 100644
--- a/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/service/impl/RepositoryServiceImpl.java
+++ b/modules/module-ci-repository/src/main/java/cd/casic/ci/log/scm/service/impl/RepositoryServiceImpl.java
@@ -3,7 +3,7 @@ package cd.casic.ci.log.scm.service.impl;
import cd.casic.ci.log.scm.dal.pojo.Repository;
import cd.casic.framework.commons.exception.ServiceException;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import cd.casic.ci.log.scm.dal.dao.RepositoryRecordMapper;
import cd.casic.ci.log.scm.dal.dto.RepositoryRecord;
import cd.casic.ci.log.scm.enums.RepositoryConfig;
diff --git a/modules/module-ci-ticket/src/main/java/cd/casic/ci/ticket/dal/dataobject/CredentialRecord.java b/modules/module-ci-ticket/src/main/java/cd/casic/ci/ticket/dal/dataobject/CredentialRecord.java
index fa7aae2..a2989f0 100644
--- a/modules/module-ci-ticket/src/main/java/cd/casic/ci/ticket/dal/dataobject/CredentialRecord.java
+++ b/modules/module-ci-ticket/src/main/java/cd/casic/ci/ticket/dal/dataobject/CredentialRecord.java
@@ -1,6 +1,6 @@
package cd.casic.ci.ticket.dal.dataobject;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/config/ConfigDO.java b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/config/ConfigDO.java
index ade42d8..9dd1e88 100644
--- a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/config/ConfigDO.java
+++ b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/config/ConfigDO.java
@@ -1,6 +1,6 @@
package cd.casic.module.infra.dal.dataobject.config;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import cd.casic.module.infra.enums.config.ConfigTypeEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
diff --git a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/db/DataSourceConfigDO.java b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/db/DataSourceConfigDO.java
index 1786dc2..63efd8f 100644
--- a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/db/DataSourceConfigDO.java
+++ b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/db/DataSourceConfigDO.java
@@ -1,6 +1,6 @@
package cd.casic.module.infra.dal.dataobject.db;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import cd.casic.framework.mybatis.core.type.EncryptTypeHandler;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
diff --git a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/file/FileConfigDO.java b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/file/FileConfigDO.java
index c1cd603..afeeaed 100644
--- a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/file/FileConfigDO.java
+++ b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/file/FileConfigDO.java
@@ -1,7 +1,7 @@
package cd.casic.module.infra.dal.dataobject.file;
import cd.casic.framework.commons.util.json.JsonUtils;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import cd.casic.module.infra.framework.file.core.client.FileClientConfig;
import cd.casic.module.infra.framework.file.core.client.db.DBFileClientConfig;
import cd.casic.module.infra.framework.file.core.client.ftp.FtpFileClientConfig;
diff --git a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/file/FileContentDO.java b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/file/FileContentDO.java
index f537db2..688a99b 100644
--- a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/file/FileContentDO.java
+++ b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/file/FileContentDO.java
@@ -1,6 +1,6 @@
package cd.casic.module.infra.dal.dataobject.file;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import cd.casic.module.infra.framework.file.core.client.db.DBFileClient;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
diff --git a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/file/FileDO.java b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/file/FileDO.java
index f7456b2..dc1284c 100644
--- a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/file/FileDO.java
+++ b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/file/FileDO.java
@@ -1,6 +1,6 @@
package cd.casic.module.infra.dal.dataobject.file;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;
diff --git a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/job/JobDO.java b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/job/JobDO.java
index 88b9cfc..13aa52d 100644
--- a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/job/JobDO.java
+++ b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/job/JobDO.java
@@ -1,6 +1,6 @@
package cd.casic.module.infra.dal.dataobject.job;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import cd.casic.module.infra.enums.job.JobStatusEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
diff --git a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/job/JobLogDO.java b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/job/JobLogDO.java
index ec20f7a..7a8c744 100644
--- a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/job/JobLogDO.java
+++ b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/job/JobLogDO.java
@@ -1,7 +1,7 @@
package cd.casic.module.infra.dal.dataobject.job;
import cd.casic.framework.job.core.handler.JobHandler;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import cd.casic.module.infra.enums.job.JobLogStatusEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/logger/ApiAccessLogDO.java b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/logger/ApiAccessLogDO.java
index d9f401a..caa0d55 100644
--- a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/logger/ApiAccessLogDO.java
+++ b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/logger/ApiAccessLogDO.java
@@ -3,7 +3,7 @@ package cd.casic.module.infra.dal.dataobject.logger;
import cd.casic.framework.apilog.core.enums.OperateTypeEnum;
import cd.casic.framework.commons.enums.UserTypeEnum;
import cd.casic.framework.commons.pojo.CommonResult;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/logger/ApiErrorLogDO.java b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/logger/ApiErrorLogDO.java
index 56d778e..13a1bd2 100644
--- a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/logger/ApiErrorLogDO.java
+++ b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/dal/dataobject/logger/ApiErrorLogDO.java
@@ -1,7 +1,7 @@
package cd.casic.module.infra.dal.dataobject.logger;
import cd.casic.framework.commons.enums.UserTypeEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import cd.casic.module.infra.enums.logger.ApiErrorLogProcessStatusEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
diff --git a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/job/job/JobLogCleanJob.java b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/job/job/JobLogCleanJob.java
index 46b09ea..c3156ec 100644
--- a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/job/job/JobLogCleanJob.java
+++ b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/job/job/JobLogCleanJob.java
@@ -2,7 +2,7 @@ package cd.casic.module.infra.job.job;
import cd.casic.framework.job.core.handler.JobHandler;
-import cd.casic.framework.tenant.core.aop.TenantIgnore;
+import cd.casic.framework.commons.annotation.TenantIgnore;
import cd.casic.module.infra.service.job.JobLogService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
diff --git a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/job/logger/AccessLogCleanJob.java b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/job/logger/AccessLogCleanJob.java
index 831abf7..5272979 100644
--- a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/job/logger/AccessLogCleanJob.java
+++ b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/job/logger/AccessLogCleanJob.java
@@ -1,7 +1,7 @@
package cd.casic.module.infra.job.logger;
import cd.casic.framework.job.core.handler.JobHandler;
-import cd.casic.framework.tenant.core.aop.TenantIgnore;
+import cd.casic.framework.commons.annotation.TenantIgnore;
import cd.casic.module.infra.service.logger.ApiAccessLogService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
diff --git a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/job/logger/ErrorLogCleanJob.java b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/job/logger/ErrorLogCleanJob.java
index 0e47401..4a73510 100644
--- a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/job/logger/ErrorLogCleanJob.java
+++ b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/job/logger/ErrorLogCleanJob.java
@@ -2,7 +2,7 @@ package cd.casic.module.infra.job.logger;
import cd.casic.framework.job.core.handler.JobHandler;
-import cd.casic.framework.tenant.core.aop.TenantIgnore;
+import cd.casic.framework.commons.annotation.TenantIgnore;
import cd.casic.module.infra.service.logger.ApiErrorLogService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
diff --git a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/service/logger/ApiAccessLogServiceImpl.java b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/service/logger/ApiAccessLogServiceImpl.java
index afafcee..2e92c9e 100644
--- a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/service/logger/ApiAccessLogServiceImpl.java
+++ b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/service/logger/ApiAccessLogServiceImpl.java
@@ -2,8 +2,8 @@ package cd.casic.module.infra.service.logger;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
-import cd.casic.framework.tenant.core.util.TenantUtils;
+import cd.casic.framework.commons.context.TenantContextHolder;
+import cd.casic.framework.commons.util.tenant.TenantUtils;
import cd.casic.module.infra.api.logger.dto.ApiAccessLogCreateReqDTO;
import cd.casic.module.infra.controller.admin.logger.vo.apiaccesslog.ApiAccessLogPageReqVO;
import cd.casic.module.infra.dal.dataobject.logger.ApiAccessLogDO;
diff --git a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/service/logger/ApiErrorLogServiceImpl.java b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/service/logger/ApiErrorLogServiceImpl.java
index 8b48856..a4e89e5 100644
--- a/modules/module-infra-biz/src/main/java/cd/casic/module/infra/service/logger/ApiErrorLogServiceImpl.java
+++ b/modules/module-infra-biz/src/main/java/cd/casic/module/infra/service/logger/ApiErrorLogServiceImpl.java
@@ -2,8 +2,8 @@ package cd.casic.module.infra.service.logger;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
-import cd.casic.framework.tenant.core.util.TenantUtils;
+import cd.casic.framework.commons.context.TenantContextHolder;
+import cd.casic.framework.commons.util.tenant.TenantUtils;
import cd.casic.module.infra.api.logger.dto.ApiErrorLogCreateReqDTO;
import cd.casic.module.infra.controller.admin.logger.vo.apierrorlog.ApiErrorLogPageReqVO;
import cd.casic.module.infra.dal.dataobject.logger.ApiErrorLogDO;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/dept/DeptApiImpl.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/api/dept/DeptApiImpl.java
index f512a0a..c8016bd 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/dept/DeptApiImpl.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/api/dept/DeptApiImpl.java
@@ -2,8 +2,8 @@ package cd.casic.module.system.api.dept;
import cd.casic.framework.commons.util.object.BeanUtils;
import cd.casic.module.system.api.dept.dto.DeptRespDTO;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
-import cd.casic.module.system.service.dept.DeptService;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.datapermission.service.dept.DeptService;
import org.springframework.stereotype.Service;
import jakarta.annotation.Resource;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/dept/PostApiImpl.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/api/dept/PostApiImpl.java
index f6b7026..6c60067 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/dept/PostApiImpl.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/api/dept/PostApiImpl.java
@@ -2,8 +2,8 @@ package cd.casic.module.system.api.dept;
import cd.casic.framework.commons.util.object.BeanUtils;
import cd.casic.module.system.api.dept.dto.PostRespDTO;
-import cd.casic.module.system.dal.dataobject.dept.PostDO;
-import cd.casic.module.system.service.dept.PostService;
+import cd.casic.framework.commons.dataobject.dept.PostDO;
+import cd.casic.framework.datapermission.service.dept.PostService;
import org.springframework.stereotype.Service;
import jakarta.annotation.Resource;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/logger/LoginLogApiImpl.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/api/logger/LoginLogApiImpl.java
index d2a2ad3..a3f2d0c 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/logger/LoginLogApiImpl.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/api/logger/LoginLogApiImpl.java
@@ -1,7 +1,7 @@
package cd.casic.module.system.api.logger;
import cd.casic.module.system.api.logger.dto.LoginLogCreateReqDTO;
-import cd.casic.module.system.service.logger.LoginLogService;
+import cd.casic.framework.datapermission.service.log.LoginLogService;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/permission/RoleApiImpl.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/api/permission/RoleApiImpl.java
index c5d7341..f29fcf2 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/permission/RoleApiImpl.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/api/permission/RoleApiImpl.java
@@ -1,6 +1,6 @@
package cd.casic.module.system.api.permission;
-import cd.casic.module.system.service.permission.RoleService;
+import cd.casic.framework.datapermission.service.RoleService;
import org.springframework.stereotype.Service;
import jakarta.annotation.Resource;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/tenant/TenantApiImpl.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/api/tenant/TenantApiImpl.java
index ecef431..cb814b1 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/tenant/TenantApiImpl.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/api/tenant/TenantApiImpl.java
@@ -1,6 +1,6 @@
package cd.casic.module.system.api.tenant;
-import cd.casic.module.system.service.tenant.TenantService;
+import cd.casic.framework.datapermission.service.TenantService;
import org.springframework.stereotype.Service;
import jakarta.annotation.Resource;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/user/AdminUserApiImpl.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/api/user/AdminUserApiImpl.java
index 7ba5cf1..dc1ef8f 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/api/user/AdminUserApiImpl.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/api/user/AdminUserApiImpl.java
@@ -3,10 +3,10 @@ package cd.casic.module.system.api.user;
import cd.casic.framework.commons.util.object.BeanUtils;
import cd.casic.framework.datapermission.core.annotation.DataPermission;
import cd.casic.module.system.api.user.dto.AdminUserRespDTO;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
-import cd.casic.module.system.service.dept.DeptService;
-import cd.casic.module.system.service.user.AdminUserService;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
+import cd.casic.framework.datapermission.service.dept.DeptService;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjUtil;
import jakarta.annotation.Resource;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/AuthController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/AuthController.java
index 3c29493..070b0fb 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/AuthController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/auth/AuthController.java
@@ -1,27 +1,28 @@
package cd.casic.module.system.controller.admin.auth;
import cd.casic.framework.commons.enums.CommonStatusEnum;
-import cd.casic.framework.commons.enums.UserTypeEnum;
import cd.casic.framework.commons.pojo.CommonResult;
+import cd.casic.framework.datapermission.service.auth.vo.AuthLoginReqVO;
+import cd.casic.framework.datapermission.service.auth.vo.AuthLoginRespVO;
+import cd.casic.framework.datapermission.service.auth.vo.AuthPermissionInfoRespVO;
+import cd.casic.framework.datapermission.core.service.auth.vo.AuthRegisterReqVO;
import cd.casic.framework.security.config.SecurityProperties;
import cd.casic.framework.security.core.util.SecurityFrameworkUtils;
-import cd.casic.module.system.controller.admin.auth.vo.*;
import cd.casic.module.system.convert.auth.AuthConvert;
-import cd.casic.module.system.dal.dataobject.permission.MenuDO;
-import cd.casic.module.system.dal.dataobject.permission.RoleDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
+import cd.casic.framework.security.dal.permission.RoleDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import cd.casic.module.system.enums.logger.LoginLogTypeEnum;
-import cd.casic.module.system.service.auth.AdminAuthService;
-import cd.casic.module.system.service.permission.MenuService;
-import cd.casic.module.system.service.permission.PermissionService;
-import cd.casic.module.system.service.permission.RoleService;
-import cd.casic.module.system.service.user.AdminUserService;
+import cd.casic.framework.tenant.core.service.AdminAuthService;
+import cd.casic.framework.datapermission.service.MenuService;
+import cd.casic.framework.datapermission.service.PermissionService;
+import cd.casic.framework.datapermission.service.RoleService;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
-import io.swagger.v3.oas.annotations.Parameters;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/DeptController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/DeptController.java
index cf07d93..9b12c6f 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/DeptController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/DeptController.java
@@ -3,12 +3,12 @@ package cd.casic.module.system.controller.admin.dept;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.module.system.controller.admin.dept.vo.dept.DeptListReqVO;
-import cd.casic.module.system.controller.admin.dept.vo.dept.DeptRespVO;
-import cd.casic.module.system.controller.admin.dept.vo.dept.DeptSaveReqVO;
-import cd.casic.module.system.controller.admin.dept.vo.dept.DeptSimpleRespVO;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
-import cd.casic.module.system.service.dept.DeptService;
+import cd.casic.framework.security.vo.dept.DeptListReqVO;
+import cd.casic.framework.security.vo.dept.DeptRespVO;
+import cd.casic.framework.security.vo.dept.DeptSaveReqVO;
+import cd.casic.framework.security.vo.dept.DeptSimpleRespVO;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.datapermission.service.dept.DeptService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/PostController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/PostController.java
index 9127e0c..a80f4b2 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/PostController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/dept/PostController.java
@@ -7,12 +7,12 @@ import cd.casic.framework.commons.pojo.PageParam;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.object.BeanUtils;
import cd.casic.framework.excel.excel.core.util.ExcelUtils;
-import cd.casic.module.system.controller.admin.dept.vo.post.PostPageReqVO;
-import cd.casic.module.system.controller.admin.dept.vo.post.PostRespVO;
-import cd.casic.module.system.controller.admin.dept.vo.post.PostSaveReqVO;
-import cd.casic.module.system.controller.admin.dept.vo.post.PostSimpleRespVO;
-import cd.casic.module.system.dal.dataobject.dept.PostDO;
-import cd.casic.module.system.service.dept.PostService;
+import cd.casic.framework.security.vo.dept.post.PostPageReqVO;
+import cd.casic.framework.security.vo.dept.post.PostRespVO;
+import cd.casic.framework.security.vo.dept.post.PostSaveReqVO;
+import cd.casic.framework.security.vo.dept.post.PostSimpleRespVO;
+import cd.casic.framework.commons.dataobject.dept.PostDO;
+import cd.casic.framework.datapermission.service.dept.PostService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/ip/AreaController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/ip/AreaController.java
index dd4d3d6..6eff0fd 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/ip/AreaController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/ip/AreaController.java
@@ -2,9 +2,9 @@ package cd.casic.module.system.controller.admin.ip;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.framework.redis.core.Area;
-import cd.casic.framework.redis.core.utils.AreaUtils;
-import cd.casic.framework.redis.core.utils.IPUtils;
+import cd.casic.framework.commons.util.redis.core.Area;
+import cd.casic.framework.commons.util.redis.core.utils.AreaUtils;
+import cd.casic.framework.commons.util.redis.core.utils.IPUtils;
import cd.casic.module.system.controller.admin.ip.vo.AreaNodeRespVO;
import cn.hutool.core.lang.Assert;
import io.swagger.v3.oas.annotations.Operation;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/logger/LoginLogController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/logger/LoginLogController.java
index 49ba9a5..8d6dd02 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/logger/LoginLogController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/logger/LoginLogController.java
@@ -6,10 +6,10 @@ import cd.casic.framework.commons.pojo.PageParam;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.object.BeanUtils;
import cd.casic.framework.excel.excel.core.util.ExcelUtils;
-import cd.casic.module.system.controller.admin.logger.vo.loginlog.LoginLogPageReqVO;
-import cd.casic.module.system.controller.admin.logger.vo.loginlog.LoginLogRespVO;
-import cd.casic.module.system.dal.dataobject.logger.LoginLogDO;
-import cd.casic.module.system.service.logger.LoginLogService;
+import cd.casic.framework.security.vo.loginlog.LoginLogPageReqVO;
+import cd.casic.framework.security.vo.loginlog.LoginLogRespVO;
+import cd.casic.framework.security.vo.logger.LoginLogDO;
+import cd.casic.framework.datapermission.service.log.LoginLogService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/logger/vo/operatelog/OperateLogRespVO.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/logger/vo/operatelog/OperateLogRespVO.java
index 80f8de6..c461118 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/logger/vo/operatelog/OperateLogRespVO.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/logger/vo/operatelog/OperateLogRespVO.java
@@ -1,6 +1,6 @@
package cd.casic.module.system.controller.admin.logger.vo.operatelog;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fhs.core.trans.anno.Trans;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2ClientController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2ClientController.java
index 44d4cf4..745aadf 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2ClientController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2ClientController.java
@@ -3,11 +3,11 @@ package cd.casic.module.system.controller.admin.oauth2;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.module.system.controller.admin.oauth2.vo.client.OAuth2ClientPageReqVO;
-import cd.casic.module.system.controller.admin.oauth2.vo.client.OAuth2ClientRespVO;
-import cd.casic.module.system.controller.admin.oauth2.vo.client.OAuth2ClientSaveReqVO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ClientDO;
-import cd.casic.module.system.service.oauth2.OAuth2ClientService;
+import cd.casic.framework.security.dal.oauth2.OAuth2ClientDO;
+import cd.casic.framework.security.vo.vo.client.OAuth2ClientPageReqVO;
+import cd.casic.framework.security.vo.vo.client.OAuth2ClientRespVO;
+import cd.casic.framework.security.vo.vo.client.OAuth2ClientSaveReqVO;
+import cd.casic.framework.security.oauth2.OAuth2ClientService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2OpenController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2OpenController.java
index ac91cd4..86239b8 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2OpenController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2OpenController.java
@@ -1,5 +1,8 @@
package cd.casic.module.system.controller.admin.oauth2;
+import cd.casic.framework.security.dal.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2ApproveDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2ClientDO;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.ObjectUtil;
@@ -8,18 +11,15 @@ import cd.casic.framework.commons.enums.UserTypeEnum;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.util.http.HttpUtils;
import cd.casic.framework.commons.util.json.JsonUtils;
-import cd.casic.module.system.controller.admin.oauth2.vo.open.OAuth2OpenAccessTokenRespVO;
-import cd.casic.module.system.controller.admin.oauth2.vo.open.OAuth2OpenAuthorizeInfoRespVO;
-import cd.casic.module.system.controller.admin.oauth2.vo.open.OAuth2OpenCheckTokenRespVO;
+import cd.casic.framework.security.vo.vo.open.OAuth2OpenAccessTokenRespVO;
+import cd.casic.framework.security.vo.vo.open.OAuth2OpenAuthorizeInfoRespVO;
+import cd.casic.framework.security.vo.vo.open.OAuth2OpenCheckTokenRespVO;
import cd.casic.module.system.convert.oauth2.OAuth2OpenConvert;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ApproveDO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ClientDO;
import cd.casic.module.system.enums.oauth2.OAuth2GrantTypeEnum;
-import cd.casic.module.system.service.oauth2.OAuth2ApproveService;
-import cd.casic.module.system.service.oauth2.OAuth2ClientService;
-import cd.casic.module.system.service.oauth2.OAuth2GrantService;
-import cd.casic.module.system.service.oauth2.OAuth2TokenService;
+import cd.casic.framework.security.oauth2.OAuth2ApproveService;
+import cd.casic.framework.security.oauth2.OAuth2ClientService;
+import cd.casic.framework.tenant.core.service.OAuth2GrantService;
+import cd.casic.framework.datapermission.service.user.OAuth2TokenService;
import cd.casic.module.system.util.oauth2.OAuth2Utils;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2TokenController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2TokenController.java
index f01bb0f..feceaea 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2TokenController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2TokenController.java
@@ -3,12 +3,12 @@ package cd.casic.module.system.controller.admin.oauth2;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.module.system.controller.admin.oauth2.vo.token.OAuth2AccessTokenPageReqVO;
-import cd.casic.module.system.controller.admin.oauth2.vo.token.OAuth2AccessTokenRespVO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.security.vo.vo.token.OAuth2AccessTokenPageReqVO;
+import cd.casic.framework.security.vo.vo.token.OAuth2AccessTokenRespVO;
import cd.casic.module.system.enums.logger.LoginLogTypeEnum;
-import cd.casic.module.system.service.auth.AdminAuthService;
-import cd.casic.module.system.service.oauth2.OAuth2TokenService;
+import cd.casic.framework.tenant.core.service.AdminAuthService;
+import cd.casic.framework.datapermission.service.user.OAuth2TokenService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2UserController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2UserController.java
index 1a8ad5b..c0c0307 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2UserController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/oauth2/OAuth2UserController.java
@@ -3,15 +3,15 @@ package cd.casic.module.system.controller.admin.oauth2;
import cn.hutool.core.collection.CollUtil;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.module.system.controller.admin.oauth2.vo.user.OAuth2UserInfoRespVO;
-import cd.casic.module.system.controller.admin.oauth2.vo.user.OAuth2UserUpdateReqVO;
-import cd.casic.module.system.controller.admin.user.vo.profile.UserProfileUpdateReqVO;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
-import cd.casic.module.system.dal.dataobject.dept.PostDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
-import cd.casic.module.system.service.dept.DeptService;
-import cd.casic.module.system.service.dept.PostService;
-import cd.casic.module.system.service.user.AdminUserService;
+import cd.casic.framework.security.vo.vo.user.OAuth2UserInfoRespVO;
+import cd.casic.framework.security.vo.vo.user.OAuth2UserUpdateReqVO;
+import cd.casic.framework.datapermission.service.auth.vo.profile.UserProfileUpdateReqVO;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.commons.dataobject.dept.PostDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
+import cd.casic.framework.datapermission.service.dept.DeptService;
+import cd.casic.framework.datapermission.service.dept.PostService;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import lombok.extern.slf4j.Slf4j;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/MenuController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/MenuController.java
index 132a398..1c6bced 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/MenuController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/MenuController.java
@@ -3,9 +3,9 @@ package cd.casic.module.system.controller.admin.permission;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.module.system.controller.admin.permission.vo.menu.*;
-import cd.casic.module.system.dal.dataobject.permission.MenuDO;
-import cd.casic.module.system.service.permission.MenuService;
+import cd.casic.framework.datapermission.service.permission.menu.*;
+import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
+import cd.casic.framework.datapermission.service.MenuService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/PermissionController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/PermissionController.java
index 50dfeff..01b9d41 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/PermissionController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/PermissionController.java
@@ -5,8 +5,8 @@ import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.module.system.controller.admin.permission.vo.permission.PermissionAssignRoleDataScopeReqVO;
import cd.casic.module.system.controller.admin.permission.vo.permission.PermissionAssignRoleMenuReqVO;
import cd.casic.module.system.controller.admin.permission.vo.permission.PermissionAssignUserRoleReqVO;
-import cd.casic.module.system.service.permission.PermissionService;
-import cd.casic.module.system.service.tenant.TenantService;
+import cd.casic.framework.datapermission.service.PermissionService;
+import cd.casic.framework.datapermission.service.TenantService;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/RoleController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/RoleController.java
index 8090aaa..a22b50f 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/RoleController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/permission/RoleController.java
@@ -6,10 +6,12 @@ import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.pojo.PageParam;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.object.BeanUtils;
+import cd.casic.framework.datapermission.core.vo.RolePageReqVO;
+import cd.casic.framework.datapermission.core.vo.role.RoleRespVO;
+import cd.casic.framework.datapermission.core.vo.role.RoleSaveReqVO;
import cd.casic.framework.excel.excel.core.util.ExcelUtils;
-import cd.casic.module.system.controller.admin.permission.vo.role.*;
-import cd.casic.module.system.dal.dataobject.permission.RoleDO;
-import cd.casic.module.system.service.permission.RoleService;
+import cd.casic.framework.security.dal.permission.RoleDO;
+import cd.casic.framework.datapermission.service.RoleService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/TenantController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/TenantController.java
index 99172b4..baefa8a 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/TenantController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/TenantController.java
@@ -6,12 +6,12 @@ import cd.casic.framework.commons.pojo.PageParam;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.object.BeanUtils;
import cd.casic.framework.excel.excel.core.util.ExcelUtils;
-import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantPageReqVO;
-import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantRespVO;
-import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantSaveReqVO;
-import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantSimpleRespVO;
-import cd.casic.module.system.dal.dataobject.tenant.TenantDO;
-import cd.casic.module.system.service.tenant.TenantService;
+import cd.casic.framework.security.vo.vo.tenant.TenantPageReqVO;
+import cd.casic.framework.security.vo.vo.tenant.TenantRespVO;
+import cd.casic.framework.security.vo.vo.tenant.TenantSaveReqVO;
+import cd.casic.framework.security.vo.vo.tenant.TenantSimpleRespVO;
+import cd.casic.framework.security.dal.tenant.TenantDO;
+import cd.casic.framework.datapermission.service.TenantService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/TenantPackageController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/TenantPackageController.java
index bccc21e..a4c51ee 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/TenantPackageController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/tenant/TenantPackageController.java
@@ -4,9 +4,12 @@ import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.module.system.controller.admin.tenant.vo.packages.*;
-import cd.casic.module.system.dal.dataobject.tenant.TenantPackageDO;
-import cd.casic.module.system.service.tenant.TenantPackageService;
+import cd.casic.framework.datapermission.core.vo.packages.TenantPackagePageReqVO;
+import cd.casic.framework.datapermission.core.vo.packages.TenantPackageRespVO;
+import cd.casic.framework.datapermission.core.vo.packages.TenantPackageSaveReqVO;
+import cd.casic.framework.datapermission.core.vo.packages.TenantPackageSimpleRespVO;
+import cd.casic.framework.security.dal.tenant.TenantPackageDO;
+import cd.casic.framework.datapermission.service.TenantPackageService;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/UserController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/UserController.java
index ccd10f5..c869142 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/UserController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/UserController.java
@@ -1,19 +1,20 @@
package cd.casic.module.system.controller.admin.user;
+import cd.casic.framework.datapermission.core.vo.*;
import cd.casic.framework.excel.excel.core.util.ExcelUtils;
+
import cn.hutool.core.collection.CollUtil;
import cd.casic.framework.apilog.core.annotation.ApiAccessLog;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.pojo.PageParam;
import cd.casic.framework.commons.pojo.PageResult;
-import cd.casic.module.system.controller.admin.user.vo.user.*;
-import cd.casic.module.system.convert.user.UserConvert;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.datapermission.convert.UserConvert;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import cd.casic.module.system.enums.common.SexEnum;
-import cd.casic.module.system.service.dept.DeptService;
-import cd.casic.module.system.service.user.AdminUserService;
+import cd.casic.framework.datapermission.service.dept.DeptService;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Parameters;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/UserProfileController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/UserProfileController.java
index 59b528b..f6b081c 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/UserProfileController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/admin/user/UserProfileController.java
@@ -1,22 +1,21 @@
package cd.casic.module.system.controller.admin.user;
import cn.hutool.core.collection.CollUtil;
-import cd.casic.framework.commons.enums.UserTypeEnum;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.datapermission.core.annotation.DataPermission;
-import cd.casic.module.system.controller.admin.user.vo.profile.UserProfileRespVO;
-import cd.casic.module.system.controller.admin.user.vo.profile.UserProfileUpdatePasswordReqVO;
-import cd.casic.module.system.controller.admin.user.vo.profile.UserProfileUpdateReqVO;
-import cd.casic.module.system.convert.user.UserConvert;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
-import cd.casic.module.system.dal.dataobject.dept.PostDO;
-import cd.casic.module.system.dal.dataobject.permission.RoleDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
-import cd.casic.module.system.service.dept.DeptService;
-import cd.casic.module.system.service.dept.PostService;
-import cd.casic.module.system.service.permission.PermissionService;
-import cd.casic.module.system.service.permission.RoleService;
-import cd.casic.module.system.service.user.AdminUserService;
+import cd.casic.framework.datapermission.service.auth.vo.profile.UserProfileRespVO;
+import cd.casic.framework.datapermission.service.auth.vo.profile.UserProfileUpdatePasswordReqVO;
+import cd.casic.framework.datapermission.service.auth.vo.profile.UserProfileUpdateReqVO;
+import cd.casic.framework.datapermission.convert.UserConvert;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.commons.dataobject.dept.PostDO;
+import cd.casic.framework.security.dal.permission.RoleDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
+import cd.casic.framework.datapermission.service.dept.DeptService;
+import cd.casic.framework.datapermission.service.dept.PostService;
+import cd.casic.framework.datapermission.service.PermissionService;
+import cd.casic.framework.datapermission.service.RoleService;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Operation;
import lombok.extern.slf4j.Slf4j;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/app/ip/AppAreaController.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/app/ip/AppAreaController.java
index d3b9f2f..51e3072 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/app/ip/AppAreaController.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/controller/app/ip/AppAreaController.java
@@ -1,7 +1,7 @@
package cd.casic.module.system.controller.app.ip;
-import cd.casic.framework.redis.core.Area;
-import cd.casic.framework.redis.core.utils.AreaUtils;
+import cd.casic.framework.commons.util.redis.core.Area;
+import cd.casic.framework.commons.util.redis.core.utils.AreaUtils;
import cn.hutool.core.lang.Assert;
import cd.casic.framework.commons.pojo.CommonResult;
import cd.casic.framework.commons.util.object.BeanUtils;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/convert/auth/AuthConvert.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/convert/auth/AuthConvert.java
index 5313046..f07c1d5 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/convert/auth/AuthConvert.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/convert/auth/AuthConvert.java
@@ -1,11 +1,12 @@
package cd.casic.module.system.convert.auth;
import cd.casic.framework.commons.util.object.BeanUtils;
-import cd.casic.module.system.controller.admin.auth.vo.*;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
-import cd.casic.module.system.dal.dataobject.permission.MenuDO;
-import cd.casic.module.system.dal.dataobject.permission.RoleDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.datapermission.service.auth.vo.AuthLoginRespVO;
+import cd.casic.framework.datapermission.service.auth.vo.AuthPermissionInfoRespVO;
+import cd.casic.framework.security.dal.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
+import cd.casic.framework.security.dal.permission.RoleDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import cd.casic.module.system.enums.permission.MenuTypeEnum;
import cn.hutool.core.collection.CollUtil;
import org.mapstruct.Mapper;
@@ -16,7 +17,7 @@ import java.util.*;
import static cd.casic.framework.commons.util.collection.CollectionUtils.convertSet;
import static cd.casic.framework.commons.util.collection.CollectionUtils.filterList;
-import static cd.casic.module.system.dal.dataobject.permission.MenuDO.ID_ROOT;
+import static cd.casic.framework.datapermission.core.dal.dataobject.MenuDO.ID_ROOT;
@Mapper
public interface AuthConvert {
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/convert/oauth2/OAuth2OpenConvert.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/convert/oauth2/OAuth2OpenConvert.java
index 2bb2c60..40f1604 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/convert/oauth2/OAuth2OpenConvert.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/convert/oauth2/OAuth2OpenConvert.java
@@ -1,17 +1,17 @@
package cd.casic.module.system.convert.oauth2;
+import cd.casic.framework.security.dal.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2ApproveDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2ClientDO;
import cn.hutool.core.date.LocalDateTimeUtil;
import cd.casic.framework.commons.core.KeyValue;
import cd.casic.framework.commons.enums.UserTypeEnum;
import cd.casic.framework.commons.util.collection.CollectionUtils;
import cd.casic.framework.commons.util.object.BeanUtils;
import cd.casic.framework.security.core.util.SecurityFrameworkUtils;
-import cd.casic.module.system.controller.admin.oauth2.vo.open.OAuth2OpenAccessTokenRespVO;
-import cd.casic.module.system.controller.admin.oauth2.vo.open.OAuth2OpenAuthorizeInfoRespVO;
-import cd.casic.module.system.controller.admin.oauth2.vo.open.OAuth2OpenCheckTokenRespVO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ApproveDO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ClientDO;
+import cd.casic.framework.security.vo.vo.open.OAuth2OpenAccessTokenRespVO;
+import cd.casic.framework.security.vo.vo.open.OAuth2OpenAuthorizeInfoRespVO;
+import cd.casic.framework.security.vo.vo.open.OAuth2OpenCheckTokenRespVO;
import cd.casic.module.system.util.oauth2.OAuth2Utils;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dict/DictDataDO.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dict/DictDataDO.java
index 4cb0725..1218778 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dict/DictDataDO.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dict/DictDataDO.java
@@ -1,7 +1,7 @@
package cd.casic.module.system.dal.dataobject.dict;
import cd.casic.framework.commons.enums.CommonStatusEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import lombok.EqualsAndHashCode;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dict/DictTypeDO.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dict/DictTypeDO.java
index 738ef70..dd4ddc6 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dict/DictTypeDO.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/dict/DictTypeDO.java
@@ -1,7 +1,7 @@
package cd.casic.module.system.dal.dataobject.dict;
import cd.casic.framework.commons.enums.CommonStatusEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/logger/OperateLogDO.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/logger/OperateLogDO.java
index f464553..ff80c83 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/logger/OperateLogDO.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/logger/OperateLogDO.java
@@ -1,7 +1,7 @@
package cd.casic.module.system.dal.dataobject.logger;
import cd.casic.framework.commons.enums.UserTypeEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/mail/MailAccountDO.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/mail/MailAccountDO.java
index 7b0cbc5..a9ad5f9 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/mail/MailAccountDO.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/mail/MailAccountDO.java
@@ -1,6 +1,6 @@
package cd.casic.module.system.dal.dataobject.mail;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/mail/MailLogDO.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/mail/MailLogDO.java
index 324c5b4..321419c 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/mail/MailLogDO.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/mail/MailLogDO.java
@@ -1,7 +1,7 @@
package cd.casic.module.system.dal.dataobject.mail;
import cd.casic.framework.commons.enums.UserTypeEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import cd.casic.module.system.enums.mail.MailSendStatusEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/mail/MailTemplateDO.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/mail/MailTemplateDO.java
index dd27002..0ac3002 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/mail/MailTemplateDO.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/mail/MailTemplateDO.java
@@ -1,7 +1,7 @@
package cd.casic.module.system.dal.dataobject.mail;
import cd.casic.framework.commons.enums.CommonStatusEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/notice/NoticeDO.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/notice/NoticeDO.java
index adc9f09..d4c699a 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/notice/NoticeDO.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/notice/NoticeDO.java
@@ -1,7 +1,7 @@
package cd.casic.module.system.dal.dataobject.notice;
import cd.casic.framework.commons.enums.CommonStatusEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import cd.casic.module.system.enums.notice.NoticeTypeEnum;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableName;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/notify/NotifyMessageDO.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/notify/NotifyMessageDO.java
index 9d86cd5..2cf0031 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/notify/NotifyMessageDO.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/notify/NotifyMessageDO.java
@@ -1,8 +1,7 @@
package cd.casic.module.system.dal.dataobject.notify;
import cd.casic.framework.commons.enums.UserTypeEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
-import cd.casic.module.system.dal.dataobject.mail.MailTemplateDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/notify/NotifyTemplateDO.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/notify/NotifyTemplateDO.java
index 25f94eb..d43a1e3 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/notify/NotifyTemplateDO.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/dal/dataobject/notify/NotifyTemplateDO.java
@@ -1,7 +1,7 @@
package cd.casic.module.system.dal.dataobject.notify;
import cd.casic.framework.commons.enums.CommonStatusEnum;
-import cd.casic.framework.mybatis.core.dataobject.BaseDO;
+import cd.casic.framework.commons.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/datapermission/config/DataPermissionConfiguration.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/datapermission/config/DataPermissionConfiguration.java
index 6775e05..d8adbc7 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/datapermission/config/DataPermissionConfiguration.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/datapermission/config/DataPermissionConfiguration.java
@@ -1,7 +1,7 @@
package cd.casic.module.system.framework.datapermission.config;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import cd.casic.framework.datapermission.core.rule.dept.DeptDataPermissionRuleCustomizer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/package-info.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/package-info.java
deleted file mode 100644
index 5a62dc1..0000000
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/framework/operatelog/package-info.java
+++ /dev/null
@@ -1,4 +0,0 @@
-/**
- * 占位文件,避免文件夹缩进
- */
-package cd.casic.module.system.framework.operatelog;
\ No newline at end of file
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/job/DemoJob.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/job/DemoJob.java
index 1c8c51b..efb4d59 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/job/DemoJob.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/job/DemoJob.java
@@ -1,10 +1,10 @@
package cd.casic.module.system.job;
+import cd.casic.framework.datapermission.core.dal.AdminUserMapper;
import cd.casic.framework.job.core.handler.JobHandler;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
+import cd.casic.framework.commons.context.TenantContextHolder;
import cd.casic.framework.tenant.core.job.TenantJob;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
-import cd.casic.module.system.dal.mysql.user.AdminUserMapper;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import org.springframework.stereotype.Component;
import jakarta.annotation.Resource;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/mail/MailAccountServiceImpl.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/service/mail/MailAccountServiceImpl.java
index 6661329..41d0150 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/mail/MailAccountServiceImpl.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/service/mail/MailAccountServiceImpl.java
@@ -6,7 +6,7 @@ import cd.casic.module.system.controller.admin.mail.vo.account.MailAccountPageRe
import cd.casic.module.system.controller.admin.mail.vo.account.MailAccountSaveReqVO;
import cd.casic.module.system.dal.dataobject.mail.MailAccountDO;
import cd.casic.module.system.dal.mysql.mail.MailAccountMapper;
-import cd.casic.module.system.dal.redis.RedisKeyConstants;
+import cd.casic.framework.security.redis.RedisKeyConstants;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cache.annotation.CacheEvict;
import org.springframework.cache.annotation.Cacheable;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/mail/MailSendServiceImpl.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/service/mail/MailSendServiceImpl.java
index c7162bc..d6526a9 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/mail/MailSendServiceImpl.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/service/mail/MailSendServiceImpl.java
@@ -5,11 +5,11 @@ import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.enums.UserTypeEnum;
import cd.casic.module.system.dal.dataobject.mail.MailAccountDO;
import cd.casic.module.system.dal.dataobject.mail.MailTemplateDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import cd.casic.module.system.mq.message.mail.MailSendMessage;
import cd.casic.module.system.mq.producer.mail.MailProducer;
-import cd.casic.module.system.service.member.MemberService;
-import cd.casic.module.system.service.user.AdminUserService;
+import cd.casic.framework.service.member.MemberService;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
import com.google.common.annotations.VisibleForTesting;
import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/mail/MailTemplateServiceImpl.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/service/mail/MailTemplateServiceImpl.java
index 790b022..1edf995 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/mail/MailTemplateServiceImpl.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/service/mail/MailTemplateServiceImpl.java
@@ -9,7 +9,7 @@ import cd.casic.module.system.controller.admin.mail.vo.template.MailTemplatePage
import cd.casic.module.system.controller.admin.mail.vo.template.MailTemplateSaveReqVO;
import cd.casic.module.system.dal.dataobject.mail.MailTemplateDO;
import cd.casic.module.system.dal.mysql.mail.MailTemplateMapper;
-import cd.casic.module.system.dal.redis.RedisKeyConstants;
+import cd.casic.framework.security.redis.RedisKeyConstants;
import com.google.common.annotations.VisibleForTesting;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cache.annotation.CacheEvict;
diff --git a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/notify/NotifyTemplateServiceImpl.java b/modules/module-system-biz/src/main/java/cd/casic/module/system/service/notify/NotifyTemplateServiceImpl.java
index 90bbd19..50bb202 100644
--- a/modules/module-system-biz/src/main/java/cd/casic/module/system/service/notify/NotifyTemplateServiceImpl.java
+++ b/modules/module-system-biz/src/main/java/cd/casic/module/system/service/notify/NotifyTemplateServiceImpl.java
@@ -8,7 +8,7 @@ import cd.casic.module.system.controller.admin.notify.vo.template.NotifyTemplate
import cd.casic.module.system.controller.admin.notify.vo.template.NotifyTemplateSaveReqVO;
import cd.casic.module.system.dal.dataobject.notify.NotifyTemplateDO;
import cd.casic.module.system.dal.mysql.notify.NotifyTemplateMapper;
-import cd.casic.module.system.dal.redis.RedisKeyConstants;
+import cd.casic.framework.security.redis.RedisKeyConstants;
import com.google.common.annotations.VisibleForTesting;
import lombok.extern.slf4j.Slf4j;
import org.springframework.cache.annotation.CacheEvict;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/oauth2/OAuth2OpenControllerTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/oauth2/OAuth2OpenControllerTest.java
index 488e05b..778cb0d 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/oauth2/OAuth2OpenControllerTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/oauth2/OAuth2OpenControllerTest.java
@@ -4,21 +4,20 @@ import cd.casic.framework.commons.core.KeyValue;
import cd.casic.framework.commons.enums.UserTypeEnum;
import cd.casic.framework.commons.exception.ErrorCode;
import cd.casic.framework.commons.pojo.CommonResult;
-import cd.casic.framework.commons.util.collection.SetUtils;
import cd.casic.framework.commons.util.object.ObjectUtils;
+import cd.casic.framework.security.dal.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2ApproveDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2ClientDO;
import cd.casic.framework.test.core.ut.BaseMockitoUnitTest;
import cd.casic.module.system.controller.admin.oauth2.OAuth2OpenController;
-import cd.casic.module.system.controller.admin.oauth2.vo.open.OAuth2OpenAccessTokenRespVO;
-import cd.casic.module.system.controller.admin.oauth2.vo.open.OAuth2OpenAuthorizeInfoRespVO;
-import cd.casic.module.system.controller.admin.oauth2.vo.open.OAuth2OpenCheckTokenRespVO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ApproveDO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ClientDO;
+import cd.casic.framework.security.vo.vo.open.OAuth2OpenAccessTokenRespVO;
+import cd.casic.framework.security.vo.vo.open.OAuth2OpenAuthorizeInfoRespVO;
+import cd.casic.framework.security.vo.vo.open.OAuth2OpenCheckTokenRespVO;
import cd.casic.module.system.enums.oauth2.OAuth2GrantTypeEnum;
-import cd.casic.module.system.service.oauth2.OAuth2ApproveService;
-import cd.casic.module.system.service.oauth2.OAuth2ClientService;
-import cd.casic.module.system.service.oauth2.OAuth2GrantService;
-import cd.casic.module.system.service.oauth2.OAuth2TokenService;
+import cd.casic.framework.security.oauth2.OAuth2ApproveService;
+import cd.casic.framework.security.oauth2.OAuth2ClientService;
+import cd.casic.framework.tenant.core.service.OAuth2GrantService;
+import cd.casic.framework.datapermission.service.user.OAuth2TokenService;
import cn.hutool.core.collection.ListUtil;
import cn.hutool.core.date.LocalDateTimeUtil;
import cn.hutool.core.map.MapUtil;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/auth/AdminAuthServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/auth/AdminAuthServiceImplTest.java
index 57fef8e..922edbc 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/auth/AdminAuthServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/auth/AdminAuthServiceImplTest.java
@@ -2,17 +2,18 @@ package cd.casic.module.system.service.auth;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.enums.UserTypeEnum;
+import cd.casic.framework.security.dal.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.tenant.core.service.AdminAuthServiceImpl;
import cd.casic.framework.test.core.ut.BaseDbUnitTest;
-import cd.casic.module.system.controller.admin.auth.vo.AuthLoginReqVO;
-import cd.casic.module.system.controller.admin.auth.vo.AuthLoginRespVO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.datapermission.service.auth.vo.AuthLoginReqVO;
+import cd.casic.framework.datapermission.service.auth.vo.AuthLoginRespVO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import cd.casic.module.system.enums.logger.LoginLogTypeEnum;
import cd.casic.module.system.enums.logger.LoginResultEnum;
-import cd.casic.module.system.service.logger.LoginLogService;
-import cd.casic.module.system.service.member.MemberService;
-import cd.casic.module.system.service.oauth2.OAuth2TokenService;
-import cd.casic.module.system.service.user.AdminUserService;
+import cd.casic.framework.datapermission.service.log.LoginLogService;
+import cd.casic.framework.service.member.MemberService;
+import cd.casic.framework.datapermission.service.user.OAuth2TokenService;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
import cn.hutool.core.util.ReflectUtil;
import jakarta.annotation.Resource;
import jakarta.validation.Validation;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/dept/DeptServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/dept/DeptServiceImplTest.java
index e8867a7..edf3af2 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/dept/DeptServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/dept/DeptServiceImplTest.java
@@ -2,11 +2,12 @@ package cd.casic.module.system.service.dept;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.util.object.ObjectUtils;
+import cd.casic.framework.datapermission.service.dept.DeptServiceImpl;
import cd.casic.framework.test.core.ut.BaseDbUnitTest;
-import cd.casic.module.system.controller.admin.dept.vo.dept.DeptListReqVO;
-import cd.casic.module.system.controller.admin.dept.vo.dept.DeptSaveReqVO;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
-import cd.casic.module.system.dal.mysql.dept.DeptMapper;
+import cd.casic.framework.security.vo.dept.DeptListReqVO;
+import cd.casic.framework.security.vo.dept.DeptSaveReqVO;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.security.dal.dept.DeptMapper;
import jakarta.annotation.Resource;
import org.junit.jupiter.api.Test;
import org.springframework.context.annotation.Import;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/dept/PostServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/dept/PostServiceImplTest.java
index f29ea1a..988299a 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/dept/PostServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/dept/PostServiceImplTest.java
@@ -3,11 +3,12 @@ package cd.casic.module.system.service.dept;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.collection.ArrayUtils;
+import cd.casic.framework.datapermission.service.dept.PostServiceImpl;
import cd.casic.framework.test.core.ut.BaseDbUnitTest;
-import cd.casic.module.system.controller.admin.dept.vo.post.PostSaveReqVO;
-import cd.casic.module.system.controller.admin.dept.vo.post.PostPageReqVO;
-import cd.casic.module.system.dal.dataobject.dept.PostDO;
-import cd.casic.module.system.dal.mysql.dept.PostMapper;
+import cd.casic.framework.security.vo.dept.post.PostSaveReqVO;
+import cd.casic.framework.security.vo.dept.post.PostPageReqVO;
+import cd.casic.framework.commons.dataobject.dept.PostDO;
+import cd.casic.framework.security.dal.dept.PostMapper;
import jakarta.annotation.Resource;
import org.junit.jupiter.api.Test;
import org.springframework.context.annotation.Import;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/logger/LoginLogServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/logger/LoginLogServiceImplTest.java
index 4644a1c..54ad463 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/logger/LoginLogServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/logger/LoginLogServiceImplTest.java
@@ -1,11 +1,12 @@
package cd.casic.module.system.service.logger;
import cd.casic.framework.commons.pojo.PageResult;
+import cd.casic.framework.datapermission.service.log.LoginLogServiceImpl;
import cd.casic.framework.test.core.ut.BaseDbUnitTest;
import cd.casic.module.system.api.logger.dto.LoginLogCreateReqDTO;
-import cd.casic.module.system.controller.admin.logger.vo.loginlog.LoginLogPageReqVO;
-import cd.casic.module.system.dal.dataobject.logger.LoginLogDO;
-import cd.casic.module.system.dal.mysql.logger.LoginLogMapper;
+import cd.casic.framework.security.vo.loginlog.LoginLogPageReqVO;
+import cd.casic.framework.security.vo.logger.LoginLogDO;
+import cd.casic.framework.datapermission.core.dal.LoginLogMapper;
import jakarta.annotation.Resource;
import org.junit.jupiter.api.Test;
import org.springframework.context.annotation.Import;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/mail/MailSendServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/mail/MailSendServiceImplTest.java
index 5ca6aed..9fa137b 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/mail/MailSendServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/mail/MailSendServiceImplTest.java
@@ -7,11 +7,11 @@ import cd.casic.framework.test.core.ut.BaseMockitoUnitTest;
import cd.casic.framework.test.core.util.RandomUtils;
import cd.casic.module.system.dal.dataobject.mail.MailAccountDO;
import cd.casic.module.system.dal.dataobject.mail.MailTemplateDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
import cd.casic.module.system.mq.message.mail.MailSendMessage;
import cd.casic.module.system.mq.producer.mail.MailProducer;
-import cd.casic.module.system.service.member.MemberService;
-import cd.casic.module.system.service.user.AdminUserService;
+import cd.casic.framework.service.member.MemberService;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
import org.assertj.core.util.Lists;
import org.dromara.hutool.extra.mail.MailAccount;
import org.dromara.hutool.extra.mail.MailUtil;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2ApproveServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2ApproveServiceImplTest.java
index bf274ea..857e12c 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2ApproveServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2ApproveServiceImplTest.java
@@ -1,13 +1,15 @@
package cd.casic.module.system.service.oauth2;
+import cd.casic.framework.security.dal.oauth2.OAuth2ApproveDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2ClientDO;
+import cd.casic.framework.security.oauth2.OAuth2ApproveServiceImpl;
+import cd.casic.framework.security.oauth2.OAuth2ClientService;
import cn.hutool.core.date.LocalDateTimeUtil;
import cn.hutool.core.util.ObjectUtil;
import cd.casic.framework.commons.enums.UserTypeEnum;
import cd.casic.framework.commons.util.date.DateUtils;
import cd.casic.framework.test.core.ut.BaseDbUnitTest;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ApproveDO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ClientDO;
-import cd.casic.module.system.dal.mysql.oauth2.OAuth2ApproveMapper;
+import cd.casic.framework.security.dal.oauth2.OAuth2ApproveMapper;
import jakarta.annotation.Resource;
import org.assertj.core.util.Lists;
import org.junit.jupiter.api.Test;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2ClientServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2ClientServiceImplTest.java
index f2aba33..5e865f1 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2ClientServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2ClientServiceImplTest.java
@@ -1,13 +1,14 @@
package cd.casic.module.system.service.oauth2;
+import cd.casic.framework.security.dal.oauth2.OAuth2ClientDO;
+import cd.casic.framework.security.oauth2.OAuth2ClientServiceImpl;
import cn.hutool.extra.spring.SpringUtil;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.test.core.ut.BaseDbUnitTest;
-import cd.casic.module.system.controller.admin.oauth2.vo.client.OAuth2ClientPageReqVO;
-import cd.casic.module.system.controller.admin.oauth2.vo.client.OAuth2ClientSaveReqVO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ClientDO;
-import cd.casic.module.system.dal.mysql.oauth2.OAuth2ClientMapper;
+import cd.casic.framework.security.vo.vo.client.OAuth2ClientPageReqVO;
+import cd.casic.framework.security.vo.vo.client.OAuth2ClientSaveReqVO;
+import cd.casic.framework.security.dal.oauth2.OAuth2ClientMapper;
import jakarta.annotation.Resource;
import org.junit.jupiter.api.Test;
import org.mockito.MockedStatic;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2CodeServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2CodeServiceImplTest.java
index d60abdb..5aa0175 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2CodeServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2CodeServiceImplTest.java
@@ -1,11 +1,12 @@
package cd.casic.module.system.service.oauth2;
+import cd.casic.framework.security.dal.oauth2.OAuth2CodeDO;
+import cd.casic.framework.security.oauth2.OAuth2CodeServiceImpl;
import cn.hutool.core.util.RandomUtil;
import cd.casic.framework.commons.enums.UserTypeEnum;
import cd.casic.framework.commons.util.date.DateUtils;
import cd.casic.framework.test.core.ut.BaseDbUnitTest;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2CodeDO;
-import cd.casic.module.system.dal.mysql.oauth2.OAuth2CodeMapper;
+import cd.casic.framework.security.dal.oauth2.OAuth2CodeMapper;
import jakarta.annotation.Resource;
import org.assertj.core.util.Lists;
import org.junit.jupiter.api.Test;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2GrantServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2GrantServiceImplTest.java
index ef0ada4..d5037b2 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2GrantServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2GrantServiceImplTest.java
@@ -1,11 +1,14 @@
package cd.casic.module.system.service.oauth2;
import cd.casic.framework.commons.enums.UserTypeEnum;
+import cd.casic.framework.security.dal.oauth2.OAuth2AccessTokenDO;
+import cd.casic.framework.security.dal.oauth2.OAuth2CodeDO;
+import cd.casic.framework.security.oauth2.OAuth2CodeService;
+import cd.casic.framework.tenant.core.service.OAuth2GrantServiceImpl;
+import cd.casic.framework.datapermission.service.user.OAuth2TokenService;
import cd.casic.framework.test.core.ut.BaseMockitoUnitTest;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2CodeDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
-import cd.casic.module.system.service.auth.AdminAuthService;
+import cd.casic.framework.security.dal.user.AdminUserDO;
+import cd.casic.framework.tenant.core.service.AdminAuthService;
import com.google.common.collect.Lists;
import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2TokenServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2TokenServiceImplTest.java
index 02d23ba..d5e6db5 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2TokenServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/oauth2/OAuth2TokenServiceImplTest.java
@@ -1,21 +1,19 @@
package cd.casic.module.system.service.oauth2;
+import cd.casic.framework.security.dal.oauth2.*;
+import cd.casic.framework.security.oauth2.OAuth2ClientService;
+import cd.casic.framework.datapermission.service.user.OAuth2TokenServiceImpl;
import cn.hutool.core.date.LocalDateTimeUtil;
import cd.casic.framework.commons.enums.UserTypeEnum;
import cd.casic.framework.commons.exception.ErrorCode;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.date.DateUtils;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
+import cd.casic.framework.commons.context.TenantContextHolder;
import cd.casic.framework.test.core.ut.BaseDbAndRedisUnitTest;
-import cd.casic.module.system.controller.admin.oauth2.vo.token.OAuth2AccessTokenPageReqVO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2AccessTokenDO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2ClientDO;
-import cd.casic.module.system.dal.dataobject.oauth2.OAuth2RefreshTokenDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
-import cd.casic.module.system.dal.mysql.oauth2.OAuth2AccessTokenMapper;
-import cd.casic.module.system.dal.mysql.oauth2.OAuth2RefreshTokenMapper;
-import cd.casic.module.system.dal.redis.oauth2.OAuth2AccessTokenRedisDAO;
-import cd.casic.module.system.service.user.AdminUserService;
+import cd.casic.framework.security.vo.vo.token.OAuth2AccessTokenPageReqVO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
+import cd.casic.framework.security.redis.oauth2.OAuth2AccessTokenRedisDAO;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
import jakarta.annotation.Resource;
import org.assertj.core.util.Lists;
import org.junit.jupiter.api.Test;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/permission/MenuServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/permission/MenuServiceImplTest.java
index c708405..6b1ba92 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/permission/MenuServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/permission/MenuServiceImplTest.java
@@ -1,13 +1,15 @@
package cd.casic.module.system.service.permission;
import cd.casic.framework.commons.enums.CommonStatusEnum;
+import cd.casic.framework.datapermission.service.MenuServiceImpl;
+import cd.casic.framework.datapermission.service.PermissionService;
import cd.casic.framework.test.core.ut.BaseDbUnitTest;
-import cd.casic.module.system.controller.admin.permission.vo.menu.MenuListReqVO;
-import cd.casic.module.system.controller.admin.permission.vo.menu.MenuSaveVO;
-import cd.casic.module.system.dal.dataobject.permission.MenuDO;
-import cd.casic.module.system.dal.mysql.permission.MenuMapper;
+import cd.casic.framework.datapermission.service.permission.menu.MenuListReqVO;
+import cd.casic.framework.datapermission.service.permission.menu.MenuSaveVO;
+import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
+import cd.casic.framework.datapermission.core.dal.MenuMapper;
import cd.casic.module.system.enums.permission.MenuTypeEnum;
-import cd.casic.module.system.service.tenant.TenantService;
+import cd.casic.framework.datapermission.service.TenantService;
import jakarta.annotation.Resource;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.mock.mockito.MockBean;
@@ -23,7 +25,7 @@ import static cd.casic.framework.commons.util.object.ObjectUtils.cloneIgnoreId;
import static cd.casic.framework.test.core.util.AssertUtils.assertPojoEquals;
import static cd.casic.framework.test.core.util.AssertUtils.assertServiceException;
import static cd.casic.framework.test.core.util.RandomUtils.*;
-import static cd.casic.module.system.dal.dataobject.permission.MenuDO.ID_ROOT;
+import static cd.casic.framework.datapermission.core.dal.dataobject.MenuDO.ID_ROOT;
import static cd.casic.module.system.enums.ErrorCodeConstants.*;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNull;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/permission/PermissionServiceTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/permission/PermissionServiceTest.java
index b686307..7cbabea 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/permission/PermissionServiceTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/permission/PermissionServiceTest.java
@@ -1,21 +1,24 @@
package cd.casic.module.system.service.permission;
+import cd.casic.framework.datapermission.service.MenuService;
+import cd.casic.framework.datapermission.service.PermissionServiceImpl;
+import cd.casic.framework.datapermission.service.RoleService;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.extra.spring.SpringUtil;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.test.core.ut.BaseDbUnitTest;
import cd.casic.module.system.api.permission.dto.DeptDataPermissionRespDTO;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
-import cd.casic.module.system.dal.dataobject.permission.MenuDO;
-import cd.casic.module.system.dal.dataobject.permission.RoleDO;
-import cd.casic.module.system.dal.dataobject.permission.RoleMenuDO;
-import cd.casic.module.system.dal.dataobject.permission.UserRoleDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
-import cd.casic.module.system.dal.mysql.permission.RoleMenuMapper;
-import cd.casic.module.system.dal.mysql.permission.UserRoleMapper;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
+import cd.casic.framework.security.dal.permission.RoleDO;
+import cd.casic.framework.security.dal.permission.RoleMenuDO;
+import cd.casic.framework.security.dal.permission.UserRoleDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
+import cd.casic.framework.security.dal.permission.RoleMenuMapper;
+import cd.casic.framework.security.dal.permission.UserRoleMapper;
import cd.casic.module.system.enums.permission.DataScopeEnum;
-import cd.casic.module.system.service.dept.DeptService;
-import cd.casic.module.system.service.user.AdminUserService;
+import cd.casic.framework.datapermission.service.dept.DeptService;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
import jakarta.annotation.Resource;
import org.junit.jupiter.api.Test;
import org.mockito.MockedStatic;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/permission/RoleServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/permission/RoleServiceImplTest.java
index 3f1a0ab..3d85f7f 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/permission/RoleServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/permission/RoleServiceImplTest.java
@@ -1,13 +1,15 @@
package cd.casic.module.system.service.permission;
+import cd.casic.framework.datapermission.service.PermissionService;
+import cd.casic.framework.datapermission.service.RoleServiceImpl;
import cn.hutool.extra.spring.SpringUtil;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.test.core.ut.BaseDbUnitTest;
-import cd.casic.module.system.controller.admin.permission.vo.role.RolePageReqVO;
-import cd.casic.module.system.controller.admin.permission.vo.role.RoleSaveReqVO;
-import cd.casic.module.system.dal.dataobject.permission.RoleDO;
-import cd.casic.module.system.dal.mysql.permission.RoleMapper;
+import cd.casic.framework.datapermission.core.vo.RolePageReqVO;
+import cd.casic.framework.datapermission.core.vo.role.RoleSaveReqVO;
+import cd.casic.framework.security.dal.permission.RoleDO;
+import cd.casic.framework.datapermission.core.dal.RoleMapper;
import cd.casic.module.system.enums.permission.DataScopeEnum;
import cd.casic.module.system.enums.permission.RoleTypeEnum;
import jakarta.annotation.Resource;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/tenant/TenantPackageServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/tenant/TenantPackageServiceImplTest.java
index 69365d1..9aca0d8 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/tenant/TenantPackageServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/tenant/TenantPackageServiceImplTest.java
@@ -2,12 +2,14 @@ package cd.casic.module.system.service.tenant;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.pojo.PageResult;
+import cd.casic.framework.datapermission.service.TenantPackageServiceImpl;
+import cd.casic.framework.datapermission.service.TenantService;
import cd.casic.framework.test.core.ut.BaseDbUnitTest;
-import cd.casic.module.system.controller.admin.tenant.vo.packages.TenantPackagePageReqVO;
-import cd.casic.module.system.controller.admin.tenant.vo.packages.TenantPackageSaveReqVO;
-import cd.casic.module.system.dal.dataobject.tenant.TenantDO;
-import cd.casic.module.system.dal.dataobject.tenant.TenantPackageDO;
-import cd.casic.module.system.dal.mysql.tenant.TenantPackageMapper;
+import cd.casic.framework.datapermission.core.vo.packages.TenantPackagePageReqVO;
+import cd.casic.framework.datapermission.core.vo.packages.TenantPackageSaveReqVO;
+import cd.casic.framework.security.dal.tenant.TenantDO;
+import cd.casic.framework.security.dal.tenant.TenantPackageDO;
+import cd.casic.framework.datapermission.core.dal.TenantPackageMapper;
import jakarta.annotation.Resource;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.mock.mockito.MockBean;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/tenant/TenantServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/tenant/TenantServiceImplTest.java
index dfdb01b..63c1e7a 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/tenant/TenantServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/tenant/TenantServiceImplTest.java
@@ -2,24 +2,26 @@ package cd.casic.module.system.service.tenant;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.pojo.PageResult;
+import cd.casic.framework.datapermission.service.TenantPackageService;
+import cd.casic.framework.datapermission.service.TenantServiceImpl;
import cd.casic.framework.tenant.config.TenantProperties;
-import cd.casic.framework.tenant.core.context.TenantContextHolder;
+import cd.casic.framework.commons.context.TenantContextHolder;
import cd.casic.framework.test.core.ut.BaseDbUnitTest;
-import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantPageReqVO;
-import cd.casic.module.system.controller.admin.tenant.vo.tenant.TenantSaveReqVO;
-import cd.casic.module.system.dal.dataobject.permission.MenuDO;
-import cd.casic.module.system.dal.dataobject.permission.RoleDO;
-import cd.casic.module.system.dal.dataobject.tenant.TenantDO;
-import cd.casic.module.system.dal.dataobject.tenant.TenantPackageDO;
-import cd.casic.module.system.dal.mysql.tenant.TenantMapper;
+import cd.casic.framework.security.vo.vo.tenant.TenantPageReqVO;
+import cd.casic.framework.security.vo.vo.tenant.TenantSaveReqVO;
+import cd.casic.framework.datapermission.core.dal.dataobject.MenuDO;
+import cd.casic.framework.security.dal.permission.RoleDO;
+import cd.casic.framework.security.dal.tenant.TenantDO;
+import cd.casic.framework.security.dal.tenant.TenantPackageDO;
+import cd.casic.framework.datapermission.core.dal.TenantMapper;
import cd.casic.module.system.enums.permission.RoleCodeEnum;
import cd.casic.module.system.enums.permission.RoleTypeEnum;
-import cd.casic.module.system.service.permission.MenuService;
-import cd.casic.module.system.service.permission.PermissionService;
-import cd.casic.module.system.service.permission.RoleService;
-import cd.casic.module.system.service.tenant.handler.TenantInfoHandler;
-import cd.casic.module.system.service.tenant.handler.TenantMenuHandler;
-import cd.casic.module.system.service.user.AdminUserService;
+import cd.casic.framework.datapermission.service.MenuService;
+import cd.casic.framework.datapermission.service.PermissionService;
+import cd.casic.framework.datapermission.service.RoleService;
+import cd.casic.framework.datapermission.service.handler.TenantInfoHandler;
+import cd.casic.framework.datapermission.service.handler.TenantMenuHandler;
+import cd.casic.framework.datapermission.service.user.AdminUserService;
import jakarta.annotation.Resource;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -38,7 +40,7 @@ import static cd.casic.framework.commons.util.object.ObjectUtils.cloneIgnoreId;
import static cd.casic.framework.test.core.util.AssertUtils.assertPojoEquals;
import static cd.casic.framework.test.core.util.AssertUtils.assertServiceException;
import static cd.casic.framework.test.core.util.RandomUtils.*;
-import static cd.casic.module.system.dal.dataobject.tenant.TenantDO.PACKAGE_ID_SYSTEM;
+import static cd.casic.framework.security.dal.tenant.TenantDO.PACKAGE_ID_SYSTEM;
import static cd.casic.module.system.enums.ErrorCodeConstants.*;
import static java.util.Arrays.asList;
import static java.util.Collections.singleton;
diff --git a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/user/AdminUserServiceImplTest.java b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/user/AdminUserServiceImplTest.java
index 66d9a4b..5854205 100644
--- a/modules/module-system-biz/src/test/java/cd/casic/module/system/service/user/AdminUserServiceImplTest.java
+++ b/modules/module-system-biz/src/test/java/cd/casic/module/system/service/user/AdminUserServiceImplTest.java
@@ -1,29 +1,32 @@
package cd.casic.module.system.service.user;
-import cn.hutool.core.util.RandomUtil;
import cd.casic.framework.commons.enums.CommonStatusEnum;
import cd.casic.framework.commons.exception.ServiceException;
import cd.casic.framework.commons.pojo.PageResult;
import cd.casic.framework.commons.util.collection.ArrayUtils;
import cd.casic.framework.commons.util.collection.CollectionUtils;
+import cd.casic.framework.datapermission.core.dal.AdminUserMapper;
+import cd.casic.framework.tenant.core.service.AdminUserServiceImpl;
+import cd.casic.framework.datapermission.core.vo.UserImportExcelVO;
+import cd.casic.framework.datapermission.core.vo.UserImportRespVO;
+import cd.casic.framework.datapermission.core.vo.UserPageReqVO;
+import cd.casic.framework.datapermission.core.vo.UserSaveReqVO;
import cd.casic.framework.test.core.ut.BaseDbUnitTest;
import cd.casic.module.infra.api.config.ConfigApi;
import cd.casic.module.infra.api.file.FileApi;
-import cd.casic.module.system.controller.admin.user.vo.profile.UserProfileUpdatePasswordReqVO;
-import cd.casic.module.system.controller.admin.user.vo.profile.UserProfileUpdateReqVO;
-import cd.casic.module.system.controller.admin.user.vo.user.*;
-import cd.casic.module.system.dal.dataobject.dept.DeptDO;
-import cd.casic.module.system.dal.dataobject.dept.PostDO;
-import cd.casic.module.system.dal.dataobject.dept.UserPostDO;
-import cd.casic.module.system.dal.dataobject.tenant.TenantDO;
-import cd.casic.module.system.dal.dataobject.user.AdminUserDO;
-import cd.casic.module.system.dal.mysql.dept.UserPostMapper;
-import cd.casic.module.system.dal.mysql.user.AdminUserMapper;
+import cd.casic.framework.datapermission.service.auth.vo.profile.UserProfileUpdatePasswordReqVO;
+import cd.casic.framework.datapermission.service.auth.vo.profile.UserProfileUpdateReqVO;
+import cd.casic.framework.commons.dataobject.dept.DeptDO;
+import cd.casic.framework.commons.dataobject.dept.PostDO;
+import cd.casic.framework.commons.dataobject.dept.UserPostDO;
+import cd.casic.framework.security.dal.tenant.TenantDO;
+import cd.casic.framework.security.dal.user.AdminUserDO;
+import cd.casic.framework.security.dal.dept.UserPostMapper;
import cd.casic.module.system.enums.common.SexEnum;
-import cd.casic.module.system.service.dept.DeptService;
-import cd.casic.module.system.service.dept.PostService;
-import cd.casic.module.system.service.permission.PermissionService;
-import cd.casic.module.system.service.tenant.TenantService;
+import cd.casic.framework.datapermission.service.dept.DeptService;
+import cd.casic.framework.datapermission.service.dept.PostService;
+import cd.casic.framework.datapermission.service.PermissionService;
+import cd.casic.framework.datapermission.service.TenantService;
import jakarta.annotation.Resource;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
@@ -38,6 +41,7 @@ import java.util.List;
import java.util.Map;
import java.util.function.Consumer;
+import static cd.casic.framework.tenant.core.service.AdminUserServiceImpl.USER_INIT_PASSWORD_KEY;
import static cn.hutool.core.util.RandomUtil.randomBytes;
import static cd.casic.framework.commons.util.collection.SetUtils.asSet;
import static cd.casic.framework.commons.util.date.LocalDateTimeUtils.buildBetweenTime;
@@ -47,7 +51,6 @@ import static cd.casic.framework.test.core.util.AssertUtils.assertPojoEquals;
import static cd.casic.framework.test.core.util.AssertUtils.assertServiceException;
import static cd.casic.framework.test.core.util.RandomUtils.*;
import static cd.casic.module.system.enums.ErrorCodeConstants.*;
-import static cd.casic.module.system.service.user.AdminUserServiceImpl.USER_INIT_PASSWORD_KEY;
import static cn.hutool.core.util.RandomUtil.randomEle;
import static java.util.Collections.singleton;
import static java.util.Collections.singletonList;