Эх сурвалжийг харах

+ 微服务版本代码整合

chen.cheng 6 сар өмнө
parent
commit
19f40f2086

+ 2 - 1
bd-park/park-backend/park-application/pom.xml

@@ -46,6 +46,7 @@
         <dependency>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
+            <version>8.0.33</version>
         </dependency>
 
         <!-- 核心模块-->
@@ -94,7 +95,7 @@
             <plugin>
                 <groupId>org.springframework.boot</groupId>
                 <artifactId>spring-boot-maven-plugin</artifactId>
-                <version>2.5.15</version>
+                <version>${spring-boot.version}</version>
                 <configuration>
                     <fork>true</fork> <!-- 如果没有该配置,devtools不会生效 -->
                 </configuration>

+ 126 - 0
bd-park/park-backend/park-cloud/pom.xml

@@ -0,0 +1,126 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>com.huashe.park</groupId>
+        <artifactId>bd-park</artifactId>
+        <version>1.0-SNAPSHOT</version>
+    </parent>
+
+    <artifactId>park-cloud</artifactId>
+    <version>${park.version}</version>
+    <dependencies>
+        <dependency>
+            <groupId>com.alibaba.cloud</groupId>
+            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
+        </dependency>
+
+        <!-- SpringCloud Alibaba Nacos Config -->
+        <dependency>
+            <groupId>com.alibaba.cloud</groupId>
+            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.alibaba.nacos</groupId>
+            <artifactId>nacos-common</artifactId>
+            <version>2.2.0</version>
+            <scope>compile</scope>
+            <optional>true</optional>
+        </dependency>
+
+        <!-- SpringCloud Alibaba Sentinel -->
+        <dependency>
+            <groupId>com.alibaba.cloud</groupId>
+            <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
+        </dependency>
+
+        <!-- SpringBoot Actuator -->
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-actuator</artifactId>
+        </dependency>
+
+        <!-- Swagger UI -->
+        <dependency>
+            <groupId>io.springfox</groupId>
+            <artifactId>springfox-swagger-ui</artifactId>
+            <version>${swagger.fox.version}</version>
+        </dependency>
+
+        <!-- Mysql Connector -->
+        <dependency>
+            <groupId>com.mysql</groupId>
+            <artifactId>mysql-connector-j</artifactId>
+            <version>8.0.33</version>
+        </dependency>
+        <dependency>
+            <groupId>com.huashe.cloud</groupId>
+            <artifactId>ruoyi-api-system</artifactId>
+        </dependency>
+
+        <!-- RuoYi Common DataSource -->
+        <dependency>
+            <groupId>com.huashe.cloud</groupId>
+            <artifactId>ruoyi-common-datasource</artifactId>
+        </dependency>
+
+
+        <!-- RuoYi Common DataScope -->
+        <dependency>
+            <groupId>com.huashe.cloud</groupId>
+            <artifactId>ruoyi-common-datascope</artifactId>
+        </dependency>
+
+        <!-- RuoYi Common Log -->
+        <dependency>
+            <groupId>com.huashe.cloud</groupId>
+            <artifactId>ruoyi-common-log</artifactId>
+        </dependency>
+
+        <!-- RuoYi Common Swagger -->
+        <dependency>
+            <groupId>com.huashe.cloud</groupId>
+            <artifactId>ruoyi-common-swagger</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.huashe.cloud</groupId>
+            <artifactId>ruoyi-common-core</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.huashe.park</groupId>
+            <artifactId>park-core</artifactId>
+        </dependency>
+    </dependencies>
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <version>3.8.0</version>
+                <configuration>
+                    <source>${java.version}</source>
+                    <target>${java.version}</target>
+                    <encoding>${project.build.sourceEncoding}</encoding>
+                </configuration>
+            </plugin>
+        </plugins>
+        <pluginManagement>
+            <plugins>
+                <plugin>
+                    <groupId>org.springframework.boot</groupId>
+                    <artifactId>spring-boot-maven-plugin</artifactId>
+                    <version>${spring-boot.version}</version>
+                    <executions>
+                        <execution>
+                            <goals>
+                                <goal>repackage</goal>
+                            </goals>
+                        </execution>
+                    </executions>
+                </plugin>
+            </plugins>
+        </pluginManagement>
+    </build>
+</project>

