فهرست منبع

Merge branch 'master' of http://39.98.38.2:13000/dumingliang/sh-model-platform

nanjingliujinyu 3 ماه پیش
والد
کامیت
01be1714c6

+ 7 - 0
ruoyi-admin/pom.xml

@@ -37,6 +37,13 @@
             <version>1.6.2</version>
         </dependency>
 
+        <!-- DM8驱动包 -->
+        <dependency>
+            <groupId>com.dameng</groupId>
+            <artifactId>DmJdbcDriver18</artifactId>
+            <version>8.1.1.193</version>
+        </dependency>
+
         <!-- Mysql驱动包 -->
         <dependency>
             <groupId>mysql</groupId>

+ 100 - 0
ruoyi-admin/src/main/resources/application-dm.yml

@@ -0,0 +1,100 @@
+# 数据源配置
+spring:
+  datasource:
+    type: com.alibaba.druid.pool.DruidDataSource
+    #driverClassName: com.mysql.cj.jdbc.Driver
+    driverClassName: dm.jdbc.driver.DmDriver
+    druid:
+      # 主库数据源
+      master:
+        #url: jdbc:mysql://192.168.0.146:3306/sh_project?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+        #url: jdbc:mysql://39.98.38.2:13306/sh_project?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+        url: jdbc:dm://192.168.0.145:30236?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8&schema=SH_PROJECT
+        username: SH_PROJECT
+        password: ShProject@js123
+      # 从库数据源
+      slave:
+        # 从数据源开关/默认关闭
+        enabled: true
+        #url: jdbc:mysql://192.168.0.146:3306/sh_project?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+        url: jdbc:dm://192.168.0.145:30236?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8&schema=SH_MODEL
+        #url: jdbc:mysql://39.98.38.2:13306/sh_model?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+        username: SH_MODEL
+        password: ShModel@js123
+      job:
+        # 从数据源开关/默认关闭
+        enabled: true
+        #url: jdbc:mysql://192.168.0.146:3306/sh_project?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+        url: jdbc:dm://192.168.0.145:30236?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8&schema=SNAIL_JOB
+        #url: jdbc:mysql://39.98.38.2:13306/sh_model?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+        username: SNAIL_JOB
+        password: SnailJob@js123
+      # 初始连接数
+      initialSize: 5
+      # 最小连接池数量
+      minIdle: 10
+      # 最大连接池数量
+      maxActive: 20
+      # 配置获取连接等待超时的时间
+      maxWait: 60000
+      # 配置连接超时时间
+      connectTimeout: 30000
+      # 配置网络超时时间
+      socketTimeout: 60000
+      # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
+      timeBetweenEvictionRunsMillis: 60000
+      # 配置一个连接在池中最小生存的时间,单位是毫秒
+      minEvictableIdleTimeMillis: 300000
+      # 配置一个连接在池中最大生存的时间,单位是毫秒
+      maxEvictableIdleTimeMillis: 900000
+      # 配置检测连接是否有效
+      validationQuery: SELECT 1 FROM DUAL
+      testWhileIdle: true
+      testOnBorrow: false
+      testOnReturn: false
+      webStatFilter:
+        enabled: true
+      statViewServlet:
+        enabled: true
+        # 设置白名单,不填则允许所有访问
+        allow:
+        url-pattern: /druid/*
+        # 控制台管理用户名和密码
+        login-username: ruoyi
+        login-password: 123456
+      filter:
+        stat:
+          enabled: true
+          # 慢SQL记录
+          log-slow-sql: true
+          slow-sql-millis: 1000
+          merge-sql: true
+        wall:
+          config:
+            multi-statement-allow: true
+  # redis 配置
+  redis:
+    # 地址
+    #host: 192.168.0.146
+    host: 39.98.38.2
+    # 端口,默认为6379
+    port: 16379
+    # 数据库索引
+    database: 6
+    # 密码
+    password: 123456
+    # 连接超时时间
+    timeout: 20s
+    lettuce:
+      pool:
+        # 连接池中的最小空闲连接
+        min-idle: 0
+        # 连接池中的最大空闲连接
+        max-idle: 8
+        # 连接池的最大数据库连接数
+        max-active: 8
+        # #连接池最大阻塞等待时间(使用负值表示没有限制)
+        max-wait: -1ms
+
+docker:
+  host: tcp://localhost:2375

+ 14 - 10
ruoyi-admin/src/main/resources/application-test.yml

@@ -2,29 +2,33 @@
 spring:
   datasource:
     type: com.alibaba.druid.pool.DruidDataSource
-    driverClassName: com.mysql.cj.jdbc.Driver
+    #driverClassName: com.mysql.cj.jdbc.Driver
+    driverClassName: dm.jdbc.driver.DmDriver
     druid:
       # 主库数据源
       master:
         #url: jdbc:mysql://192.168.0.146:3306/sh_project?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-        url: jdbc:mysql://39.98.38.2:13306/sh_project?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-        username: shmodel
-        password: shmodel#$0526
+        #url: jdbc:mysql://39.98.38.2:13306/sh_project?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+        url: jdbc:dm://39.98.38.2:30236?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8&schema=SH_PROJECT
+        username: SH_PROJECT
+        password: ShProject@js123
       # 从库数据源
       slave:
         # 从数据源开关/默认关闭
         enabled: true
         #url: jdbc:mysql://192.168.0.146:3306/sh_project?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-        url: jdbc:mysql://39.98.38.2:13306/sh_model?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-        username: shmodel
-        password: shmodel#$0526
+        url: jdbc:dm://39.98.38.2:30236?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8&schema=SH_MODEL
+        #url: jdbc:mysql://39.98.38.2:13306/sh_model?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+        username: SH_MODEL
+        password: ShModel@js123
       job:
         # 从数据源开关/默认关闭
         enabled: true
         #url: jdbc:mysql://192.168.0.146:3306/sh_project?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-        url: jdbc:mysql://39.98.38.2:13306/snail_job?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
-        username: shmodel
-        password: shmodel#$0526
+        url: jdbc:dm://39.98.38.2:30236?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8&schema=SNAIL_JOB
+        #url: jdbc:mysql://39.98.38.2:13306/sh_model?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
+        username: SNAIL_JOB
+        password: SnailJob@js123
       # 初始连接数
       initialSize: 5
       # 最小连接池数量

+ 2 - 1
ruoyi-admin/src/main/resources/application.yml

@@ -99,7 +99,8 @@ mybatis-plus:
 
 # PageHelper分页插件
 pagehelper:
-  helperDialect: mysql
+  #helperDialect: mysql
+  helperDialect: oracle
   supportMethodsArguments: true
   params: count=countSql
 

+ 34 - 19
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/database/DynamicDataSourceManager.java

@@ -21,9 +21,9 @@ public class DynamicDataSourceManager {
     // 使用线程安全的ConcurrentHashMap存储数据源
     private final Map<String, DruidDataSource> dataSourceMap = new ConcurrentHashMap<>();
 
-    public HashMap<String,String> className = new HashMap<String,String>(){
+    public HashMap<String, String> className = new HashMap<String, String>() {
         {
-            put("mysql","com.mysql.cj.jdbc.Driver");
+            put("mysql", "com.mysql.cj.jdbc.Driver");
             put("oracle", "oracle.jdbc.OracleDriver");
             put("sqlserver", "com.microsoft.sqlserver.jdbc.SQLServerDriver");
             put("postgresql", "org.postgresql.Driver");
@@ -35,21 +35,29 @@ public class DynamicDataSourceManager {
         }
     };
 
-    public DataSource getSysDataSource(SysMetaDatasource datasource){
-
-        String url = "jdbc:"+datasource.getDsType()+"://"+datasource.getDsIp()+":"+datasource.getDsPort()+"/"+datasource.getDsDbname();
+    public DataSource getSysDataSource(SysMetaDatasource datasource) {
+        String url = "jdbc:" + datasource.getDsType() + "://" + datasource.getDsIp() + ":" + datasource.getDsPort() + "/" + datasource.getDsDbname();
+        switch (datasource.getDsType()) {
+            case "mysql":
+                url = "jdbc:" + datasource.getDsType() + "://" + datasource.getDsIp() + ":" + datasource.getDsPort() + "/" + datasource.getDsDbname();
+                break;
+            case "oracle":
+                url = "jdbc:" + datasource.getDsType() + ":thin:@" + datasource.getDsIp() + ":" + datasource.getDsPort() + "/" + datasource.getDsDbname();
+                break;
+        }
         return getOrCreateDataSource(url,
                 datasource.getDsUser(),
                 datasource.getDsPass(),
                 className.get(datasource.getDsType())
-                );
+        );
     }
 
     /**
      * 创建或获取数据源
-     * @param url 数据库连接URL
-     * @param username 用户名
-     * @param password 密码
+     *
+     * @param url             数据库连接URL
+     * @param username        用户名
+     * @param password        密码
      * @param driverClassName 驱动类名
      * @return 数据源实例
      */
