From 02a88c3ef868177ad0ad0660cc6de2debed5357f Mon Sep 17 00:00:00 2001
From: 潘志宝 <979469083@qq.com>
Date: 星期三, 11 十二月 2024 10:40:56 +0800
Subject: [PATCH] iailab_fast_tenant_shasteel

---
 shasteel-biz/db/mysql.sql                             |  229 ++++++++++++++++++++++++++++++++++++++
 shasteel-biz/src/main/resources/application-dev.yaml  |    2 
 shasteel-biz/src/main/resources/application-test.yaml |    2 
 shasteel-biz/src/main/resources/application-prod.yaml |   75 ++++++++++++
 4 files changed, 306 insertions(+), 2 deletions(-)

diff --git a/shasteel-biz/db/mysql.sql b/shasteel-biz/db/mysql.sql
new file mode 100644
index 0000000..f480355
--- /dev/null
+++ b/shasteel-biz/db/mysql.sql
@@ -0,0 +1,229 @@
+CREATE database if NOT EXISTS `iailab_fast_tenant_shasteel` default character set utf8mb4 collate utf8mb4_general_ci;
+USE `iailab_fast_tenant_shasteel`;
+
+    -- 定时任务
+CREATE TABLE schedule_job
+(
+    id              bigint NOT NULL COMMENT 'id',
+    bean_name       varchar(200)  DEFAULT NULL COMMENT 'spring bean名称',
+    params          varchar(2000) DEFAULT NULL COMMENT '参数',
+    cron_expression varchar(100)  DEFAULT NULL COMMENT 'cron表达式',
+    status          tinyint unsigned COMMENT '任务状态  0:暂停  1:正常',
+    remark          varchar(255)  DEFAULT NULL COMMENT '备注',
+    creator         bigint COMMENT '创建者',
+    create_date     datetime COMMENT '创建时间',
+    updater         bigint COMMENT '更新者',
+    update_date     datetime COMMENT '更新时间',
+    PRIMARY KEY (id),
+    key idx_create_date (create_date)
+) ENGINE = InnoDB
+  DEFAULT CHARSET = utf8mb4 COMMENT ='定时任务';
+
+-- 定时任务日志
+CREATE TABLE schedule_job_log
+(
+    id          bigint           NOT NULL COMMENT 'id',
+    job_id      bigint           NOT NULL COMMENT '任务id',
+    bean_name   varchar(200)  DEFAULT NULL COMMENT 'spring bean名称',
+    params      varchar(2000) DEFAULT NULL COMMENT '参数',
+    status      tinyint unsigned NOT NULL COMMENT '任务状态    0:失败    1:成功',
+    error       varchar(2000) DEFAULT NULL COMMENT '失败信息',
+    times       int              NOT NULL COMMENT '耗时(单位:毫秒)',
+    create_date datetime COMMENT '创建时间',
+    PRIMARY KEY (id),
+    key idx_job_id (job_id),
+    key idx_create_date (create_date)
+) ENGINE = InnoDB
+  DEFAULT CHARSET = utf8mb4 COMMENT ='定时任务日志';
+
+--  quartz自带表结构
+CREATE TABLE QRTZ_JOB_DETAILS
+(
+    SCHED_NAME        VARCHAR(120) NOT NULL,
+    JOB_NAME          VARCHAR(200) NOT NULL,
+    JOB_GROUP         VARCHAR(200) NOT NULL,
+    DESCRIPTION       VARCHAR(250) NULL,
+    JOB_CLASS_NAME    VARCHAR(250) NOT NULL,
+    IS_DURABLE        VARCHAR(1)   NOT NULL,
+    IS_NONCONCURRENT  VARCHAR(1)   NOT NULL,
+    IS_UPDATE_DATA    VARCHAR(1)   NOT NULL,
+    REQUESTS_RECOVERY VARCHAR(1)   NOT NULL,
+    JOB_DATA          BLOB         NULL,
+    PRIMARY KEY (SCHED_NAME, JOB_NAME, JOB_GROUP)
+)
+    ENGINE = InnoDB
+  DEFAULT CHARSET = utf8;
+
+CREATE TABLE QRTZ_TRIGGERS
+(
+    SCHED_NAME     VARCHAR(120) NOT NULL,
+    TRIGGER_NAME   VARCHAR(200) NOT NULL,
+    TRIGGER_GROUP  VARCHAR(200) NOT NULL,
+    JOB_NAME       VARCHAR(200) NOT NULL,
+    JOB_GROUP      VARCHAR(200) NOT NULL,
+    DESCRIPTION    VARCHAR(250) NULL,
+    NEXT_FIRE_TIME BIGINT(13)   NULL,
+    PREV_FIRE_TIME BIGINT(13)   NULL,
+    PRIORITY       INTEGER      NULL,
+    TRIGGER_STATE  VARCHAR(16)  NOT NULL,
+    TRIGGER_TYPE   VARCHAR(8)   NOT NULL,
+    START_TIME     BIGINT(13)   NOT NULL,
+    END_TIME       BIGINT(13)   NULL,
+    CALENDAR_NAME  VARCHAR(200) NULL,
+    MISFIRE_INSTR  SMALLINT(2)  NULL,
+    JOB_DATA       BLOB         NULL,
+    PRIMARY KEY (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP),
+    FOREIGN KEY (SCHED_NAME, JOB_NAME, JOB_GROUP)
+        REFERENCES QRTZ_JOB_DETAILS (SCHED_NAME, JOB_NAME, JOB_GROUP)
+)
+    ENGINE = InnoDB
+  DEFAULT CHARSET = utf8;
+
+CREATE TABLE QRTZ_SIMPLE_TRIGGERS
+(
+    SCHED_NAME      VARCHAR(120) NOT NULL,
+    TRIGGER_NAME    VARCHAR(200) NOT NULL,
+    TRIGGER_GROUP   VARCHAR(200) NOT NULL,
+    REPEAT_COUNT    BIGINT(7)    NOT NULL,
+    REPEAT_INTERVAL BIGINT(12)   NOT NULL,
+    TIMES_TRIGGERED BIGINT(10)   NOT NULL,
+    PRIMARY KEY (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP),
+    FOREIGN KEY (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP)
+        REFERENCES QRTZ_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP)
+)
+    ENGINE = InnoDB
+  DEFAULT CHARSET = utf8;
+
+CREATE TABLE QRTZ_CRON_TRIGGERS
+(
+    SCHED_NAME      VARCHAR(120) NOT NULL,
+    TRIGGER_NAME    VARCHAR(200) NOT NULL,
+    TRIGGER_GROUP   VARCHAR(200) NOT NULL,
+    CRON_EXPRESSION VARCHAR(120) NOT NULL,
+    TIME_ZONE_ID    VARCHAR(80),
+    PRIMARY KEY (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP),
+    FOREIGN KEY (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP)
+        REFERENCES QRTZ_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP)
+)
+    ENGINE = InnoDB
+  DEFAULT CHARSET = utf8;
+
+CREATE TABLE QRTZ_SIMPROP_TRIGGERS
+(
+    SCHED_NAME    VARCHAR(120)   NOT NULL,
+    TRIGGER_NAME  VARCHAR(200)   NOT NULL,
+    TRIGGER_GROUP VARCHAR(200)   NOT NULL,
+    STR_PROP_1    VARCHAR(512)   NULL,
+    STR_PROP_2    VARCHAR(512)   NULL,
+    STR_PROP_3    VARCHAR(512)   NULL,
+    INT_PROP_1    INT            NULL,
+    INT_PROP_2    INT            NULL,
+    LONG_PROP_1   BIGINT         NULL,
+    LONG_PROP_2   BIGINT         NULL,
+    DEC_PROP_1    NUMERIC(13, 4) NULL,
+    DEC_PROP_2    NUMERIC(13, 4) NULL,
+    BOOL_PROP_1   VARCHAR(1)     NULL,
+    BOOL_PROP_2   VARCHAR(1)     NULL,
+    PRIMARY KEY (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP),
+    FOREIGN KEY (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP)
+        REFERENCES QRTZ_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP)
+)
+    ENGINE = InnoDB
+  DEFAULT CHARSET = utf8;
+
+CREATE TABLE QRTZ_BLOB_TRIGGERS
+(
+    SCHED_NAME    VARCHAR(120) NOT NULL,
+    TRIGGER_NAME  VARCHAR(200) NOT NULL,
+    TRIGGER_GROUP VARCHAR(200) NOT NULL,
+    BLOB_DATA     BLOB         NULL,
+    PRIMARY KEY (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP),
+    INDEX (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP),
+    FOREIGN KEY (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP)
+        REFERENCES QRTZ_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP)
+)
+    ENGINE = InnoDB
+  DEFAULT CHARSET = utf8;
+
+CREATE TABLE QRTZ_CALENDARS
+(
+    SCHED_NAME    VARCHAR(120) NOT NULL,
+    CALENDAR_NAME VARCHAR(200) NOT NULL,
+    CALENDAR      BLOB         NOT NULL,
+    PRIMARY KEY (SCHED_NAME, CALENDAR_NAME)
+)
+    ENGINE = InnoDB
+  DEFAULT CHARSET = utf8;
+
+CREATE TABLE QRTZ_PAUSED_TRIGGER_GRPS
+(
+    SCHED_NAME    VARCHAR(120) NOT NULL,
+    TRIGGER_GROUP VARCHAR(200) NOT NULL,
+    PRIMARY KEY (SCHED_NAME, TRIGGER_GROUP)
+)
+    ENGINE = InnoDB
+  DEFAULT CHARSET = utf8;
+
+CREATE TABLE QRTZ_FIRED_TRIGGERS
+(
+    SCHED_NAME        VARCHAR(120) NOT NULL,
+    ENTRY_ID          VARCHAR(95)  NOT NULL,
+    TRIGGER_NAME      VARCHAR(200) NOT NULL,
+    TRIGGER_GROUP     VARCHAR(200) NOT NULL,
+    INSTANCE_NAME     VARCHAR(200) NOT NULL,
+    FIRED_TIME        BIGINT(13)   NOT NULL,
+    SCHED_TIME        BIGINT(13)   NOT NULL,
+    PRIORITY          INTEGER      NOT NULL,
+    STATE             VARCHAR(16)  NOT NULL,
+    JOB_NAME          VARCHAR(200) NULL,
+    JOB_GROUP         VARCHAR(200) NULL,
+    IS_NONCONCURRENT  VARCHAR(1)   NULL,
+    REQUESTS_RECOVERY VARCHAR(1)   NULL,
+    PRIMARY KEY (SCHED_NAME, ENTRY_ID)
+)
+    ENGINE = InnoDB
+  DEFAULT CHARSET = utf8;
+
+CREATE TABLE QRTZ_SCHEDULER_STATE
+(
+    SCHED_NAME        VARCHAR(120) NOT NULL,
+    INSTANCE_NAME     VARCHAR(200) NOT NULL,
+    LAST_CHECKIN_TIME BIGINT(13)   NOT NULL,
+    CHECKIN_INTERVAL  BIGINT(13)   NOT NULL,
+    PRIMARY KEY (SCHED_NAME, INSTANCE_NAME)
+)
+    ENGINE = InnoDB
+  DEFAULT CHARSET = utf8;
+
+CREATE TABLE QRTZ_LOCKS
+(
+    SCHED_NAME VARCHAR(120) NOT NULL,
+    LOCK_NAME  VARCHAR(40)  NOT NULL,
+    PRIMARY KEY (SCHED_NAME, LOCK_NAME)
+)
+    ENGINE = InnoDB
+  DEFAULT CHARSET = utf8;
+
+CREATE INDEX IDX_QRTZ_J_REQ_RECOVERY ON QRTZ_JOB_DETAILS (SCHED_NAME, REQUESTS_RECOVERY);
+CREATE INDEX IDX_QRTZ_J_GRP ON QRTZ_JOB_DETAILS (SCHED_NAME, JOB_GROUP);
+
+CREATE INDEX IDX_QRTZ_T_J ON QRTZ_TRIGGERS (SCHED_NAME, JOB_NAME, JOB_GROUP);
+CREATE INDEX IDX_QRTZ_T_JG ON QRTZ_TRIGGERS (SCHED_NAME, JOB_GROUP);
+CREATE INDEX IDX_QRTZ_T_C ON QRTZ_TRIGGERS (SCHED_NAME, CALENDAR_NAME);
+CREATE INDEX IDX_QRTZ_T_G ON QRTZ_TRIGGERS (SCHED_NAME, TRIGGER_GROUP);
+CREATE INDEX IDX_QRTZ_T_STATE ON QRTZ_TRIGGERS (SCHED_NAME, TRIGGER_STATE);
+CREATE INDEX IDX_QRTZ_T_N_STATE ON QRTZ_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP, TRIGGER_STATE);
+CREATE INDEX IDX_QRTZ_T_N_G_STATE ON QRTZ_TRIGGERS (SCHED_NAME, TRIGGER_GROUP, TRIGGER_STATE);
+CREATE INDEX IDX_QRTZ_T_NEXT_FIRE_TIME ON QRTZ_TRIGGERS (SCHED_NAME, NEXT_FIRE_TIME);
+CREATE INDEX IDX_QRTZ_T_NFT_ST ON QRTZ_TRIGGERS (SCHED_NAME, TRIGGER_STATE, NEXT_FIRE_TIME);
+CREATE INDEX IDX_QRTZ_T_NFT_MISFIRE ON QRTZ_TRIGGERS (SCHED_NAME, MISFIRE_INSTR, NEXT_FIRE_TIME);
+CREATE INDEX IDX_QRTZ_T_NFT_ST_MISFIRE ON QRTZ_TRIGGERS (SCHED_NAME, MISFIRE_INSTR, NEXT_FIRE_TIME, TRIGGER_STATE);
+CREATE INDEX IDX_QRTZ_T_NFT_ST_MISFIRE_GRP ON QRTZ_TRIGGERS (SCHED_NAME, MISFIRE_INSTR, NEXT_FIRE_TIME, TRIGGER_GROUP,
+                                                             TRIGGER_STATE);
+
+CREATE INDEX IDX_QRTZ_FT_TRIG_INST_NAME ON QRTZ_FIRED_TRIGGERS (SCHED_NAME, INSTANCE_NAME);
+CREATE INDEX IDX_QRTZ_FT_INST_JOB_REQ_RCVRY ON QRTZ_FIRED_TRIGGERS (SCHED_NAME, INSTANCE_NAME, REQUESTS_RECOVERY);
+CREATE INDEX IDX_QRTZ_FT_J_G ON QRTZ_FIRED_TRIGGERS (SCHED_NAME, JOB_NAME, JOB_GROUP);
+CREATE INDEX IDX_QRTZ_FT_JG ON QRTZ_FIRED_TRIGGERS (SCHED_NAME, JOB_GROUP);
+CREATE INDEX IDX_QRTZ_FT_T_G ON QRTZ_FIRED_TRIGGERS (SCHED_NAME, TRIGGER_NAME, TRIGGER_GROUP);
+CREATE INDEX IDX_QRTZ_FT_TG ON QRTZ_FIRED_TRIGGERS (SCHED_NAME, TRIGGER_GROUP);
\ No newline at end of file
diff --git a/shasteel-biz/src/main/resources/application-dev.yaml b/shasteel-biz/src/main/resources/application-dev.yaml
index ba12660..5415e33 100644
--- a/shasteel-biz/src/main/resources/application-dev.yaml
+++ b/shasteel-biz/src/main/resources/application-dev.yaml
@@ -35,7 +35,7 @@
       primary: master
       datasource:
         master:
-          url: jdbc:mysql://127.0.0.1:3306/iailab_expert_tenant_shasteel?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例
+          url: jdbc:mysql://127.0.0.1:3306/iailab_fast_tenant_shasteel?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例
           username: root
           password: 123456
 
diff --git a/shasteel-biz/src/main/resources/application-prod.yaml b/shasteel-biz/src/main/resources/application-prod.yaml
new file mode 100644
index 0000000..d43de62
--- /dev/null
+++ b/shasteel-biz/src/main/resources/application-prod.yaml
@@ -0,0 +1,75 @@
+--- #################### 数据库相关配置 ####################
+spring:
+  datasource:
+    druid: # Druid 【监控】相关的全局配置
+      web-stat-filter:
+        enabled: true
+      stat-view-servlet:
+        enabled: true
+        allow: # 设置白名单,不填则允许所有访问
+        url-pattern: /druid/*
+        login-username: # 控制台管理用户名和密码
+        login-password:
+      filter:
+        stat:
+          enabled: true
+          log-slow-sql: true # 慢 SQL 记录
+          slow-sql-millis: 100
+          merge-sql: true
+        wall:
+          config:
+            multi-statement-allow: true
+    dynamic: # 多数据源配置
+      druid: # Druid 【连接池】相关的全局配置
+        initial-size: 1 # 初始连接数
+        min-idle: 1 # 最小连接池数量
+        max-active: 20 # 最大连接池数量
+        max-wait: 600000 # 配置获取连接等待超时的时间,单位:毫秒
+        time-between-eviction-runs-millis: 60000 # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位:毫秒
+        min-evictable-idle-time-millis: 300000 # 配置一个连接在池中最小生存的时间,单位:毫秒
+        max-evictable-idle-time-millis: 900000 # 配置一个连接在池中最大生存的时间,单位:毫秒
+        validation-query: SELECT 1 FROM DUAL # 配置检测连接是否有效
+        test-while-idle: true
+        test-on-borrow: false
+        test-on-return: false
+      primary: master
+      datasource:
+        master:
+          url: jdbc:mysql://172.16.8.100:3306/iailab_fast_tenant_shasteel?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true
+          username: root
+          password: Iailab@2019
+
+  # Redis 配置。Redisson 默认的配置足够使用,一般不需要进行调优
+  redis:
+    host: 127.0.0.1 # 地址
+    port: 6379 # 端口
+    database: 8 # 数据库索引
+    password: 123456 # 密码,建议生产环境开启
+
+--- #################### 平台相关配置 ####################
+
+# 平台配置项,设置当前项目所有自定义的配置
+iailab:
+  env: # 多环境的配置项
+    tag: ${HOSTNAME}
+  captcha:
+    enable: false # 本地环境,暂时关闭图片验证码,方便登录等接口的测试
+  security:
+    mock-enable: true
+  access-log: # 访问日志的配置项
+    enable: false
+
+  sms-code: # 短信验证码相关的配置项
+    expire-times: 10m
+    send-frequency: 1m
+    send-maximum-quantity-per-day: 10
+    begin-code: 9999 # 这里配置 9999 的原因是,测试方便。
+    end-code: 9999 # 这里配置 9999 的原因是,测试方便。
+  token:
+    base-url: http://127.0.0.1:48080/admin-api/system
+    tenant-id: 172
+    client-id: shasteel
+    client-secret: shasteel111111111111111
+    username: shasteel
+    password: 123456
+
diff --git a/shasteel-biz/src/main/resources/application-test.yaml b/shasteel-biz/src/main/resources/application-test.yaml
index eecddfb..1b8219d 100644
--- a/shasteel-biz/src/main/resources/application-test.yaml
+++ b/shasteel-biz/src/main/resources/application-test.yaml
@@ -35,7 +35,7 @@
       primary: master
       datasource:
         master:
-          url: jdbc:mysql://172.16.8.100:3306/iailab_expert_tenant_shasteel?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例
+          url: jdbc:mysql://172.16.8.100:3306/iailab_fast_tenant_shasteel?useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true&nullCatalogMeansCurrent=true # MySQL Connector/J 8.X 连接的示例
           #          url: jdbc:mysql://127.0.0.1:3306/iailab_expert_tenant_shasteel?useSSL=true&allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai # MySQL Connector/J 5.X 连接的示例
           #          url: jdbc:postgresql://127.0.0.1:5432/iailab_expert_tenant_shasteel # PostgreSQL 连接的示例
           #          url: jdbc:oracle:thin:@127.0.0.1:1521:xe # Oracle 连接的示例

--
Gitblit v1.9.3