+ 36 - 0
bd-park/park-backend/park-cloud/src/main/java/com/huashe/park/cloud/EmsApplication.java

@@ -0,0 +1,36 @@
+package com.huashe.park.cloud;
+
+import com.dtflys.forest.springboot.annotation.ForestScan;
+import com.ruoyi.common.security.annotation.EnableCustomConfig;
+import com.ruoyi.common.security.annotation.EnableRyFeignClients;
+import com.ruoyi.common.swagger.annotation.EnableCustomSwagger2;
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+/**
+ * 能源管理模块
+ *
+ * @author ruoyi
+ */
+@EnableCustomConfig
+@EnableCustomSwagger2
+@EnableRyFeignClients
+@SpringBootApplication(scanBasePackages = {
+        "com.huashe.park","com.ruoyi"
+})
+@MapperScan("com.huashe.park.core.mapper")
+@ForestScan(basePackages = {"com.huashe.park.infrastructure.uwb"})
+public class EmsApplication {
+    public static void main(String[] args) {
+        // System.setProperty(GrpcConstants.NACOS_SERVER_GRPC_PORT_OFFSET_KEY,"1");
+        SpringApplication.run(EmsApplication.class, args);
+        System.out.println("(♥◠‿◠)ノ゙  安防启动成功   ლ(´ڡ`ლ)゙  \n"
+                + "  _    _                   _          \n"
+                + " | |  | |                 | |         \n"
+                + " | |__| |_   _  __ _   ___| |__   ___ \n"
+                + " |  __  | | | |/ _` | / __| '_ \\ / _ \\\n"
+                + " | |  | | |_| | (_| | \\__ \\ | | |  __/\n"
+                + " |_|  |_|\\__,_|\\__,_| |___/_| |_|\\___|\n");
+    }
+}

+ 58 - 0
bd-park/park-backend/park-cloud/src/main/resources/application-demo.yml

@@ -0,0 +1,58 @@
+# spring配置
+spring:
+  mvc:
+    pathmatch:
+      matching-strategy: ant_path_matcher
+  redis:
+    host: 172.10.0.18
+    port: 6379
+    password:
+  datasource:
+    druid:
+      stat-view-servlet:
+        enabled: true
+        loginUsername: admin
+        loginPassword: 123456
+    dynamic:
+      druid:
+        initial-size: 5
+        min-idle: 5
+        maxActive: 20
+        maxWait: 60000
+        timeBetweenEvictionRunsMillis: 60000
+        minEvictableIdleTimeMillis: 300000
+        validationQuery: SELECT 1 FROM DUAL
+        testWhileIdle: true
+        testOnBorrow: false
+        testOnReturn: false
+        poolPreparedStatements: true
+        maxPoolPreparedStatementPerConnectionSize: 20
+        filters: stat,slf4j
+        connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
+      datasource:
+        # 主库数据源
+        master:
+          driver-class-name: com.mysql.cj.jdbc.Driver
+          url: jdbc:mysql://172.10.0.10:3306/ems?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+          username: root
+          password: abc123
+          # 从库数据源
+          # slave:
+          # username:
+          # password:
+          # url:
+          # driver-class-name:
+
+# mybatis配置
+mybatis:
+  # 搜索指定包别名
+  typeAliasesPackage: com.ruoyi.ems.**.domain,com.ruoyi.quartz.**.domain,com.huashe.**.domain
+  # 配置mapper的扫描,找到所有的mapper.xml映射文件
+  mapperLocations: classpath*:mapper/**/*.xml
+  type-handlers-package: com.huashe.**.typehandle
+  configuration:
+    map-underscore-to-camel-case: true
+# swagger配置
+swagger:
+  title: 能源模块接口文档
+  enabled: true

+ 81 - 0
bd-park/park-backend/park-cloud/src/main/resources/application-local.yml