@@ -66,7 +74,6 @@ public class DynamicDataSourceManager {
                 dataSourceMap.remove(dataSourceKey);
             }
         }
-
         // 创建新的数据源
         DruidDataSource dataSource = createDataSource(url, username, password, driverClassName);
         dataSourceMap.put(dataSourceKey, dataSource);
@@ -84,6 +91,7 @@ public class DynamicDataSourceManager {
         dataSource.setPassword(password);
         dataSource.setDriverClassName(driverClassName);
 
+
         // 配置连接池参数
         dataSource.setInitialSize(1);
         dataSource.setMinIdle(1);
@@ -107,6 +115,7 @@ public class DynamicDataSourceManager {
         return dataSource;
     }
 
+
     /**
      * 生成数据源唯一键
      */
@@ -154,6 +163,7 @@ public class DynamicDataSourceManager {
         DruidDataSource dataSource = dataSourceMap.get(key);
         return dataSource != null && !dataSource.isClosed();
     }
+
     // 数据库类型枚举
     public enum DatabaseType {
         MYSQL,
@@ -198,7 +208,8 @@ public class DynamicDataSourceManager {
 
     /**
      * 生成计数SQL
-     * @param originalSql 原始SQL
+     *
+     * @param originalSql  原始SQL
      * @param databaseType 数据库类型
      * @return 计数SQL
      */
@@ -212,9 +223,10 @@ public class DynamicDataSourceManager {
 
     /**
      * 生成分页SQL
-     * @param originalSql 原始SQL
-     * @param pageNum 页码(从1开始)
-     * @param pageSize 每页大小
+     *
+     * @param originalSql  原始SQL
+     * @param pageNum      页码(从1开始)
+     * @param pageSize     每页大小
      * @param databaseType 数据库类型
      * @return 分页SQL
      */
@@ -257,6 +269,7 @@ public class DynamicDataSourceManager {
 
     /**
      * 根据数据库连接URL判断数据库类型
+     *
      * @param jdbcType JDBC连接URL
      * @return 数据库类型
      */
@@ -287,12 +300,14 @@ public class DynamicDataSourceManager {
             throw new IllegalArgumentException("无法识别的数据库连接URL: " + jdbcType);
         }
     }
+
     /**
      * 生成分页SQL(通过JDBC URL自动识别数据库类型)
+     *
      * @param originalSql 原始SQL
-     * @param pageNum 页码(从1开始)
-     * @param pageSize 每页大小
-     * @param jdbcType JDBC连接URL
+     * @param pageNum     页码(从1开始)
+     * @param pageSize    每页大小
+     * @param jdbcType    JDBC连接URL
      * @return 分页SQL
      */
     public static String buildPaginationSql(String originalSql, int pageNum, int pageSize, String jdbcType) {
@@ -302,8 +317,9 @@ public class DynamicDataSourceManager {
 
     /**
      * 生成计数SQL(通过JDBC URL自动识别数据库类型)
+     *
      * @param originalSql 原始SQL
-     * @param jdbcType JDBC连接URL
+     * @param jdbcType    JDBC连接URL
      * @return 计数SQL
      */
     public static String buildCountSql(String originalSql, String jdbcType) {
@@ -312,5 +328,4 @@ public class DynamicDataSourceManager {
     }
 
 
-
 }

+ 4 - 0
ruoyi-api-patform/src/main/java/com/ruoyi/interfaces/mapper/MdAppFlowMapper.java

@@ -1,6 +1,9 @@
 package com.ruoyi.interfaces.mapper;
 
 import java.util.List;
+
+import com.ruoyi.common.annotation.DataSource;
+import com.ruoyi.common.enums.DataSourceType;
 import com.ruoyi.interfaces.domain.MdAppFlow;
 
 /**
@@ -9,6 +12,7 @@ import com.ruoyi.interfaces.domain.MdAppFlow;
  * @author 朱得糠
  * @date 2025-08-19
  */
+@DataSource(DataSourceType.SLAVE)
 public interface MdAppFlowMapper 
 {
     /**

+ 4 - 4
ruoyi-api-patform/src/main/resources/mapper/interfaces/MdModelInfoMapper.xml

@@ -135,7 +135,7 @@
                MODIFYBY,
                REG_USER,
                SORT,
-               AUDIT,
+               "AUDIT",
                AUDIT_BY,
                AUDIT_TIME,
                AUDIT_REMARK,
@@ -213,7 +213,7 @@
             <if test="modifyby != null ">and MODIFYBY = #{modifyby}</if>
             <if test="regUser != null  and regUser != ''">and REG_USER = #{regUser}</if>
             <if test="sort != null  and sort != ''">and SORT = #{sort}</if>
-            <if test="audit != null  and audit != ''">and AUDIT = #{audit}</if>
+            <if test="audit != null  and audit != ''">and "AUDIT" = #{audit}</if>
             <if test="publish != null and publish != ''">
                 and PUBLISH = #{publish}
             </if>
@@ -300,7 +300,7 @@
             <if test="modifyby != null">MODIFYBY,</if>
             <if test="regUser != null">REG_USER,</if>
             <if test="sort != null">SORT,</if>
-            <if test="audit != null">AUDIT,</if>
+            <if test="audit != null">"AUDIT",</if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="mdid != null">#{mdid},</if>
@@ -441,7 +441,7 @@
     </update>
     <update id="updateMdModelInfoAudit">
         UPDATE md_model_info
-        SET AUDIT        = #{audit},
+        SET "AUDIT"        = #{audit},
             AUDIT_BY     = #{auditBy},
             AUDIT_TIME   = #{auditTime},
             AUDIT_REMARK = #{auditRemark}

+ 3 - 3
ruoyi-api-patform/src/main/resources/mapper/interfaces/PtFileMapper.xml

@@ -21,12 +21,12 @@
         ,
             CODE,
             REL_ID,
-            `TYPE`,
+            "TYPE",
             PATH,
             SAVE_NAME,
-            `NAME`,
+            "NAME",
             INTM,
-            `SIZE`,
+            "SIZE",
             STATUS,
             VIEW_NUM
     </sql>

+ 3 - 3
ruoyi-api-patform/src/main/resources/mapper/interfaces/PtHelpFileMapper.xml

@@ -21,12 +21,12 @@
         ,
             CODE,
             REL_ID,
-            `TYPE`,
+            "TYPE",
             PATH,
             SAVE_NAME,
-            `NAME`,
+            "NAME",
             INTM,
-            `SIZE`,
+            "SIZE",
             STATUS,
             VIEW_NUM
     </sql>

+ 1 - 1
ruoyi-api-patform/src/main/resources/mapper/interfaces/PtServiceLogMapper.xml

@@ -31,7 +31,7 @@
     <select id="selectPtServiceLogList" parameterType="com.ruoyi.interfaces.domain.PtServiceLog"
             resultMap="PtServiceLogResult">
         SELECT
-        a.*,b.`NAME` as modelName, c.nick_name as userName
+        a.*,b."NAME" as modelName, c.nick_name as userName
         FROM
         pt_service_log a
         LEFT JOIN md_model_info b on a.md_id = b.MDID

+ 23 - 15
ruoyi-api-patform/src/main/resources/mapper/interfaces/PtServiceMapper.xml

@@ -104,7 +104,7 @@
     SERVICE_SOURCE,SERVICE_DEPT, MANAGE_NAME,DATA_RANGE, OPEN_CNDTN, DATA_FIELD,
     URL, RQTYPE, RPTYPE, PROXY_ADDRESS,PROXY_PATH,
     TM, RELEASE_TIME, RLSTM, UPTM,
-    VIEW_NUM, CNT, APPLY_NUM, DATA_NUM,AUDIT,AUDIT_BY,
+    VIEW_NUM, CNT, APPLY_NUM, DATA_NUM,"AUDIT",AUDIT_BY,
 AUDIT_TIME,
 AUDIT_REMARK,
         PUBLISH,
@@ -118,7 +118,7 @@ PUBLISH_TIME
     <sql id="SRV_INFO_List">
         SRV_ID
         , NAME, TYPE, INTRO, URL, RQTYPE, RPTYPE, STATUS, CNT, USER_ID, TM,PROXY_ADDRESS,PROXY_PATH,SERVICE_SOURCE,CATE_CODE,
-    SERVICE_DEPT, MANAGE_NAME,RELEASE_TIME,DEVELOP_UNIT,DEVELOP_CONTACTER,MAINTAIN_UNIT,MAINTAIN_CONTACER,VIEW_NUM,AUDIT,AUDIT_BY,
+    SERVICE_DEPT, MANAGE_NAME,RELEASE_TIME,DEVELOP_UNIT,DEVELOP_CONTACTER,MAINTAIN_UNIT,MAINTAIN_CONTACER,VIEW_NUM,"AUDIT",AUDIT_BY,
 AUDIT_TIME,
 AUDIT_REMARK,
         PUBLISH,
@@ -162,16 +162,18 @@ PUBLISH_TIME
             DEVELOP_CONTACTER,
             MAINTAIN_UNIT,
             MAINTAIN_CONTACER,
-            VIEW_NUM,SORT,AUDIT,AUDIT_BY,
-AUDIT_TIME,
-AUDIT_REMARK,
-        PUBLISH,
-PUBLISH_BY,
-PUBLISH_TIME
+            VIEW_NUM,
+            SORT,
+            "AUDIT",
+            AUDIT_BY,
+            AUDIT_TIME,
+            AUDIT_REMARK,
+            PUBLISH,
+            PUBLISH_BY,
+            PUBLISH_TIME
     </sql>
     <sql id="entity_properties">
-        #{mdid,jdbcType=VARCHAR}
-        ,
+        #{mdid,jdbcType=VARCHAR},
         #{upCycl,jdbcType=VARCHAR},
         #{openCndtn,jdbcType=VARCHAR},
         #{adName,jdbcType=VARCHAR},
@@ -208,7 +210,13 @@ PUBLISH_TIME
         #{maintainContacer,jdbcType=VARCHAR},
         #{viewNum, jdbcType=INTEGER},
         #{sort, jdbcType=INTEGER},
-        #{audit, jdbcType=VARCHAR}
+        #{audit, jdbcType=VARCHAR},
+        #{auditBy, jdbcType=VARCHAR},
+        #{auditTime, jdbcType=DATE},
+        #{auditRemark, jdbcType=VARCHAR},
+        #{publish, jdbcType=VARCHAR},
+        #{publishBy, jdbcType=VARCHAR},
+        #{publishTime, jdbcType=DATE}
     </sql>
     <sql id="page_where">
         <trim prefix="where" prefixOverrides="and | or ">
@@ -321,7 +329,7 @@ PUBLISH_TIME
                 and VIEW_NUM = #{viewNum}
             </if>
             <if test="audit != null and audit != ''">
-                and AUDIT = #{audit}
+                and "AUDIT" = #{audit}
             </if>
             <if test="publish != null and publish != ''">
                 and PUBLISH = #{publish}
@@ -443,7 +451,7 @@ PUBLISH_TIME
     </update>
     <update id="audit">
         update PT_SERVICE
-        set AUDIT        = #{audit},
+        set "AUDIT"        = #{audit},
             AUDIT_BY     = #{auditBy},
             AUDIT_TIME   = #{auditTime},
             AUDIT_REMARK = #{auditRemark}
@@ -698,7 +706,7 @@ PUBLISH_TIME
         m.MODIFYBY,
         m.REG_USER,
         m.SORT,
-        m.AUDIT,
+        m."AUDIT",
         s.UP_CYCL,
         s.OPEN_CNDTN,
         s.AD_NAME,
@@ -734,7 +742,7 @@ PUBLISH_TIME
         s.MAINTAIN_UNIT,
         s.MAINTAIN_CONTACER,
         s.VIEW_NUM,
-        s.AUDIT as S_AUDIT,
+        s."AUDIT" as S_AUDIT,
         s.AUDIT_BY AS S_AUDIT_BY,
         s.AUDIT_TIME AS S_AUDIT_TIME,
         s.AUDIT_REMARK AS S_AUDIT_REMARK,

+ 15 - 15
ruoyi-api-patform/src/main/resources/mapper/interfaces/PtServiceMonitorMapper.xml

@@ -9,9 +9,9 @@
     </select>
     <select id="getModelCallCount" resultType="java.util.Map">
         SELECT
-        a.app_id AS appId,
-        a.app_name AS appName,
-        COUNT( * ) AS total
+        a.app_id AS APPID,
+        a.app_name AS APPNAME,
+        COUNT( * ) AS TOTAL
         FROM
         pt_service_log a
         <where>
@@ -29,8 +29,8 @@
     </select>
     <select id="getUserModelCallCount" resultType="java.util.Map">
         SELECT
-        b.service_name AS serviceName,
-        COUNT( * ) AS total
+        b.service_name AS SERVICENAME,
+        COUNT( * ) AS TOTAL
         FROM sys_user a
         JOIN pt_service_log b ON a.user_id = b.user_id
         <where>
@@ -47,8 +47,8 @@
         GROUP BY b.service_name
     </select>
     <select id="getModelTypeCallCount" resultType="java.util.Map">
-        SELECT a.name,
-               count(*) as total
+        SELECT a.name as NAME,
+               count(*) as TOTAL
         FROM md_model_info a
                  JOIN pt_service_log b ON a.MDID = b.md_id
         <where>
@@ -63,12 +63,12 @@
     </select>
     <select id="getMonthModelCallMaxCount" resultType="java.util.Map">
         SELECT a.md_id,
-               b.`NAME`,
+               b."NAME",
                COUNT(*) AS call_count
         FROM pt_service_log a
                  JOIN md_model_info b ON a.md_id = b.MDID
         WHERE DATE_FORMAT(a.tm, '%Y-%m') = DATE_FORMAT(CURDATE(), '%Y-%m') -- 动态匹配当前年月
-        GROUP BY a.md_id, b.`NAME`
+        GROUP BY a.md_id, b."NAME"
         HAVING COUNT(*) = (SELECT COUNT(*) AS cnt
                            FROM pt_service_log
                            WHERE DATE_FORMAT(tm, '%Y-%m') = DATE_FORMAT(CURDATE(), '%Y-%m')
@@ -79,18 +79,18 @@
         ORDER BY call_count DESC;
     </select>
     <select id="getModelServiceCount" resultType="java.util.Map">
-        SELECT a.NAME   name,
-               count(*) total
+        SELECT a.NAME   NAME,
+               count(*) TOTAL
         FROM md_model_info a
                  JOIN pt_service b ON a.MDID = b.MDID
         GROUP BY a.NAME
     </select>
     <select id="getModelServiceSuccessCount" resultType="java.util.Map">
         SELECT
-            a.NAME AS name,
-            COUNT(*) AS total,
-            SUM(CASE WHEN b.status_code = 200 THEN 1 ELSE 0 END) AS success,
-            SUM(CASE WHEN b.status_code != 200 THEN 1 ELSE 0 END) AS fail
+            a.NAME AS NAME,
+            COUNT(*) AS TOTAL,
+            SUM(CASE WHEN b.status_code = 200 THEN 1 ELSE 0 END) AS SUCCESS,
+            SUM(CASE WHEN b.status_code != 200 THEN 1 ELSE 0 END) AS FAIL
         FROM
             md_model_info a
                 JOIN pt_service_log b ON a.MDID = b.md_id

+ 1 - 1
ruoyi-api-patform/src/main/resources/mapper/interfaces/SnailJobMapper.xml

@@ -61,7 +61,7 @@
             description,
             ext_attrs,
             deleted
-        from sj_job
+        from SNAIL_JOB.sj_job
     </sql>
     <select id="selectJobList" resultType="com.ruoyi.interfaces.domain.Job">
         <include refid="selectJobVo"></include>

+ 4 - 2
ruoyi-system/src/main/resources/mapper/system/SysDeptMapper.xml

@@ -75,11 +75,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	</select>
 	
 	<select id="selectChildrenDeptById" parameterType="Long" resultMap="SysDeptResult">
-		select * from sys_dept where find_in_set(#{deptId}, ancestors)
+-- 		select * from sys_dept where find_in_set(#{deptId}, ancestors)
+		select * from sys_dept where instr(','||ancestors||',' ,  ','|| #{deptId} ||',')
 	</select>
 	
 	<select id="selectNormalChildrenDeptById" parameterType="Long" resultType="int">
-		select count(*) from sys_dept where status = 0 and del_flag = '0' and find_in_set(#{deptId}, ancestors)
+-- 		select count(*) from sys_dept where status = 0 and del_flag = '0' and find_in_set(#{deptId}, ancestors)
+		select count(*) from sys_dept where status = 0 and del_flag = '0' and instr(','||ancestors||',' ,  ','|| #{deptId} ||',')
 	</select>
 	
 	<select id="checkDeptNameUnique" resultMap="SysDeptResult">

+ 6 - 6
ruoyi-system/src/main/resources/mapper/system/SysMenuMapper.xml

@@ -29,7 +29,7 @@
 	</resultMap>
 
 	<sql id="selectMenuVo">
-        select menu_id, menu_name, parent_id, order_num, path, component, `query`, route_name, is_frame, is_cache, menu_type, visible, status, ifnull(perms,'') as perms, icon, create_time 
+        select menu_id, menu_name, parent_id, order_num, path, component, query, route_name, is_frame, is_cache, menu_type, visible, status, ifnull(perms,'') as perms, icon, create_time 
 		from sys_menu
     </sql>
     
@@ -50,13 +50,13 @@
 	</select>
 	
 	<select id="selectMenuTreeAll" resultMap="SysMenuResult">
-		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.route_name, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
+		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.query, m.route_name, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
 		from sys_menu m where m.menu_type in ('M', 'C') and m.status = 0
 		order by m.parent_id, m.order_num
 	</select>
 	
 	<select id="selectMenuListByUserId" parameterType="SysMenu" resultMap="SysMenuResult">
-		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.route_name, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
+		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.query, m.route_name, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
 		from sys_menu m
 		left join sys_role_menu rm on m.menu_id = rm.menu_id
 		left join sys_user_role ur on rm.role_id = ur.role_id
@@ -75,7 +75,7 @@
 	</select>
     
     <select id="selectMenuTreeByUserId" parameterType="Long" resultMap="SysMenuResult">
-		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.route_name, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
+		select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.query, m.route_name, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
 		from sys_menu m
 			 left join sys_role_menu rm on m.menu_id = rm.menu_id
 			 left join sys_user_role ur on rm.role_id = ur.role_id
@@ -141,7 +141,7 @@
 			<if test="orderNum != null">order_num = #{orderNum},</if>
 			<if test="path != null and path != ''">path = #{path},</if>
 			<if test="component != null">component = #{component},</if>
-			<if test="query != null">`query` = #{query},</if>
+			<if test="query != null">query = #{query},</if>
 			<if test="routeName != null">route_name = #{routeName},</if>
 			<if test="isFrame != null and isFrame != ''">is_frame = #{isFrame},</if>
 			<if test="isCache != null and isCache != ''">is_cache = #{isCache},</if>
@@ -165,7 +165,7 @@
 		<if test="orderNum != null">order_num,</if>
 		<if test="path != null and path != ''">path,</if>
 		<if test="component != null and component != ''">component,</if>
-		<if test="query != null and query != ''">`query`,</if>
+		<if test="query != null and query != ''">query,</if>
 		<if test="routeName != null">route_name,</if>
 		<if test="isFrame != null and isFrame != ''">is_frame,</if>
 		<if test="isCache != null and isCache != ''">is_cache,</if>

+ 0 - 1
ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml

@@ -178,7 +178,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  		update sys_user
  		<set>
  			<if test="deptId != null and deptId != 0">dept_id = #{deptId},</if>
- 			<if test="userName != null and userName != ''">user_name = #{userName},</if>
  			<if test="nickName != null and nickName != ''">nick_name = #{nickName},</if>
  			<if test="email != null ">email = #{email},</if>
  			<if test="phonenumber != null ">phonenumber = #{phonenumber},</if>

+ 14 - 14
ruoyi-ui/src/views/monitor/service/index.vue

@@ -256,7 +256,7 @@ function initChartTop1() {
   params.endTime = endTime
   getModelCallCount(params).then(res => {
     let chartData = res.data
-    todayModelCallCount.value = chartData.map(item => item.total).reduce((acc, current) => acc + current, 0);
+    todayModelCallCount.value = chartData.map(item => item.TOTAL).reduce((acc, current) => acc + current, 0);
     const option = {
       tooltip: {
         trigger: 'item',
@@ -274,7 +274,7 @@ function initChartTop1() {
         axisLabel: {
           rotate: 10 // 设置标签旋转45度
         },
-        data: chartData.map(item => item.appName),
+        data: chartData.map(item => item.APPNAME),
       },
       yAxis: {
         type: 'value',
@@ -283,7 +283,7 @@ function initChartTop1() {
       },
       series: [
         {
-          data: chartData.map(item => item.total),
+          data: chartData.map(item => item.TOTAL),
           type: 'bar',
           itemStyle: {
             normal: {
@@ -310,7 +310,7 @@ function initChartTop2() {
     let chartData = res.data.map(item => {
       return {
         name: item.serviceName,
-        value: item.total
+        value: item.TOTAL
       }
     })
     const option = {
@@ -349,11 +349,11 @@ function initChartTop3() {
   params.startTime = startTime
   params.endTime = endTime
   getModelTypeCallCount(params).then(res => {
-    modelTypeCallCount.value = res.data.map(item => item.total).reduce((acc, current) => acc + current, 0);
+    modelTypeCallCount.value = res.data.map(item => item.TOTAL).reduce((acc, current) => acc + current, 0);
     let chartData = res.data.map(item => {
       return {
-        name: item.name,
-        value: item.total
+        name: item.NAME,
+        value: item.TOTAL
       }
     })
     const option = {
@@ -398,11 +398,11 @@ function initChartTop3() {
 
 function initChartTop9() {
   getModelServiceCount().then(res => {
-    modelTypeCallCount.value = res.data.map(item => item.total).reduce((acc, current) => acc + current, 0);
+    modelTypeCallCount.value = res.data.map(item => item.TOTAL).reduce((acc, current) => acc + current, 0);
     let chartData = res.data.map(item => {
       return {
-        name: item.name,
-        value: item.total
+        name: item.NAME,
+        value: item.TOTAL
       }
     })
     const option = {
@@ -452,8 +452,8 @@ function initChartTop11() {
   params.endTime = endTime
   getModelServiceSuccessCount(params).then(res => {
     let rawData = [
-      res.data.map(item => item.success),
-      res.data.map(item => item.fail)
+      res.data.map(item => item.SUCCESS),
+      res.data.map(item => item.FAIL)
     ]
     const totalData = [];
     for (let i = 0; i < rawData[0].length; ++i) {
@@ -501,7 +501,7 @@ function initChartTop11() {
           interval: 0,
           rotate: 10 // 设置标签旋转45度
         },
-        data: res.data.map(item => item.name)
+        data: res.data.map(item => item.NAME)
       },
       series
     };
@@ -537,7 +537,7 @@ function initChartBottom1() {
       series: [
         {
           name: 'Access From',
-          data: chartData.map(item => item.total),
+          data: chartData.map(item => item.TOTAL),
           type: 'bar',
           label: {
             show: true,   // 启用标签