org.springdoc
springdoc-openapi-webmvc-core
diff --git a/ruoyi-common/pom.xml b/ruoyi-common/pom.xml
index 90d29940b..8e679d557 100644
--- a/ruoyi-common/pom.xml
+++ b/ruoyi-common/pom.xml
@@ -9,121 +9,35 @@
4.0.0
+
+ ruoyi-common-bom
+ ruoyi-common-core
+ ruoyi-common-datasource
+ ruoyi-common-dict
+ ruoyi-common-satoken
+ ruoyi-common-redis
+
+
ruoyi-common
+ pom
- common通用工具
+ common通用模块
-
-
- org.springframework
- spring-context-support
-
-
-
-
- org.springframework
- spring-web
-
-
-
-
- cn.dev33
- sa-token-spring-boot-starter
-
-
-
- cn.dev33
- sa-token-jwt
-
-
-
-
- org.springframework.boot
- spring-boot-starter-validation
-
-
-
-
- org.apache.commons
- commons-lang3
-
-
-
-
- com.fasterxml.jackson.core
- jackson-databind
-
-
com.alibaba
easyexcel
-
-
- org.yaml
- snakeyaml
-
-
-
-
- javax.servlet
- javax.servlet-api
-
-
-
- com.baomidou
- mybatis-plus-boot-starter
-
-
- com.baomidou
- mybatis-plus-extension
-
-
-
-
- com.baomidou
- dynamic-datasource-spring-boot-starter
-
-
-
- cn.hutool
- hutool-core
-
-
-
- cn.hutool
- hutool-http
-
-
-
- cn.hutool
- hutool-captcha
-
-
-
- cn.hutool
- hutool-jwt
-
-
-
- cn.hutool
- hutool-extra
-
com.sun.mail
jakarta.mail
-
- org.projectlombok
- lombok
-
org.springdoc
@@ -135,23 +49,6 @@
springdoc-openapi-javadoc
-
-
- org.springframework.boot
- spring-boot-configuration-processor
-
-
-
-
- org.redisson
- redisson-spring-boot-starter
-
-
-
- com.baomidou
- lock4j-redisson-spring-boot-starter
-
-
diff --git a/ruoyi-common/ruoyi-common-bom/pom.xml b/ruoyi-common/ruoyi-common-bom/pom.xml
new file mode 100644
index 000000000..0bea0e48e
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-bom/pom.xml
@@ -0,0 +1,54 @@
+
+
+ 4.0.0
+
+ com.ruoyi
+ ruoyi-common-bom
+ 4.4.0
+ pom
+
+
+ ruoyi-common-bom common依赖项
+
+
+
+
+
+
+ com.ruoyi
+ ruoyi-common-core
+ ${project.version}
+
+
+
+
+ com.ruoyi
+ ruoyi-common-datasource
+ ${project.version}
+
+
+
+
+ com.ruoyi
+ ruoyi-common-dict
+ ${project.version}
+
+
+
+ com.ruoyi
+ ruoyi-common-satoken
+ ${project.version}
+
+
+
+
+ com.ruoyi
+ ruoyi-common-redis
+ ${project.version}
+
+
+
+
+
diff --git a/ruoyi-common/ruoyi-common-core/pom.xml b/ruoyi-common/ruoyi-common-core/pom.xml
new file mode 100644
index 000000000..c725fb739
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-core/pom.xml
@@ -0,0 +1,99 @@
+
+
+ 4.0.0
+
+ com.ruoyi
+ ruoyi-common
+ 4.4.0
+
+
+ ruoyi-common-core
+
+
+ ruoyi-common-core核心模块
+
+
+
+
+
+ org.springframework
+ spring-context-support
+
+
+
+
+ org.springframework
+ spring-web
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-validation
+
+
+
+
+ org.apache.commons
+ commons-lang3
+
+
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+
+
+
+
+ javax.servlet
+ javax.servlet-api
+
+
+
+ org.projectlombok
+ lombok
+
+
+
+ cn.hutool
+ hutool-core
+
+
+
+ cn.hutool
+ hutool-http
+
+
+
+ cn.hutool
+ hutool-captcha
+
+
+
+ cn.hutool
+ hutool-jwt
+
+
+
+ cn.hutool
+ hutool-extra
+
+
+
+
+ org.springframework.boot
+ spring-boot-configuration-processor
+
+
+
+
+ org.yaml
+ snakeyaml
+
+
+
+
+
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/annotation/Sensitive.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/annotation/Sensitive.java
similarity index 77%
rename from ruoyi-common/src/main/java/com/ruoyi/common/annotation/Sensitive.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/annotation/Sensitive.java
index 2ad9777cc..0b2fbc193 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/annotation/Sensitive.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/annotation/Sensitive.java
@@ -1,9 +1,9 @@
-package com.ruoyi.common.annotation;
+package com.ruoyi.common.core.annotation;
import com.fasterxml.jackson.annotation.JacksonAnnotationsInside;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.ruoyi.common.enums.SensitiveStrategy;
-import com.ruoyi.common.jackson.SensitiveJsonSerializer;
+import com.ruoyi.common.core.enums.SensitiveStrategy;
+import com.ruoyi.common.core.jackson.SensitiveJsonSerializer;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ApplicationConfig.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/ApplicationConfig.java
similarity index 90%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/config/ApplicationConfig.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/ApplicationConfig.java
index 072eef96a..7dedbb980 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ApplicationConfig.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/ApplicationConfig.java
@@ -1,4 +1,4 @@
-package com.ruoyi.framework.config;
+package com.ruoyi.common.core.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.EnableAspectJAutoProxy;
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/AsyncConfig.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/AsyncConfig.java
similarity index 94%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/config/AsyncConfig.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/AsyncConfig.java
index d011b583d..0c5dd12ed 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/AsyncConfig.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/AsyncConfig.java
@@ -1,7 +1,7 @@
-package com.ruoyi.framework.config;
+package com.ruoyi.common.core.config;
import cn.hutool.core.util.ArrayUtil;
-import com.ruoyi.common.exception.ServiceException;
+import com.ruoyi.common.core.exception.ServiceException;
import org.springframework.aop.interceptor.AsyncUncaughtExceptionHandler;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/JacksonConfig.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/JacksonConfig.java
similarity index 94%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/config/JacksonConfig.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/JacksonConfig.java
index eace537a5..fc09317de 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/JacksonConfig.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/JacksonConfig.java
@@ -1,10 +1,10 @@
-package com.ruoyi.framework.config;
+package com.ruoyi.common.core.config;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
-import com.ruoyi.framework.jackson.BigNumberSerializer;
+import com.ruoyi.common.core.jackson.BigNumberSerializer;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
import org.springframework.context.annotation.Bean;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/config/RuoYiConfig.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/RuoYiConfig.java
similarity index 95%
rename from ruoyi-common/src/main/java/com/ruoyi/common/config/RuoYiConfig.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/RuoYiConfig.java
index 8ce7a8c4f..6185fbcbd 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/config/RuoYiConfig.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/RuoYiConfig.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.config;
+package com.ruoyi.common.core.config;
import lombok.Data;
import lombok.Getter;
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ValidatorConfig.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/ValidatorConfig.java
similarity index 97%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/config/ValidatorConfig.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/ValidatorConfig.java
index 0a2007c81..36d2e4fbf 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ValidatorConfig.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/config/ValidatorConfig.java
@@ -1,4 +1,4 @@
-package com.ruoyi.framework.config;
+package com.ruoyi.common.core.config;
import org.hibernate.validator.HibernateValidator;
import org.springframework.beans.factory.annotation.Autowired;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/constant/CacheConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/CacheConstants.java
similarity index 95%
rename from ruoyi-common/src/main/java/com/ruoyi/common/constant/CacheConstants.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/CacheConstants.java
index 1cdf07eec..38a31eea6 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/constant/CacheConstants.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/CacheConstants.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.constant;
+package com.ruoyi.common.core.constant;
/**
* 缓存的key 常量
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/constant/CacheNames.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/CacheNames.java
similarity index 95%
rename from ruoyi-common/src/main/java/com/ruoyi/common/constant/CacheNames.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/CacheNames.java
index 591ca2546..ba09e9c41 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/constant/CacheNames.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/CacheNames.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.constant;
+package com.ruoyi.common.core.constant;
/**
* 缓存组名称常量
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/Constants.java
similarity index 95%
rename from ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/Constants.java
index e634ed297..155d0dc4f 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/Constants.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.constant;
+package com.ruoyi.common.core.constant;
/**
* 通用常量信息
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/constant/GenConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/GenConstants.java
similarity index 98%
rename from ruoyi-common/src/main/java/com/ruoyi/common/constant/GenConstants.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/GenConstants.java
index bb08d50a5..46591cdcd 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/constant/GenConstants.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/GenConstants.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.constant;
+package com.ruoyi.common.core.constant;
/**
* 代码生成通用常量
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/constant/HttpStatus.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/HttpStatus.java
similarity index 97%
rename from ruoyi-common/src/main/java/com/ruoyi/common/constant/HttpStatus.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/HttpStatus.java
index f007b8c83..d19931aac 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/constant/HttpStatus.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/HttpStatus.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.constant;
+package com.ruoyi.common.core.constant;
/**
* 返回状态码
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/constant/UserConstants.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/UserConstants.java
similarity index 98%
rename from ruoyi-common/src/main/java/com/ruoyi/common/constant/UserConstants.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/UserConstants.java
index 9f800be2f..4a73c0867 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/constant/UserConstants.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/constant/UserConstants.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.constant;
+package com.ruoyi.common.core.constant;
/**
* 用户常量信息
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/R.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/domain/R.java
similarity index 97%
rename from ruoyi-common/src/main/java/com/ruoyi/common/core/domain/R.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/domain/R.java
index 381a6f602..1f28bd5e3 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/R.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/domain/R.java
@@ -1,6 +1,6 @@
package com.ruoyi.common.core.domain;
-import com.ruoyi.common.constant.HttpStatus;
+import com.ruoyi.common.core.constant.HttpStatus;
import lombok.Data;
import lombok.NoArgsConstructor;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/enums/DeviceType.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/DeviceType.java
similarity index 90%
rename from ruoyi-common/src/main/java/com/ruoyi/common/enums/DeviceType.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/DeviceType.java
index 118a2128a..b15b91c52 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/enums/DeviceType.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/DeviceType.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.enums;
+package com.ruoyi.common.core.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/enums/LoginType.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/LoginType.java
similarity index 94%
rename from ruoyi-common/src/main/java/com/ruoyi/common/enums/LoginType.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/LoginType.java
index c91a4b94f..fcd48dfbb 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/enums/LoginType.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/LoginType.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.enums;
+package com.ruoyi.common.core.enums;
import lombok.AllArgsConstructor;
import lombok.Getter;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/enums/SensitiveStrategy.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/SensitiveStrategy.java
similarity index 95%
rename from ruoyi-common/src/main/java/com/ruoyi/common/enums/SensitiveStrategy.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/SensitiveStrategy.java
index f667173c6..c58ea499e 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/enums/SensitiveStrategy.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/SensitiveStrategy.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.enums;
+package com.ruoyi.common.core.enums;
import cn.hutool.core.util.DesensitizedUtil;
import lombok.AllArgsConstructor;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/enums/UserStatus.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/UserStatus.java
similarity index 91%
rename from ruoyi-common/src/main/java/com/ruoyi/common/enums/UserStatus.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/UserStatus.java
index 673ddebd2..b546f37b2 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/enums/UserStatus.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/UserStatus.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.enums;
+package com.ruoyi.common.core.enums;
/**
* 用户状态
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/enums/UserType.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/UserType.java
similarity index 88%
rename from ruoyi-common/src/main/java/com/ruoyi/common/enums/UserType.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/UserType.java
index ec6510d98..46e400587 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/enums/UserType.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/enums/UserType.java
@@ -1,6 +1,6 @@
-package com.ruoyi.common.enums;
+package com.ruoyi.common.core.enums;
-import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.core.utils.StringUtils;
import lombok.AllArgsConstructor;
import lombok.Getter;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/exception/DemoModeException.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/DemoModeException.java
similarity index 83%
rename from ruoyi-common/src/main/java/com/ruoyi/common/exception/DemoModeException.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/DemoModeException.java
index 9178131d7..456055239 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/exception/DemoModeException.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/DemoModeException.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.exception;
+package com.ruoyi.common.core.exception;
/**
* 演示模式异常
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/exception/GlobalException.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/GlobalException.java
similarity index 96%
rename from ruoyi-common/src/main/java/com/ruoyi/common/exception/GlobalException.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/GlobalException.java
index 080785c9f..184f309e7 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/exception/GlobalException.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/GlobalException.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.exception;
+package com.ruoyi.common.core.exception;
/**
* 全局异常
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/exception/ServiceException.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/ServiceException.java
similarity index 96%
rename from ruoyi-common/src/main/java/com/ruoyi/common/exception/ServiceException.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/ServiceException.java
index 53f41b3b9..f5b2cdcde 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/exception/ServiceException.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/ServiceException.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.exception;
+package com.ruoyi.common.core.exception;
/**
* 业务异常
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/exception/UtilException.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/UtilException.java
similarity index 91%
rename from ruoyi-common/src/main/java/com/ruoyi/common/exception/UtilException.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/UtilException.java
index 01cc8782b..1e383235b 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/exception/UtilException.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/UtilException.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.exception;
+package com.ruoyi.common.core.exception;
/**
* 工具类异常
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/exception/base/BaseException.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/base/BaseException.java
similarity index 91%
rename from ruoyi-common/src/main/java/com/ruoyi/common/exception/base/BaseException.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/base/BaseException.java
index dc0b84bf6..33b28e712 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/exception/base/BaseException.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/base/BaseException.java
@@ -1,7 +1,7 @@
-package com.ruoyi.common.exception.base;
+package com.ruoyi.common.core.exception.base;
-import com.ruoyi.common.utils.MessageUtils;
-import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.core.utils.MessageUtils;
+import com.ruoyi.common.core.utils.StringUtils;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/exception/file/FileException.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/file/FileException.java
similarity index 71%
rename from ruoyi-common/src/main/java/com/ruoyi/common/exception/file/FileException.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/file/FileException.java
index 794f4e1a7..8a6a70a15 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/exception/file/FileException.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/file/FileException.java
@@ -1,6 +1,6 @@
-package com.ruoyi.common.exception.file;
+package com.ruoyi.common.core.exception.file;
-import com.ruoyi.common.exception.base.BaseException;
+import com.ruoyi.common.core.exception.base.BaseException;
/**
* 文件信息异常类
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/exception/file/FileNameLengthLimitExceededException.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/file/FileNameLengthLimitExceededException.java
similarity index 88%
rename from ruoyi-common/src/main/java/com/ruoyi/common/exception/file/FileNameLengthLimitExceededException.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/file/FileNameLengthLimitExceededException.java
index 64a5020d0..7c54c6ae2 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/exception/file/FileNameLengthLimitExceededException.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/file/FileNameLengthLimitExceededException.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.exception.file;
+package com.ruoyi.common.core.exception.file;
/**
* 文件名称超长限制异常类
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/exception/file/FileSizeLimitExceededException.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/file/FileSizeLimitExceededException.java
similarity index 87%
rename from ruoyi-common/src/main/java/com/ruoyi/common/exception/file/FileSizeLimitExceededException.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/file/FileSizeLimitExceededException.java
index 93e9e1c60..bc89b6fce 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/exception/file/FileSizeLimitExceededException.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/file/FileSizeLimitExceededException.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.exception.file;
+package com.ruoyi.common.core.exception.file;
/**
* 文件名大小限制异常类
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/exception/user/CaptchaException.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/CaptchaException.java
similarity index 84%
rename from ruoyi-common/src/main/java/com/ruoyi/common/exception/user/CaptchaException.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/CaptchaException.java
index 2345c2045..a2df75f42 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/exception/user/CaptchaException.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/CaptchaException.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.exception.user;
+package com.ruoyi.common.core.exception.user;
/**
* 验证码错误异常类
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/exception/user/CaptchaExpireException.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/CaptchaExpireException.java
similarity index 84%
rename from ruoyi-common/src/main/java/com/ruoyi/common/exception/user/CaptchaExpireException.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/CaptchaExpireException.java
index bb4c0376f..3aa9d51c9 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/exception/user/CaptchaExpireException.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/CaptchaExpireException.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.exception.user;
+package com.ruoyi.common.core.exception.user;
/**
* 验证码失效异常类
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/exception/user/UserException.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/UserException.java
similarity index 71%
rename from ruoyi-common/src/main/java/com/ruoyi/common/exception/user/UserException.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/UserException.java
index 99a888056..58d2a9f9e 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/exception/user/UserException.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/UserException.java
@@ -1,6 +1,6 @@
-package com.ruoyi.common.exception.user;
+package com.ruoyi.common.core.exception.user;
-import com.ruoyi.common.exception.base.BaseException;
+import com.ruoyi.common.core.exception.base.BaseException;
/**
* 用户信息异常类
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/exception/user/UserPasswordNotMatchException.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/UserPasswordNotMatchException.java
similarity index 86%
rename from ruoyi-common/src/main/java/com/ruoyi/common/exception/user/UserPasswordNotMatchException.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/UserPasswordNotMatchException.java
index 863ba7658..794c6753a 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/exception/user/UserPasswordNotMatchException.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/UserPasswordNotMatchException.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.exception.user;
+package com.ruoyi.common.core.exception.user;
/**
* 用户密码不正确或不符合规范异常类
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/exception/user/UserPasswordRetryLimitExceedException.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/UserPasswordRetryLimitExceedException.java
similarity index 88%
rename from ruoyi-common/src/main/java/com/ruoyi/common/exception/user/UserPasswordRetryLimitExceedException.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/UserPasswordRetryLimitExceedException.java
index 3d2b640e0..2422cbfea 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/exception/user/UserPasswordRetryLimitExceedException.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/exception/user/UserPasswordRetryLimitExceedException.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.exception.user;
+package com.ruoyi.common.core.exception.user;
/**
* 用户错误最大次数异常类
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/jackson/BigNumberSerializer.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/jackson/BigNumberSerializer.java
similarity index 97%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/jackson/BigNumberSerializer.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/jackson/BigNumberSerializer.java
index a4aee1552..0882c144e 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/jackson/BigNumberSerializer.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/jackson/BigNumberSerializer.java
@@ -1,4 +1,4 @@
-package com.ruoyi.framework.jackson;
+package com.ruoyi.common.core.jackson;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.databind.SerializerProvider;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/jackson/SensitiveJsonSerializer.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/jackson/SensitiveJsonSerializer.java
similarity index 90%
rename from ruoyi-common/src/main/java/com/ruoyi/common/jackson/SensitiveJsonSerializer.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/jackson/SensitiveJsonSerializer.java
index 41e578163..946c5c32c 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/jackson/SensitiveJsonSerializer.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/jackson/SensitiveJsonSerializer.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.jackson;
+package com.ruoyi.common.core.jackson;
import cn.hutool.core.util.ObjectUtil;
import com.fasterxml.jackson.core.JsonGenerator;
@@ -7,10 +7,10 @@ import com.fasterxml.jackson.databind.JsonMappingException;
import com.fasterxml.jackson.databind.JsonSerializer;
import com.fasterxml.jackson.databind.SerializerProvider;
import com.fasterxml.jackson.databind.ser.ContextualSerializer;
-import com.ruoyi.common.annotation.Sensitive;
+import com.ruoyi.common.core.annotation.Sensitive;
+import com.ruoyi.common.core.enums.SensitiveStrategy;
import com.ruoyi.common.core.service.SensitiveService;
-import com.ruoyi.common.enums.SensitiveStrategy;
-import com.ruoyi.common.utils.spring.SpringUtils;
+import com.ruoyi.common.core.utils.SpringUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeansException;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/service/DictService.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/service/DictService.java
similarity index 100%
rename from ruoyi-common/src/main/java/com/ruoyi/common/core/service/DictService.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/service/DictService.java
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/service/SensitiveService.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/service/SensitiveService.java
similarity index 100%
rename from ruoyi-common/src/main/java/com/ruoyi/common/core/service/SensitiveService.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/service/SensitiveService.java
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/BeanCopyUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/BeanCopyUtils.java
similarity index 99%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/BeanCopyUtils.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/BeanCopyUtils.java
index 88161daac..215a4decf 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/BeanCopyUtils.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/BeanCopyUtils.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.utils;
+package com.ruoyi.common.core.utils;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.lang.SimpleCache;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/DateUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/DateUtils.java
similarity index 99%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/DateUtils.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/DateUtils.java
index c64f1f8a1..804f1a272 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/DateUtils.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/DateUtils.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.utils;
+package com.ruoyi.common.core.utils;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/JsonUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/JsonUtils.java
similarity index 97%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/JsonUtils.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/JsonUtils.java
index e5c471e55..f8245b3d3 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/JsonUtils.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/JsonUtils.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.utils;
+package com.ruoyi.common.core.utils;
import cn.hutool.core.lang.Dict;
import cn.hutool.core.util.ArrayUtil;
@@ -7,7 +7,6 @@ import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.exc.MismatchedInputException;
-import com.ruoyi.common.utils.spring.SpringUtils;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/MessageUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/MessageUtils.java
similarity index 95%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/MessageUtils.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/MessageUtils.java
index c9c091d6f..9fd740d5e 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/MessageUtils.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/MessageUtils.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.utils;
+package com.ruoyi.common.core.utils;
import com.ruoyi.common.utils.spring.SpringUtils;
import lombok.AccessLevel;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/ServletUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ServletUtils.java
similarity index 98%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/ServletUtils.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ServletUtils.java
index 91ddd3f66..7b1c86282 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/ServletUtils.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ServletUtils.java
@@ -1,9 +1,9 @@
-package com.ruoyi.common.utils;
+package com.ruoyi.common.core.utils;
import cn.hutool.core.convert.Convert;
import cn.hutool.extra.servlet.ServletUtil;
import cn.hutool.http.HttpStatus;
-import com.ruoyi.common.constant.Constants;
+import com.ruoyi.common.core.constant.Constants;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import org.springframework.http.MediaType;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/spring/SpringUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/SpringUtils.java
similarity index 98%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/spring/SpringUtils.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/SpringUtils.java
index 8b37e416d..807700dc1 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/spring/SpringUtils.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/SpringUtils.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.utils.spring;
+package com.ruoyi.common.core.utils;
import cn.hutool.extra.spring.SpringUtil;
import org.springframework.aop.framework.AopContext;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/StreamUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/StreamUtils.java
similarity index 99%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/StreamUtils.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/StreamUtils.java
index fccd9e3d1..b11fa5194 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/StreamUtils.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/StreamUtils.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.utils;
+package com.ruoyi.common.core.utils;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.map.MapUtil;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/StringUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/StringUtils.java
similarity index 99%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/StringUtils.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/StringUtils.java
index 16f8861c1..15ece2042 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/StringUtils.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/StringUtils.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.utils;
+package com.ruoyi.common.core.utils;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.lang.Validator;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/Threads.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/Threads.java
similarity index 98%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/Threads.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/Threads.java
index 1952929dd..89ca66254 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/Threads.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/Threads.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.utils;
+package com.ruoyi.common.core.utils;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/TreeBuildUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/TreeBuildUtils.java
similarity index 91%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/TreeBuildUtils.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/TreeBuildUtils.java
index f9f8fa140..0d249456a 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/TreeBuildUtils.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/TreeBuildUtils.java
@@ -1,11 +1,11 @@
-package com.ruoyi.common.utils;
+package com.ruoyi.common.core.utils;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.lang.tree.Tree;
import cn.hutool.core.lang.tree.TreeNodeConfig;
import cn.hutool.core.lang.tree.TreeUtil;
import cn.hutool.core.lang.tree.parser.NodeParser;
-import com.ruoyi.common.utils.reflect.ReflectUtils;
+import com.ruoyi.common.core.utils.reflect.ReflectUtils;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/ValidatorUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ValidatorUtils.java
similarity index 89%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/ValidatorUtils.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ValidatorUtils.java
index 1fe2eaf64..8ba84da05 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/ValidatorUtils.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ValidatorUtils.java
@@ -1,6 +1,5 @@
-package com.ruoyi.common.utils;
+package com.ruoyi.common.core.utils;
-import com.ruoyi.common.utils.spring.SpringUtils;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/FileUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/file/FileUtils.java
similarity index 97%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/file/FileUtils.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/file/FileUtils.java
index 1ef222907..2e80c05c5 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/FileUtils.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/file/FileUtils.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.utils.file;
+package com.ruoyi.common.core.utils.file;
import cn.hutool.core.io.FileUtil;
import lombok.AccessLevel;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/MimeTypeUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/file/MimeTypeUtils.java
similarity index 96%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/file/MimeTypeUtils.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/file/MimeTypeUtils.java
index 6ca97fe60..7291c0ff2 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/MimeTypeUtils.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/file/MimeTypeUtils.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.utils.file;
+package com.ruoyi.common.core.utils.file;
/**
* 媒体类型工具类
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/ip/AddressUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ip/AddressUtils.java
similarity index 87%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/ip/AddressUtils.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ip/AddressUtils.java
index 8d3515e7f..15c3085c6 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/ip/AddressUtils.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/ip/AddressUtils.java
@@ -1,13 +1,13 @@
-package com.ruoyi.common.utils.ip;
+package com.ruoyi.common.core.utils.ip;
import cn.hutool.core.lang.Dict;
import cn.hutool.core.net.NetUtil;
import cn.hutool.http.HtmlUtil;
import cn.hutool.http.HttpUtil;
-import com.ruoyi.common.config.RuoYiConfig;
-import com.ruoyi.common.constant.Constants;
-import com.ruoyi.common.utils.JsonUtils;
-import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.core.config.RuoYiConfig;
+import com.ruoyi.common.core.constant.Constants;
+import com.ruoyi.common.core.utils.JsonUtils;
+import com.ruoyi.common.core.utils.StringUtils;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import lombok.extern.slf4j.Slf4j;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/reflect/ReflectUtils.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/reflect/ReflectUtils.java
similarity index 95%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/reflect/ReflectUtils.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/reflect/ReflectUtils.java
index 0e0d7e7f5..af0c56009 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/reflect/ReflectUtils.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/reflect/ReflectUtils.java
@@ -1,7 +1,7 @@
-package com.ruoyi.common.utils.reflect;
+package com.ruoyi.common.core.utils.reflect;
import cn.hutool.core.util.ReflectUtil;
-import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.core.utils.StringUtils;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/sql/SqlUtil.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/sql/SqlUtil.java
similarity index 91%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/sql/SqlUtil.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/sql/SqlUtil.java
index 789149615..4c878d3b0 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/sql/SqlUtil.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/utils/sql/SqlUtil.java
@@ -1,7 +1,7 @@
-package com.ruoyi.common.utils.sql;
+package com.ruoyi.common.core.utils.sql;
-import com.ruoyi.common.exception.UtilException;
-import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.core.exception.UtilException;
+import com.ruoyi.common.core.utils.StringUtils;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/validate/AddGroup.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/validate/AddGroup.java
similarity index 100%
rename from ruoyi-common/src/main/java/com/ruoyi/common/core/validate/AddGroup.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/validate/AddGroup.java
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/validate/EditGroup.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/validate/EditGroup.java
similarity index 100%
rename from ruoyi-common/src/main/java/com/ruoyi/common/core/validate/EditGroup.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/validate/EditGroup.java
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/validate/QueryGroup.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/validate/QueryGroup.java
similarity index 100%
rename from ruoyi-common/src/main/java/com/ruoyi/common/core/validate/QueryGroup.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/validate/QueryGroup.java
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/controller/BaseController.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/controller/BaseController.java
similarity index 96%
rename from ruoyi-common/src/main/java/com/ruoyi/common/core/controller/BaseController.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/controller/BaseController.java
index 1e0a5d524..7fe1375d4 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/controller/BaseController.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/controller/BaseController.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.core.controller;
+package com.ruoyi.common.core.web.controller;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.core.domain.model.LoginUser;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/domain/BaseEntity.java
similarity index 96%
rename from ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/domain/BaseEntity.java
index bd316079a..c0a3a0ffb 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/BaseEntity.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/domain/BaseEntity.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.core.domain;
+package com.ruoyi.common.core.web.domain;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/TreeEntity.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/domain/TreeEntity.java
similarity index 93%
rename from ruoyi-common/src/main/java/com/ruoyi/common/core/domain/TreeEntity.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/domain/TreeEntity.java
index c7bb9b4ff..fffb8f6cd 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/TreeEntity.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/web/domain/TreeEntity.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.core.domain;
+package com.ruoyi.common.core.web.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/xss/Xss.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/xss/Xss.java
similarity index 94%
rename from ruoyi-common/src/main/java/com/ruoyi/common/xss/Xss.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/xss/Xss.java
index 0a26d60a5..91349726a 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/xss/Xss.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/xss/Xss.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.xss;
+package com.ruoyi.common.core.xss;
import javax.validation.Constraint;
import javax.validation.Payload;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/xss/XssValidator.java b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/xss/XssValidator.java
similarity index 93%
rename from ruoyi-common/src/main/java/com/ruoyi/common/xss/XssValidator.java
rename to ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/xss/XssValidator.java
index 03102df66..b8601d63d 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/xss/XssValidator.java
+++ b/ruoyi-common/ruoyi-common-core/src/main/java/com/ruoyi/common/core/xss/XssValidator.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.xss;
+package com.ruoyi.common.core.xss;
import cn.hutool.core.util.ReUtil;
import cn.hutool.http.HtmlUtil;
diff --git a/ruoyi-common/ruoyi-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-common/ruoyi-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
new file mode 100644
index 000000000..df1b8d628
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-core/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -0,0 +1,5 @@
+com.ruoyi.common.core.utils.SpringUtils
+com.ruoyi.common.core.config.ApplicationConfig
+com.ruoyi.common.core.config.JacksonConfig
+com.ruoyi.common.core.config.ValidatorConfig
+com.ruoyi.common.core.config.AsyncConfig
diff --git a/ruoyi-common/ruoyi-common-datasource/pom.xml b/ruoyi-common/ruoyi-common-datasource/pom.xml
new file mode 100644
index 000000000..5c96efe4a
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-datasource/pom.xml
@@ -0,0 +1,52 @@
+
+
+ 4.0.0
+
+ com.ruoyi
+ ruoyi-common
+ 4.4.0
+
+
+ ruoyi-common-datasource
+
+
+ ruoyi-common-datasource 数据源服务
+
+
+
+
+ com.ruoyi
+ ruoyi-common-core
+
+
+
+ com.ruoyi
+ ruoyi-common-satoken
+
+
+
+
+ com.baomidou
+ dynamic-datasource-spring-boot-starter
+
+
+
+ com.baomidou
+ mybatis-plus-boot-starter
+
+
+
+ com.baomidou
+ mybatis-plus-extension
+
+
+
+
+ p6spy
+ p6spy
+
+
+
+
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/annotation/DataColumn.java b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/annotation/DataColumn.java
similarity index 89%
rename from ruoyi-common/src/main/java/com/ruoyi/common/annotation/DataColumn.java
rename to ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/annotation/DataColumn.java
index df416edc8..78a7854d9 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/annotation/DataColumn.java
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/annotation/DataColumn.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.annotation;
+package com.ruoyi.common.datasource.annotation;
import java.lang.annotation.*;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/annotation/DataPermission.java b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/annotation/DataPermission.java
similarity index 84%
rename from ruoyi-common/src/main/java/com/ruoyi/common/annotation/DataPermission.java
rename to ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/annotation/DataPermission.java
index 73d9c039c..7243a5fa7 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/annotation/DataPermission.java
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/annotation/DataPermission.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.annotation;
+package com.ruoyi.common.datasource.annotation;
import java.lang.annotation.*;
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/config/MybatisPlusConfig.java
similarity index 94%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java
rename to ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/config/MybatisPlusConfig.java
index ffd2c1553..2dc3cd77c 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/MybatisPlusConfig.java
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/config/MybatisPlusConfig.java
@@ -1,4 +1,4 @@
-package com.ruoyi.framework.config;
+package com.ruoyi.common.datasource.config;
import cn.hutool.core.net.NetUtil;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
@@ -7,8 +7,8 @@ import com.baomidou.mybatisplus.core.incrementer.IdentifierGenerator;
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
-import com.ruoyi.framework.handler.CreateAndUpdateMetaObjectHandler;
-import com.ruoyi.framework.interceptor.PlusDataPermissionInterceptor;
+import com.ruoyi.common.datasource.handler.CreateAndUpdateMetaObjectHandler;
+import com.ruoyi.common.datasource.interceptor.PlusDataPermissionInterceptor;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/mapper/BaseMapperPlus.java b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/core/mapper/BaseMapperPlus.java
similarity index 98%
rename from ruoyi-common/src/main/java/com/ruoyi/common/core/mapper/BaseMapperPlus.java
rename to ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/core/mapper/BaseMapperPlus.java
index 862887d16..2423438b2 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/mapper/BaseMapperPlus.java
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/core/mapper/BaseMapperPlus.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.core.mapper;
+package com.ruoyi.common.datasource.core.mapper;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
@@ -12,7 +12,7 @@ import com.baomidou.mybatisplus.core.metadata.TableInfoHelper;
import com.baomidou.mybatisplus.core.toolkit.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
-import com.ruoyi.common.utils.BeanCopyUtils;
+import com.ruoyi.common.core.utils.BeanCopyUtils;
import org.apache.ibatis.binding.MapperMethod;
import org.apache.ibatis.logging.Log;
import org.apache.ibatis.logging.LogFactory;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/PageQuery.java b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/core/page/PageQuery.java
similarity index 94%
rename from ruoyi-common/src/main/java/com/ruoyi/common/core/domain/PageQuery.java
rename to ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/core/page/PageQuery.java
index 60abde623..e40925740 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/domain/PageQuery.java
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/core/page/PageQuery.java
@@ -1,12 +1,12 @@
-package com.ruoyi.common.core.domain;
+package com.ruoyi.common.datasource.core.page;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.common.exception.ServiceException;
-import com.ruoyi.common.utils.StringUtils;
-import com.ruoyi.common.utils.sql.SqlUtil;
+import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.common.core.utils.sql.SqlUtil;
import lombok.Data;
import java.io.Serializable;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/core/page/TableDataInfo.java
similarity index 97%
rename from ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java
rename to ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/core/page/TableDataInfo.java
index 5f3f2d1ad..cbfa2eb53 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/TableDataInfo.java
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/core/page/TableDataInfo.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.core.page;
+package com.ruoyi.common.datasource.core.page;
import cn.hutool.http.HttpStatus;
import com.baomidou.mybatisplus.core.metadata.IPage;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/enums/DataBaseType.java b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/enums/DataBaseType.java
similarity index 89%
rename from ruoyi-common/src/main/java/com/ruoyi/common/enums/DataBaseType.java
rename to ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/enums/DataBaseType.java
index 5d0f05ad7..c1ba12dc6 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/enums/DataBaseType.java
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/enums/DataBaseType.java
@@ -1,6 +1,6 @@
-package com.ruoyi.common.enums;
+package com.ruoyi.common.datasource.enums;
-import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.core.utils.StringUtils;
import lombok.AllArgsConstructor;
import lombok.Getter;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/enums/DataScopeType.java b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/enums/DataScopeType.java
similarity index 88%
rename from ruoyi-common/src/main/java/com/ruoyi/common/enums/DataScopeType.java
rename to ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/enums/DataScopeType.java
index 64324652b..381e4ec44 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/enums/DataScopeType.java
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/enums/DataScopeType.java
@@ -1,6 +1,6 @@
-package com.ruoyi.common.enums;
+package com.ruoyi.common.datasource.enums;
-import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.core.utils.StringUtils;
import lombok.AllArgsConstructor;
import lombok.Getter;
@@ -10,7 +10,7 @@ import lombok.Getter;
* 语法支持 spel 模板表达式
*
* 内置数据 user 当前用户 内容参考 LoginUser
- * 如需扩展数据 可使用 {@link com.ruoyi.common.helper.DataPermissionHelper} 操作
+ * 如需扩展数据 可使用 {@link com.ruoyi.common.datasource.helper.DataPermissionHelper} 操作
* 内置服务 sdss 系统数据权限服务 内容参考 SysDataScopeService
* 如需扩展更多自定义服务 可以参考 sdss 自行编写
*
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/handler/CreateAndUpdateMetaObjectHandler.java b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/handler/CreateAndUpdateMetaObjectHandler.java
similarity index 90%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/handler/CreateAndUpdateMetaObjectHandler.java
rename to ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/handler/CreateAndUpdateMetaObjectHandler.java
index 6d7c977de..50cf5e6a2 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/handler/CreateAndUpdateMetaObjectHandler.java
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/handler/CreateAndUpdateMetaObjectHandler.java
@@ -1,13 +1,11 @@
-package com.ruoyi.framework.handler;
+package com.ruoyi.common.datasource.handler;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.http.HttpStatus;
import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
-import com.ruoyi.common.core.domain.BaseEntity;
-import com.ruoyi.common.core.domain.model.LoginUser;
-import com.ruoyi.common.exception.ServiceException;
-import com.ruoyi.common.helper.LoginHelper;
-import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.common.core.web.domain.BaseEntity;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.reflection.MetaObject;
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/handler/PlusDataPermissionHandler.java b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/handler/PlusDataPermissionHandler.java
similarity index 99%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/handler/PlusDataPermissionHandler.java
rename to ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/handler/PlusDataPermissionHandler.java
index 3825a0ba7..87325f5f3 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/handler/PlusDataPermissionHandler.java
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/handler/PlusDataPermissionHandler.java
@@ -1,4 +1,4 @@
-package com.ruoyi.framework.handler;
+package com.ruoyi.common.datasource.handler;
import cn.hutool.core.annotation.AnnotationUtil;
import cn.hutool.core.collection.CollUtil;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/helper/DataBaseHelper.java b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/helper/DataBaseHelper.java
similarity index 92%
rename from ruoyi-common/src/main/java/com/ruoyi/common/helper/DataBaseHelper.java
rename to ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/helper/DataBaseHelper.java
index 196035629..ee10be0e1 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/helper/DataBaseHelper.java
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/helper/DataBaseHelper.java
@@ -1,10 +1,10 @@
-package com.ruoyi.common.helper;
+package com.ruoyi.common.datasource.helper;
import cn.hutool.core.convert.Convert;
import com.baomidou.dynamic.datasource.DynamicRoutingDataSource;
-import com.ruoyi.common.enums.DataBaseType;
-import com.ruoyi.common.exception.ServiceException;
-import com.ruoyi.common.utils.spring.SpringUtils;
+import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.common.core.utils.SpringUtils;
+import com.ruoyi.common.datasource.enums.DataBaseType;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/helper/DataPermissionHelper.java b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/helper/DataPermissionHelper.java
similarity index 96%
rename from ruoyi-common/src/main/java/com/ruoyi/common/helper/DataPermissionHelper.java
rename to ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/helper/DataPermissionHelper.java
index 0e60485ad..77aec7ba4 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/helper/DataPermissionHelper.java
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/helper/DataPermissionHelper.java
@@ -1,4 +1,4 @@
-package com.ruoyi.common.helper;
+package com.ruoyi.common.datasource.helper;
import cn.dev33.satoken.context.SaHolder;
import cn.dev33.satoken.context.model.SaStorage;
diff --git a/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/helper/MybatisExceptionHandler.java b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/helper/MybatisExceptionHandler.java
new file mode 100644
index 000000000..192fd3f1b
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/helper/MybatisExceptionHandler.java
@@ -0,0 +1,46 @@
+package com.ruoyi.common.datasource.helper;
+
+import com.ruoyi.common.core.domain.R;
+import lombok.extern.slf4j.Slf4j;
+import org.mybatis.spring.MyBatisSystemException;
+import org.springframework.dao.DuplicateKeyException;
+import org.springframework.web.bind.annotation.ExceptionHandler;
+import org.springframework.web.bind.annotation.RestControllerAdvice;
+
+import javax.servlet.http.HttpServletRequest;
+
+/**
+ * Mybatis异常处理器
+ *
+ * @author Lion Li
+ */
+@Slf4j
+@RestControllerAdvice
+public class MybatisExceptionHandler {
+
+ /**
+ * 主键或UNIQUE索引,数据重复异常
+ */
+ @ExceptionHandler(DuplicateKeyException.class)
+ public R handleDuplicateKeyException(DuplicateKeyException e, HttpServletRequest request) {
+ String requestURI = request.getRequestURI();
+ log.error("请求地址'{}',数据库中已存在记录'{}'", requestURI, e.getMessage());
+ return R.fail("数据库中已存在该记录,请联系管理员确认");
+ }
+
+ /**
+ * Mybatis系统异常 通用处理
+ */
+ @ExceptionHandler(MyBatisSystemException.class)
+ public R handleCannotFindDataSourceException(MyBatisSystemException e, HttpServletRequest request) {
+ String requestURI = request.getRequestURI();
+ String message = e.getMessage();
+ if (message.contains("CannotFindDataSourceException")) {
+ log.error("请求地址'{}', 未找到数据源", requestURI);
+ return R.fail("未找到数据源,请联系管理员确认");
+ }
+ log.error("请求地址'{}', Mybatis系统异常", requestURI, e);
+ return R.fail(message);
+ }
+
+}
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/interceptor/PlusDataPermissionInterceptor.java b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/interceptor/PlusDataPermissionInterceptor.java
similarity index 97%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/interceptor/PlusDataPermissionInterceptor.java
rename to ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/interceptor/PlusDataPermissionInterceptor.java
index 508f42167..98e0eb3d2 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/interceptor/PlusDataPermissionInterceptor.java
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/java/com/ruoyi/common/datasource/interceptor/PlusDataPermissionInterceptor.java
@@ -1,10 +1,10 @@
-package com.ruoyi.framework.interceptor;
+package com.ruoyi.common.datasource.interceptor;
import com.baomidou.mybatisplus.core.plugins.InterceptorIgnoreHelper;
import com.baomidou.mybatisplus.core.toolkit.PluginUtils;
import com.baomidou.mybatisplus.extension.parser.JsqlParserSupport;
import com.baomidou.mybatisplus.extension.plugins.inner.InnerInterceptor;
-import com.ruoyi.framework.handler.PlusDataPermissionHandler;
+import com.ruoyi.common.datasource.handler.PlusDataPermissionHandler;
import net.sf.jsqlparser.expression.Expression;
import net.sf.jsqlparser.statement.delete.Delete;
import net.sf.jsqlparser.statement.select.PlainSelect;
diff --git a/ruoyi-common/ruoyi-common-datasource/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-common/ruoyi-common-datasource/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
new file mode 100644
index 000000000..6d28dfe57
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-datasource/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -0,0 +1 @@
+com.ruoyi.common.datasource.config.MybatisPlusConfig
diff --git a/ruoyi-common/ruoyi-common-dict/pom.xml b/ruoyi-common/ruoyi-common-dict/pom.xml
new file mode 100644
index 000000000..1fe622fcd
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-dict/pom.xml
@@ -0,0 +1,15 @@
+
+
+ 4.0.0
+
+ com.ruoyi
+ ruoyi-common
+ 4.4.0
+
+
+ ruoyi-common-dict
+
+
+
diff --git a/ruoyi-common/ruoyi-common-redis/pom.xml b/ruoyi-common/ruoyi-common-redis/pom.xml
new file mode 100644
index 000000000..139955594
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-redis/pom.xml
@@ -0,0 +1,37 @@
+
+
+ 4.0.0
+
+ com.ruoyi
+ ruoyi-common
+ 4.4.0
+
+
+ ruoyi-common-redis
+
+
+ ruoyi-common-redis缓存服务
+
+
+
+
+
+ com.ruoyi
+ ruoyi-common-core
+
+
+
+
+ org.redisson
+ redisson-spring-boot-starter
+
+
+
+ com.baomidou
+ lock4j-redisson-spring-boot-starter
+
+
+
+
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/RedisConfig.java b/ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/config/RedisConfig.java
similarity index 95%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/config/RedisConfig.java
rename to ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/config/RedisConfig.java
index 8016ab869..838dc573d 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/RedisConfig.java
+++ b/ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/config/RedisConfig.java
@@ -1,10 +1,10 @@
-package com.ruoyi.framework.config;
+package com.ruoyi.common.redis.config;
import cn.hutool.core.util.ObjectUtil;
import com.fasterxml.jackson.databind.ObjectMapper;
-import com.ruoyi.framework.config.properties.RedissonProperties;
-import com.ruoyi.framework.handler.KeyPrefixHandler;
-import com.ruoyi.framework.manager.PlusSpringCacheManager;
+import com.ruoyi.common.redis.config.properties.RedissonProperties;
+import com.ruoyi.common.redis.handler.KeyPrefixHandler;
+import com.ruoyi.common.redis.manager.PlusSpringCacheManager;
import lombok.extern.slf4j.Slf4j;
import org.redisson.codec.JsonJacksonCodec;
import org.redisson.spring.starter.RedissonAutoConfigurationCustomizer;
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/properties/RedissonProperties.java b/ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/config/properties/RedissonProperties.java
similarity index 98%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/config/properties/RedissonProperties.java
rename to ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/config/properties/RedissonProperties.java
index b0bf285f3..e03017f64 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/properties/RedissonProperties.java
+++ b/ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/config/properties/RedissonProperties.java
@@ -1,4 +1,4 @@
-package com.ruoyi.framework.config.properties;
+package com.ruoyi.common.redis.config.properties;
import lombok.Data;
import lombok.NoArgsConstructor;
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/handler/KeyPrefixHandler.java b/ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/handler/KeyPrefixHandler.java
similarity index 92%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/handler/KeyPrefixHandler.java
rename to ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/handler/KeyPrefixHandler.java
index 161c271b3..ff1dbba58 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/handler/KeyPrefixHandler.java
+++ b/ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/handler/KeyPrefixHandler.java
@@ -1,6 +1,6 @@
-package com.ruoyi.framework.handler;
+package com.ruoyi.common.redis.handler;
-import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.core.utils.StringUtils;
import org.redisson.api.NameMapper;
/**
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/manager/PlusSpringCacheManager.java b/ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/manager/PlusSpringCacheManager.java
similarity index 98%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/manager/PlusSpringCacheManager.java
rename to ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/manager/PlusSpringCacheManager.java
index d8bfce7c5..736f0da85 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/manager/PlusSpringCacheManager.java
+++ b/ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/manager/PlusSpringCacheManager.java
@@ -13,9 +13,9 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package com.ruoyi.framework.manager;
+package com.ruoyi.common.redis.manager;
-import com.ruoyi.common.utils.redis.RedisUtils;
+import com.ruoyi.common.redis.utils.RedisUtils;
import org.redisson.api.RMap;
import org.redisson.api.RMapCache;
import org.redisson.spring.cache.CacheConfig;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/CacheUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/utils/CacheUtils.java
similarity index 95%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/CacheUtils.java
rename to ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/utils/CacheUtils.java
index 9e0b09b07..e953d03a8 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/CacheUtils.java
+++ b/ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/utils/CacheUtils.java
@@ -1,6 +1,6 @@
-package com.ruoyi.common.utils.redis;
+package com.ruoyi.common.redis.utils;
-import com.ruoyi.common.utils.spring.SpringUtils;
+import com.ruoyi.common.core.utils.SpringUtils;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import org.redisson.api.RMap;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/QueueUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/utils/QueueUtils.java
similarity index 98%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/QueueUtils.java
rename to ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/utils/QueueUtils.java
index 7a4bce4b3..81e210524 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/QueueUtils.java
+++ b/ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/utils/QueueUtils.java
@@ -1,6 +1,6 @@
-package com.ruoyi.common.utils.redis;
+package com.ruoyi.common.redis.utils;
-import com.ruoyi.common.utils.spring.SpringUtils;
+import com.ruoyi.common.core.utils.SpringUtils;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import org.redisson.api.*;
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/RedisUtils.java b/ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/utils/RedisUtils.java
similarity index 99%
rename from ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/RedisUtils.java
rename to ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/utils/RedisUtils.java
index 162380890..b665160d8 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/redis/RedisUtils.java
+++ b/ruoyi-common/ruoyi-common-redis/src/main/java/com/ruoyi/common/redis/utils/RedisUtils.java
@@ -1,6 +1,6 @@
-package com.ruoyi.common.utils.redis;
+package com.ruoyi.common.redis.utils;
-import com.ruoyi.common.utils.spring.SpringUtils;
+import com.ruoyi.common.core.utils.SpringUtils;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import org.redisson.api.*;
diff --git a/ruoyi-common/ruoyi-common-redis/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-common/ruoyi-common-redis/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
new file mode 100644
index 000000000..fe5d8b91e
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-redis/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -0,0 +1 @@
+com.ruoyi.common.redis.config.RedisConfig
diff --git a/ruoyi-common/ruoyi-common-satoken/pom.xml b/ruoyi-common/ruoyi-common-satoken/pom.xml
new file mode 100644
index 000000000..14a1ef132
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-satoken/pom.xml
@@ -0,0 +1,38 @@
+
+
+ 4.0.0
+
+ com.ruoyi
+ ruoyi-common
+ 4.4.0
+
+
+ ruoyi-common-satoken
+
+
+
+ com.ruoyi
+ ruoyi-common-core
+
+
+
+
+ com.ruoyi
+ ruoyi-common-redis
+
+
+
+
+ cn.dev33
+ sa-token-spring-boot-starter
+
+
+
+ cn.dev33
+ sa-token-jwt
+
+
+
+
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SaTokenConfig.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/config/SaTokenConfig.java
similarity index 94%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/config/SaTokenConfig.java
rename to ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/config/SaTokenConfig.java
index 291228667..886606d1c 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/SaTokenConfig.java
+++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/config/SaTokenConfig.java
@@ -1,11 +1,11 @@
-package com.ruoyi.framework.config;
+package com.ruoyi.common.satoken.config;
import cn.dev33.satoken.interceptor.SaInterceptor;
import cn.dev33.satoken.jwt.StpLogicJwtForSimple;
import cn.dev33.satoken.router.SaRouter;
import cn.dev33.satoken.stp.StpLogic;
import cn.dev33.satoken.stp.StpUtil;
-import com.ruoyi.framework.config.properties.SecurityProperties;
+import com.ruoyi.common.satoken.config.properties.SecurityProperties;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Bean;
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/properties/SecurityProperties.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/config/properties/SecurityProperties.java
similarity index 87%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/config/properties/SecurityProperties.java
rename to ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/config/properties/SecurityProperties.java
index b37418181..a731abfec 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/properties/SecurityProperties.java
+++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/config/properties/SecurityProperties.java
@@ -1,4 +1,4 @@
-package com.ruoyi.framework.config.properties;
+package com.ruoyi.common.satoken.config.properties;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/satoken/dao/PlusSaTokenDao.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/core/dao/PlusSaTokenDao.java
similarity index 87%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/satoken/dao/PlusSaTokenDao.java
rename to ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/core/dao/PlusSaTokenDao.java
index 83c3d5455..52dd9036e 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/satoken/dao/PlusSaTokenDao.java
+++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/core/dao/PlusSaTokenDao.java
@@ -1,8 +1,8 @@
-package com.ruoyi.framework.satoken.dao;
+package com.ruoyi.common.satoken.core.dao;
import cn.dev33.satoken.dao.SaTokenDao;
import cn.dev33.satoken.util.SaFoxUtil;
-import com.ruoyi.common.utils.redis.RedisUtils;
+import com.ruoyi.common.redis.utils.RedisUtils;
import org.springframework.stereotype.Component;
import java.time.Duration;
@@ -31,11 +31,11 @@ public class PlusSaTokenDao implements SaTokenDao {
*/
@Override
public void set(String key, String value, long timeout) {
- if (timeout == 0 || timeout <= SaTokenDao.NOT_VALUE_EXPIRE) {
+ if (timeout == 0 || timeout <= NOT_VALUE_EXPIRE) {
return;
}
// 判断是否为永不过期
- if (timeout == SaTokenDao.NEVER_EXPIRE) {
+ if (timeout == NEVER_EXPIRE) {
RedisUtils.setCacheObject(key, value);
} else {
RedisUtils.setCacheObject(key, value, Duration.ofSeconds(timeout));
@@ -49,7 +49,7 @@ public class PlusSaTokenDao implements SaTokenDao {
public void update(String key, String value) {
long expire = getTimeout(key);
// -2 = 无此键
- if (expire == SaTokenDao.NOT_VALUE_EXPIRE) {
+ if (expire == NOT_VALUE_EXPIRE) {
return;
}
this.set(key, value, expire);
@@ -78,9 +78,9 @@ public class PlusSaTokenDao implements SaTokenDao {
@Override
public void updateTimeout(String key, long timeout) {
// 判断是否想要设置为永久
- if (timeout == SaTokenDao.NEVER_EXPIRE) {
+ if (timeout == NEVER_EXPIRE) {
long expire = getTimeout(key);
- if (expire == SaTokenDao.NEVER_EXPIRE) {
+ if (expire == NEVER_EXPIRE) {
// 如果其已经被设置为永久,则不作任何处理
} else {
// 如果尚未被设置为永久,那么再次set一次
@@ -105,11 +105,11 @@ public class PlusSaTokenDao implements SaTokenDao {
*/
@Override
public void setObject(String key, Object object, long timeout) {
- if (timeout == 0 || timeout <= SaTokenDao.NOT_VALUE_EXPIRE) {
+ if (timeout == 0 || timeout <= NOT_VALUE_EXPIRE) {
return;
}
// 判断是否为永不过期
- if (timeout == SaTokenDao.NEVER_EXPIRE) {
+ if (timeout == NEVER_EXPIRE) {
RedisUtils.setCacheObject(key, object);
} else {
RedisUtils.setCacheObject(key, object, Duration.ofSeconds(timeout));
@@ -123,7 +123,7 @@ public class PlusSaTokenDao implements SaTokenDao {
public void updateObject(String key, Object object) {
long expire = getObjectTimeout(key);
// -2 = 无此键
- if (expire == SaTokenDao.NOT_VALUE_EXPIRE) {
+ if (expire == NOT_VALUE_EXPIRE) {
return;
}
this.setObject(key, object, expire);
@@ -152,9 +152,9 @@ public class PlusSaTokenDao implements SaTokenDao {
@Override
public void updateObjectTimeout(String key, long timeout) {
// 判断是否想要设置为永久
- if (timeout == SaTokenDao.NEVER_EXPIRE) {
+ if (timeout == NEVER_EXPIRE) {
long expire = getObjectTimeout(key);
- if (expire == SaTokenDao.NEVER_EXPIRE) {
+ if (expire == NEVER_EXPIRE) {
// 如果其已经被设置为永久,则不作任何处理
} else {
// 如果尚未被设置为永久,那么再次set一次
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/satoken/service/SaPermissionImpl.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/core/service/SaPermissionImpl.java
similarity index 88%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/satoken/service/SaPermissionImpl.java
rename to ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/core/service/SaPermissionImpl.java
index 057d18336..bcf39f98d 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/satoken/service/SaPermissionImpl.java
+++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/core/service/SaPermissionImpl.java
@@ -1,9 +1,8 @@
-package com.ruoyi.framework.satoken.service;
+package com.ruoyi.common.satoken.core.service;
import cn.dev33.satoken.stp.StpInterface;
-import com.ruoyi.common.core.domain.model.LoginUser;
-import com.ruoyi.common.enums.UserType;
-import com.ruoyi.common.helper.LoginHelper;
+import com.ruoyi.common.core.enums.UserType;
+import com.ruoyi.common.satoken.utils.LoginHelper;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/exception/GlobalExceptionHandler.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/handler/GlobalExceptionHandler.java
similarity index 78%
rename from ruoyi-framework/src/main/java/com/ruoyi/framework/web/exception/GlobalExceptionHandler.java
rename to ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/handler/GlobalExceptionHandler.java
index 40f2d27c3..cbe742c09 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/exception/GlobalExceptionHandler.java
+++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/handler/GlobalExceptionHandler.java
@@ -1,4 +1,4 @@
-package com.ruoyi.framework.web.exception;
+package com.ruoyi.common.satoken.handler;
import cn.dev33.satoken.exception.NotLoginException;
import cn.dev33.satoken.exception.NotPermissionException;
@@ -6,13 +6,11 @@ import cn.dev33.satoken.exception.NotRoleException;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.http.HttpStatus;
import com.ruoyi.common.core.domain.R;
-import com.ruoyi.common.exception.DemoModeException;
-import com.ruoyi.common.exception.ServiceException;
-import com.ruoyi.common.utils.StreamUtils;
+import com.ruoyi.common.core.exception.DemoModeException;
+import com.ruoyi.common.core.exception.ServiceException;
+import com.ruoyi.common.core.utils.StreamUtils;
import lombok.extern.slf4j.Slf4j;
-import org.mybatis.spring.MyBatisSystemException;
import org.springframework.context.support.DefaultMessageSourceResolvable;
-import org.springframework.dao.DuplicateKeyException;
import org.springframework.validation.BindException;
import org.springframework.web.HttpRequestMethodNotSupportedException;
import org.springframework.web.bind.MethodArgumentNotValidException;
@@ -73,31 +71,6 @@ public class GlobalExceptionHandler {
return R.fail(e.getMessage());
}
- /**
- * 主键或UNIQUE索引,数据重复异常
- */
- @ExceptionHandler(DuplicateKeyException.class)
- public R handleDuplicateKeyException(DuplicateKeyException e, HttpServletRequest request) {
- String requestURI = request.getRequestURI();
- log.error("请求地址'{}',数据库中已存在记录'{}'", requestURI, e.getMessage());
- return R.fail("数据库中已存在该记录,请联系管理员确认");
- }
-
- /**
- * Mybatis系统异常 通用处理
- */
- @ExceptionHandler(MyBatisSystemException.class)
- public R handleCannotFindDataSourceException(MyBatisSystemException e, HttpServletRequest request) {
- String requestURI = request.getRequestURI();
- String message = e.getMessage();
- if (message.contains("CannotFindDataSourceException")) {
- log.error("请求地址'{}', 未找到数据源", requestURI);
- return R.fail("未找到数据源,请联系管理员确认");
- }
- log.error("请求地址'{}', Mybatis系统异常", requestURI, e);
- return R.fail(message);
- }
-
/**
* 业务异常
*/
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/helper/LoginHelper.java b/ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/utils/LoginHelper.java
similarity index 91%
rename from ruoyi-common/src/main/java/com/ruoyi/common/helper/LoginHelper.java
rename to ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/utils/LoginHelper.java
index 1cef0278b..57bfabf6c 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/helper/LoginHelper.java
+++ b/ruoyi-common/ruoyi-common-satoken/src/main/java/com/ruoyi/common/satoken/utils/LoginHelper.java
@@ -1,15 +1,14 @@
-package com.ruoyi.common.helper;
+package com.ruoyi.common.satoken.utils;
import cn.dev33.satoken.context.SaHolder;
import cn.dev33.satoken.stp.StpUtil;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.ObjectUtil;
-import com.ruoyi.common.constant.UserConstants;
-import com.ruoyi.common.core.domain.model.LoginUser;
-import com.ruoyi.common.enums.DeviceType;
-import com.ruoyi.common.enums.UserType;
-import com.ruoyi.common.exception.UtilException;
-import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.core.constant.UserConstants;
+import com.ruoyi.common.core.enums.DeviceType;
+import com.ruoyi.common.core.enums.UserType;
+import com.ruoyi.common.core.exception.UtilException;
+import com.ruoyi.common.core.utils.StringUtils;
import lombok.AccessLevel;
import lombok.NoArgsConstructor;
diff --git a/ruoyi-common/ruoyi-common-satoken/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/ruoyi-common/ruoyi-common-satoken/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
new file mode 100644
index 000000000..a84b06728
--- /dev/null
+++ b/ruoyi-common/ruoyi-common-satoken/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports
@@ -0,0 +1,3 @@
+com.ruoyi.common.satoken.core.dao.PlusSaTokenDao
+com.ruoyi.common.satoken.core.service.SaPermissionImpl
+com.ruoyi.common.satoken.config.SaTokenConfig