@@ -0,0 +1,81 @@
+# spring配置
+spring:
+  mvc:
+    pathmatch:
+      matching-strategy: ant_path_matcher
+  redis:
+    host: 172.192.10.105
+    port: 30013
+    password:
+  datasource:
+    druid:
+      stat-view-servlet:
+        enabled: true
+        loginUsername: admin
+        loginPassword: 123456
+    dynamic:
+      druid:
+        initial-size: 5
+        min-idle: 5
+        maxActive: 20
+        maxWait: 60000
+        timeBetweenEvictionRunsMillis: 60000
+        minEvictableIdleTimeMillis: 300000
+        validationQuery: SELECT 1 FROM DUAL
+        testWhileIdle: true
+        testOnBorrow: false
+        testOnReturn: false
+        poolPreparedStatements: true
+        maxPoolPreparedStatementPerConnectionSize: 20
+        filters: stat,slf4j
+        connectionProperties: druid.stat.mergeSql\=true;druid.stat.slowSqlMillis\=5000
+      datasource:
+        # 主库数据源
+        master:
+          driver-class-name: com.mysql.cj.jdbc.Driver
+          url: jdbc:mysql://172.192.10.105:30002/ems_db?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+          username: root
+          password: root
+          # 从库数据源
+          # slave:
+          # username:
+          # password:
+          # url:
+          # driver-class-name:
+
+# mybatis配置
+mybatis:
+  # 搜索指定包别名
+  typeAliasesPackage: com.ruoyi.ems.**.domain,com.ruoyi.quartz.**.domain,com.huashe.**.domain
+  # 配置mapper的扫描,找到所有的mapper.xml映射文件
+  mapperLocations: classpath*:mapper/**/*.xml
+  type-handlers-package: com.huashe.**.typehandle
+  configuration:
+    map-underscore-to-camel-case: true
+
+forest:
+  max-connections: 1000        # 连接池最大连接数
+  connect-timeout: 3000        # 连接超时时间,单位为毫秒
+  read-timeout: 3000           # 数据读取超时时间,单位为毫秒
+  backend: okhttp3 # 配置后端HTTP API为 okhttp3
+  ## 日志总开关,打开/关闭Forest请求/响应日志(默认为 true)
+  log-enabled: true
+  ## 打开/关闭Forest请求日志(默认为 true)
+  log-request: true
+  ## 打开/关闭Forest响应状态日志(默认为 true)
+  log-response-status: true
+  ## 打开/关闭Forest响应内容日志(默认为 false)
+  log-response-content: true
+  custom:
+    # 自定义配置
+    holiday: https://fastly.jsdelivr.net
+    uwb:
+      enabled: true
+      uwb-socket: ws://172.192.13.77:2223/socket/websocket/pollingArea
+      uwb-usr: admin
+      uwb-pwd: admin123
+      uwb-host: http://172.192.13.80:2223
+# swagger配置
+swagger:
+  title: 能源模块接口文档
+  enabled: true

+ 11 - 0
bd-park/park-backend/park-cloud/src/main/resources/banner.txt

@@ -0,0 +1,11 @@
+Spring Boot Version: ${spring-boot.version}
+Spring Application Name: ${spring.application.name}
+
+ ______   ______          _______  _______  _______  _
+(  ___ \ (  __  \        (  ____ )(  ___  )(  ____ )| \    /\
+| (   ) )| (  \  )       | (    )|| (   ) || (    )||  \  / /
+| (__/ / | |   ) | _____ | (____)|| (___) || (____)||  (_/ /
+|  __ (  | |   | |(_____)|  _____)|  ___  ||     __)|   _ (
+| (  \ \ | |   ) |       | (      | (   ) || (\ (   |  ( \ \
+| )___) )| (__/  )       | )      | )   ( || ) \ \__|  /  \ \
+|/ \___/ (______/        |/       |/     \||/   \__/|_/    \/

+ 35 - 0
bd-park/park-backend/park-cloud/src/main/resources/bootstrap.yml

@@ -0,0 +1,35 @@
+# Tomcat
+server:
+  port: 9202
+  servlet:
+    context-path: /pkb
+# Spring
+spring:
+  application:
+    # 应用名称
+    name: pkb-server
+  profiles:
+    # 环境配置
+    active: local
+  cloud:
+    nacos:
+      discovery:
+        # 服务注册地址
+        server-addr: 172.192.10.105:30003
+        group: pkb
+        #server-addr: 172.10.0.71:8848
+        #group: public
+      config:
+        # 配置中心地址
+        server-addr: 172.192.10.105:30003
+        group: pkb
+        #server-addr: 172.10.0.71:8848
+        #group: public
+        # 配置文件格式
+        file-extension: yml
+        # 共享配置
+        shared-configs:
+          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
+logging:
+  level:
+    com.ruoyi.ems: debug

+ 74 - 0
bd-park/park-backend/park-cloud/src/main/resources/logback.xml

@@ -0,0 +1,74 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration scan="true" scanPeriod="60 seconds" debug="false">
+    <!-- 日志存放路径 -->
+	<property name="log.path" value="logs/ems-server" />
+   <!-- 日志输出格式 -->
+	<property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" />
+
+    <!-- 控制台输出 -->
+	<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
+		<encoder>
+			<pattern>${log.pattern}</pattern>
+		</encoder>
+	</appender>
+
+    <!-- 系统日志输出 -->
+	<appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
+	    <file>${log.path}/info.log</file>
+        <!-- 循环政策:基于时间创建日志文件 -->
+		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <!-- 日志文件名格式 -->
+			<fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern>
+			<!-- 日志最大的历史 60天 -->
+			<maxHistory>60</maxHistory>
+		</rollingPolicy>
+		<encoder>
+			<pattern>${log.pattern}</pattern>
+		</encoder>
+		<filter class="ch.qos.logback.classic.filter.LevelFilter">
+            <!-- 过滤的级别 -->
+            <level>INFO</level>
+            <!-- 匹配时的操作:接收(记录) -->
+            <onMatch>ACCEPT</onMatch>
+            <!-- 不匹配时的操作:拒绝(不记录) -->
+            <onMismatch>DENY</onMismatch>
+        </filter>
+	</appender>
+
+    <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
+	    <file>${log.path}/error.log</file>
+        <!-- 循环政策:基于时间创建日志文件 -->
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <!-- 日志文件名格式 -->
+            <fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern>
+			<!-- 日志最大的历史 60天 -->
+			<maxHistory>60</maxHistory>
+        </rollingPolicy>
+        <encoder>
+            <pattern>${log.pattern}</pattern>
+        </encoder>
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
+            <!-- 过滤的级别 -->
+            <level>ERROR</level>
+			<!-- 匹配时的操作:接收(记录) -->
+            <onMatch>ACCEPT</onMatch>
+			<!-- 不匹配时的操作:拒绝(不记录) -->
+            <onMismatch>DENY</onMismatch>
+        </filter>
+    </appender>
+
+    <!-- 系统模块日志级别控制  -->
+	<logger name="com.ruoyi" level="info" />
+	<!-- Spring日志级别控制  -->
+	<logger name="org.springframework" level="warn" />
+
+	<root level="info">
+		<appender-ref ref="console" />
+	</root>
+
+	<!--系统操作日志-->
+    <root level="INFO">
+        <appender-ref ref="file_info" />
+        <appender-ref ref="file_error" />
+    </root>
+</configuration>

+ 4 - 8
bd-park/park-backend/park-core/pom.xml

@@ -10,7 +10,7 @@
     <modelVersion>4.0.0</modelVersion>
 
     <artifactId>park-core</artifactId>
-    <version>1.0-SNAPSHOT</version>
+    <version>${park.version}</version>
 
     <description>
         park-core核心模块
@@ -50,25 +50,21 @@
         <dependency>
             <groupId>com.huashe.common</groupId>
             <artifactId>prod-commons</artifactId>
-            <version>${prod-commons.version}</version>
         </dependency>
         <dependency>
             <groupId>com.huashe.park</groupId>
             <artifactId>park-common</artifactId>
-            <version>1.0-SNAPSHOT</version>
-            <scope>compile</scope>
+            <version>${park.version}</version>
         </dependency>
         <dependency>
             <groupId>com.huashe.park</groupId>
             <artifactId>park-domain</artifactId>
-            <version>1.0-SNAPSHOT</version>
-            <scope>compile</scope>
+            <version>${park.version}</version>
         </dependency>
         <dependency>
             <groupId>com.huashe.park</groupId>
             <artifactId>park-infrastructure</artifactId>
-            <version>1.0-SNAPSHOT</version>
-            <scope>compile</scope>
+            <version>${park.version}</version>
         </dependency>
     </dependencies>
     <build>

+ 4 - 0
bd-park/park-backend/park-core/src/main/java/com/huashe/park/core/typehandle/MySqlJsonHandler.java

@@ -2,9 +2,12 @@ package com.huashe.park.core.typehandle;
 
 
 import com.alibaba.fastjson2.JSON;
+import com.alibaba.fastjson2.JSONArray;
+import com.alibaba.fastjson2.JSONObject;
 import com.alibaba.fastjson2.JSONWriter;
 import org.apache.ibatis.type.BaseTypeHandler;
 import org.apache.ibatis.type.JdbcType;
+import org.apache.ibatis.type.MappedTypes;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -18,6 +21,7 @@ import java.sql.SQLException;
  * @describe:mysqlJson类型处理类
  * @date 2024/9/18
  */
+@MappedTypes(JSONObject.class)
 public class MySqlJsonHandler<T extends Object> extends BaseTypeHandler<T> {
     private final static Logger log = LoggerFactory.getLogger(MySqlJsonHandler.class);
     private Class<T> clazz;

+ 107 - 3
bd-park/park-backend/pom.xml

@@ -15,6 +15,7 @@
         <module>park-common</module>
         <module>park-infrastructure</module>
         <module>park-domain</module>
+        <module>park-cloud</module>
     </modules>
 
     <description>
@@ -22,9 +23,11 @@
     </description>
     <properties>
         <ruoyi.version>3.8.8</ruoyi.version>
+        <ruoyi.cloud.version>3.6.4</ruoyi.cloud.version>
         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
         <java.version>1.8</java.version>
+        <spring-boot.version>2.7.18</spring-boot.version>
         <maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
         <spring-framework.version>5.3.33</spring-framework.version>
         <spring-security.version>5.7.12</spring-security.version>
@@ -43,11 +46,14 @@
         <cffu.version>1.0.0-Alpha19</cffu.version>
         <jts.version>1.18.2</jts.version>
         <mqttstarter.version>2.3.7</mqttstarter.version>
+        <spring-cloud-alibaba.version>2021.0.5.0</spring-cloud-alibaba.version>
         <math.version>3.6.1</math.version>
         <park.version>1.0-SNAPSHOT</park.version>
         <java.ws.version>1.5.2</java.ws.version>
         <hutool.version>5.8.26</hutool.version>
+        <swagger.fox.version>3.0.0</swagger.fox.version>
         <prod-commons.version>1.0-SNAPSHOT</prod-commons.version>
+        <transmittable-thread-local.version>2.14.4</transmittable-thread-local.version>
     </properties>
 
     <!-- 依赖声明 -->
@@ -76,11 +82,18 @@
             <dependency>
                 <groupId>org.springframework.boot</groupId>
                 <artifactId>spring-boot-dependencies</artifactId>
-                <version>2.5.15</version>
+                <version>${spring-boot.version}</version>
+                <type>pom</type>
+                <scope>import</scope>
+            </dependency>
+            <!-- SpringCloud Alibaba 微服务 -->
+            <dependency>
+                <groupId>com.alibaba.cloud</groupId>
+                <artifactId>spring-cloud-alibaba-dependencies</artifactId>
+                <version>${spring-cloud-alibaba.version}</version>
                 <type>pom</type>
                 <scope>import</scope>
             </dependency>
-
             <!-- 阿里数据库连接池 -->
             <dependency>
                 <groupId>com.alibaba</groupId>
@@ -170,7 +183,12 @@
                 <artifactId>ruoyi-quartz</artifactId>
                 <version>${ruoyi.version}</version>
             </dependency>
-
+            <!-- 线程传递值 -->
+            <dependency>
+                <groupId>com.alibaba</groupId>
+                <artifactId>transmittable-thread-local</artifactId>
+                <version>${transmittable-thread-local.version}</version>
+            </dependency>
             <!-- 代码生成-->
             <dependency>
                 <groupId>com.huashe.application</groupId>
@@ -230,6 +248,11 @@
                 <version>${park.version}</version>
             </dependency>
             <dependency>
+                <groupId>com.huashe.park</groupId>
+                <artifactId>park-core</artifactId>
+                <version>${park.version}</version>
+            </dependency>
+            <dependency>
                 <groupId>cn.hutool</groupId>
                 <artifactId>hutool-bom</artifactId>
                 <version>${hutool.version}</version>
@@ -238,10 +261,91 @@
                 <scope>import</scope>
             </dependency>
             <dependency>
+                <groupId>com.huashe.common</groupId>
+                <artifactId>prod-commons</artifactId>
+                <version>${prod-commons.version}</version>
+            </dependency>
+            <dependency>
                 <groupId>org.java-websocket</groupId>
                 <artifactId>Java-WebSocket</artifactId>
                 <version>${java.ws.version}</version>
             </dependency>
+            <!-- cloud-->
+            <!-- 核心模块 -->
+            <dependency>
+                <groupId>com.huashe.cloud</groupId>
+                <artifactId>ruoyi-common-core</artifactId>
+                <version>${ruoyi.cloud.version}</version>
+            </dependency>
+
+            <!-- 接口模块 -->
+            <dependency>
+                <groupId>com.huashe.cloud</groupId>
+                <artifactId>ruoyi-common-swagger</artifactId>
+                <version>${ruoyi.cloud.version}</version>
+            </dependency>
+
+            <!-- 安全模块 -->
+            <dependency>
+                <groupId>com.huashe.cloud</groupId>
+                <artifactId>ruoyi-common-security</artifactId>
+                <version>${ruoyi.cloud.version}</version>
+            </dependency>
+
+            <!-- 数据脱敏 -->
+            <dependency>
+                <groupId>com.huashe.cloud</groupId>
+                <artifactId>ruoyi-common-sensitive</artifactId>
+                <version>${ruoyi.cloud.version}</version>
+            </dependency>
+
+            <!-- 权限范围 -->
+            <dependency>
+                <groupId>com.huashe.cloud</groupId>
+                <artifactId>ruoyi-common-datascope</artifactId>
+                <version>${ruoyi.cloud.version}</version>
+            </dependency>
+
+            <!-- 多数据源 -->
+            <dependency>
+                <groupId>com.huashe.cloud</groupId>
+                <artifactId>ruoyi-common-datasource</artifactId>
+                <version>${ruoyi.cloud.version}</version>
+            </dependency>
+
+            <!-- 分布式事务 -->
+            <dependency>
+                <groupId>com.huashe.cloud</groupId>
+                <artifactId>ruoyi-common-seata</artifactId>
+                <version>${ruoyi.cloud.version}</version>
+            </dependency>
+
+            <!-- 日志记录 -->
+            <dependency>
+                <groupId>com.huashe.cloud</groupId>
+                <artifactId>ruoyi-common-log</artifactId>
+                <version>${ruoyi.cloud.version}</version>
+            </dependency>
+
+            <!-- 缓存服务 -->
+            <dependency>
+                <groupId>com.huashe.cloud</groupId>
+                <artifactId>ruoyi-common-redis</artifactId>
+                <version>${ruoyi.cloud.version}</version>
+            </dependency>
+
+            <!-- 系统接口 -->
+            <dependency>
+                <groupId>com.huashe.cloud</groupId>
+                <artifactId>ruoyi-api-system</artifactId>
+                <version>${ruoyi.cloud.version}</version>
+            </dependency>
+            <!-- 分布式事务 -->
+            <dependency>
+                <groupId>com.huashe.cloud</groupId>
+                <artifactId>ruoyi-common-quartz</artifactId>
+                <version>${ruoyi.cloud.version}</version>
+            </dependency>
         </dependencies>
     </dependencyManagement>
     <repositories>