mirror of
				https://github.com/dromara/RuoYi-Vue-Plus.git
				synced 2025-11-04 16:23:42 +08:00 
			
		
		
		
	!535 feat: EasyRetry-v3.2.0 => SnailJob-v1.0.0beta1
* feat: EasyRetry-v3.2.0 => SnailJob-v1.0.0beta1
This commit is contained in:
		@@ -1,12 +1,12 @@
 | 
			
		||||
<component name="ProjectRunConfigurationManager">
 | 
			
		||||
  <configuration default="false" name="ruoyi-easyretry-server" type="docker-deploy" factoryName="dockerfile" server-name="Docker">
 | 
			
		||||
  <configuration default="false" name="ruoyi-snailjob-server/Dockerfile: Compose Deployment" type="docker-deploy" factoryName="dockerfile" server-name="Docker">
 | 
			
		||||
    <deployment type="dockerfile">
 | 
			
		||||
      <settings>
 | 
			
		||||
        <option name="imageTag" value="ruoyi/ruoyi-easyretry-server:5.2.0" />
 | 
			
		||||
        <option name="imageTag" value="ruoyi/ruoyi-snailjob-server:5.2.0" />
 | 
			
		||||
        <option name="buildOnly" value="true" />
 | 
			
		||||
        <option name="sourceFilePath" value="ruoyi-extend/ruoyi-easyretry-server/Dockerfile" />
 | 
			
		||||
        <option name="sourceFilePath" value="ruoyi-extend/ruoyi-snailjob-server/Dockerfile" />
 | 
			
		||||
      </settings>
 | 
			
		||||
    </deployment>
 | 
			
		||||
    <method v="2" />
 | 
			
		||||
  </configuration>
 | 
			
		||||
</component>
 | 
			
		||||
</component>
 | 
			
		||||
							
								
								
									
										17
									
								
								pom.xml
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								pom.xml
									
									
									
									
									
								
							@@ -34,7 +34,7 @@
 | 
			
		||||
        <lock4j.version>2.2.7</lock4j.version>
 | 
			
		||||
        <dynamic-ds.version>4.3.0</dynamic-ds.version>
 | 
			
		||||
        <alibaba-ttl.version>2.14.4</alibaba-ttl.version>
 | 
			
		||||
        <easyretry.version>3.2.0</easyretry.version>
 | 
			
		||||
        <snailjob.version>1.0.0-beta1</snailjob.version>
 | 
			
		||||
        <mapstruct-plus.version>1.3.6</mapstruct-plus.version>
 | 
			
		||||
        <mapstruct-plus.lombok.version>0.2.0</mapstruct-plus.lombok.version>
 | 
			
		||||
        <lombok.version>1.18.32</lombok.version>
 | 
			
		||||
@@ -296,21 +296,16 @@
 | 
			
		||||
                <version>${lock4j.version}</version>
 | 
			
		||||
            </dependency>
 | 
			
		||||
 | 
			
		||||
            <!--  EasyRetry Client -->
 | 
			
		||||
            <!-- SnailJob Client -->
 | 
			
		||||
            <dependency>
 | 
			
		||||
                <groupId>com.aizuda</groupId>
 | 
			
		||||
                <artifactId>easy-retry-client-starter</artifactId>
 | 
			
		||||
                <version>${easyretry.version}</version>
 | 
			
		||||
                <artifactId>snail-job-client-starter</artifactId>
 | 
			
		||||
                <version>${snailjob.version}</version>
 | 
			
		||||
            </dependency>
 | 
			
		||||
            <dependency>
 | 
			
		||||
                <groupId>com.aizuda</groupId>
 | 
			
		||||
                <artifactId>easy-retry-client-core</artifactId>
 | 
			
		||||
                <version>${easyretry.version}</version>
 | 
			
		||||
            </dependency>
 | 
			
		||||
            <dependency>
 | 
			
		||||
                <groupId>com.aizuda</groupId>
 | 
			
		||||
                <artifactId>easy-retry-client-job-core</artifactId>
 | 
			
		||||
                <version>${easyretry.version}</version>
 | 
			
		||||
                <artifactId>snail-job-client-job-core</artifactId>
 | 
			
		||||
                <version>${snailjob.version}</version>
 | 
			
		||||
            </dependency>
 | 
			
		||||
 | 
			
		||||
            <dependency>
 | 
			
		||||
 
 | 
			
		||||
@@ -97,17 +97,14 @@
 | 
			
		||||
            <artifactId>JustAuth</artifactId>
 | 
			
		||||
        </dependency>
 | 
			
		||||
 | 
			
		||||
        <!-- SnailJob client -->
 | 
			
		||||
        <dependency>
 | 
			
		||||
            <groupId>com.aizuda</groupId>
 | 
			
		||||
            <artifactId>easy-retry-client-starter</artifactId>
 | 
			
		||||
            <artifactId>snail-job-client-starter</artifactId>
 | 
			
		||||
        </dependency>
 | 
			
		||||
        <dependency>
 | 
			
		||||
            <groupId>com.aizuda</groupId>
 | 
			
		||||
            <artifactId>easy-retry-client-core</artifactId>
 | 
			
		||||
        </dependency>
 | 
			
		||||
        <dependency>
 | 
			
		||||
            <groupId>com.aizuda</groupId>
 | 
			
		||||
            <artifactId>easy-retry-client-job-core</artifactId>
 | 
			
		||||
            <artifactId>snail-job-client-job-core</artifactId>
 | 
			
		||||
        </dependency>
 | 
			
		||||
 | 
			
		||||
        <!-- skywalking 整合 logback -->
 | 
			
		||||
 
 | 
			
		||||
@@ -8,17 +8,17 @@ spring.boot.admin.client:
 | 
			
		||||
  username: ruoyi
 | 
			
		||||
  password: 123456
 | 
			
		||||
 | 
			
		||||
--- # easy-retry 配置
 | 
			
		||||
easy-retry:
 | 
			
		||||
--- # snail-job 配置
 | 
			
		||||
snail-job:
 | 
			
		||||
  enabled: true
 | 
			
		||||
  # 需要在EasyRetry后台组管理创建对应名称的组,然后创建任务的时候选择对应的组,才能正确分派任务
 | 
			
		||||
  # 需要在 SnailJob 后台组管理创建对应名称的组,然后创建任务的时候选择对应的组,才能正确分派任务
 | 
			
		||||
  group-name: "ruoyi_group"
 | 
			
		||||
  # EasyRetry接入验证令牌 详见 script/sql/easy_retry.sql `er_group_config` 表
 | 
			
		||||
  token: "ER_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT"
 | 
			
		||||
  # SnailJob 接入验证令牌 详见 script/sql/snail_job.sql `sj_group_config` 表
 | 
			
		||||
  token: "SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT"
 | 
			
		||||
  server:
 | 
			
		||||
    host: 127.0.0.1
 | 
			
		||||
    port: 1788
 | 
			
		||||
  # 详见 script/sql/easy_retry.sql `er_namespace` 表
 | 
			
		||||
  # 详见 script/sql/snail_job.sql `sj_namespace` 表
 | 
			
		||||
  namespace: ${spring.profiles.active}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -11,17 +11,17 @@ spring.boot.admin.client:
 | 
			
		||||
  username: ruoyi
 | 
			
		||||
  password: 123456
 | 
			
		||||
 | 
			
		||||
--- # easy-retry 配置
 | 
			
		||||
easy-retry:
 | 
			
		||||
--- # snail-job 配置
 | 
			
		||||
snail-job:
 | 
			
		||||
  enabled: false
 | 
			
		||||
  # 需要在EasyRetry后台组管理创建对应名称的组,然后创建任务的时候选择对应的组,才能正确分派任务
 | 
			
		||||
  # 需要在 SnailJob 后台组管理创建对应名称的组,然后创建任务的时候选择对应的组,才能正确分派任务
 | 
			
		||||
  group-name: "ruoyi_group"
 | 
			
		||||
  # EasyRetry接入验证令牌 详见 script/sql/easy_retry.sql `er_group_config` 表
 | 
			
		||||
  token: "ER_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT"
 | 
			
		||||
  # SnailJob 接入验证令牌 详见 script/sql/snail_job.sql `sj_group_config` 表
 | 
			
		||||
  token: "SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT"
 | 
			
		||||
  server:
 | 
			
		||||
    host: 127.0.0.1
 | 
			
		||||
    port: 1788
 | 
			
		||||
  # 详见 script/sql/easy_retry.sql `er_namespace` 表
 | 
			
		||||
  # 详见 script/sql/snail_job.sql `sj_namespace` 表
 | 
			
		||||
  namespace: ${spring.profiles.active}
 | 
			
		||||
 | 
			
		||||
--- # 数据源配置
 | 
			
		||||
 
 | 
			
		||||
@@ -124,9 +124,6 @@ security:
 | 
			
		||||
    # actuator 监控配置
 | 
			
		||||
    - /actuator
 | 
			
		||||
    - /actuator/**
 | 
			
		||||
    # EasyRetry Job 分派 @see com.aizuda.easy.retry.client.job.core.client.JobEndPoint
 | 
			
		||||
    - /job/dispatch/v1
 | 
			
		||||
    - /job/stop/v1
 | 
			
		||||
 | 
			
		||||
# 多租户配置
 | 
			
		||||
tenant:
 | 
			
		||||
 
 | 
			
		||||
@@ -22,18 +22,14 @@
 | 
			
		||||
            <artifactId>spring-boot-autoconfigure</artifactId>
 | 
			
		||||
        </dependency>
 | 
			
		||||
 | 
			
		||||
        <!-- EasyRetry client -->
 | 
			
		||||
        <!-- SnailJob client -->
 | 
			
		||||
        <dependency>
 | 
			
		||||
            <groupId>com.aizuda</groupId>
 | 
			
		||||
            <artifactId>easy-retry-client-starter</artifactId>
 | 
			
		||||
            <artifactId>snail-job-client-starter</artifactId>
 | 
			
		||||
        </dependency>
 | 
			
		||||
        <dependency>
 | 
			
		||||
            <groupId>com.aizuda</groupId>
 | 
			
		||||
            <artifactId>easy-retry-client-core</artifactId>
 | 
			
		||||
        </dependency>
 | 
			
		||||
        <dependency>
 | 
			
		||||
            <groupId>com.aizuda</groupId>
 | 
			
		||||
            <artifactId>easy-retry-client-job-core</artifactId>
 | 
			
		||||
            <artifactId>snail-job-client-job-core</artifactId>
 | 
			
		||||
        </dependency>
 | 
			
		||||
 | 
			
		||||
        <dependency>
 | 
			
		||||
 
 | 
			
		||||
@@ -3,9 +3,9 @@ package org.dromara.common.job.config;
 | 
			
		||||
import ch.qos.logback.classic.Logger;
 | 
			
		||||
import ch.qos.logback.classic.LoggerContext;
 | 
			
		||||
import ch.qos.logback.classic.spi.ILoggingEvent;
 | 
			
		||||
import com.aizuda.easy.retry.client.common.appender.EasyRetryLogbackAppender;
 | 
			
		||||
import com.aizuda.easy.retry.client.common.event.EasyRetryStartingEvent;
 | 
			
		||||
import com.aizuda.easy.retry.client.starter.EnableEasyRetry;
 | 
			
		||||
import com.aizuda.snailjob.client.common.appender.SnailLogbackAppender;
 | 
			
		||||
import com.aizuda.snailjob.client.common.event.SnailClientStartingEvent;
 | 
			
		||||
import com.aizuda.snailjob.client.starter.EnableSnailJob;
 | 
			
		||||
import org.slf4j.LoggerFactory;
 | 
			
		||||
import org.springframework.boot.autoconfigure.AutoConfiguration;
 | 
			
		||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
 | 
			
		||||
@@ -15,20 +15,20 @@ import org.springframework.scheduling.annotation.EnableScheduling;
 | 
			
		||||
/**
 | 
			
		||||
 * 启动定时任务
 | 
			
		||||
 *
 | 
			
		||||
 * @author dhb52
 | 
			
		||||
 * @since 2024/3/12
 | 
			
		||||
 * @author opensnail
 | 
			
		||||
 * @date 2024-05-17
 | 
			
		||||
 */
 | 
			
		||||
@AutoConfiguration
 | 
			
		||||
@ConditionalOnProperty(prefix = "easy-retry", name = "enabled", havingValue = "true")
 | 
			
		||||
@ConditionalOnProperty(prefix = "snail-job", name = "enabled", havingValue = "true")
 | 
			
		||||
@EnableScheduling
 | 
			
		||||
@EnableEasyRetry(group = "${easy-retry.group-name}")
 | 
			
		||||
public class EasyRetryConfig {
 | 
			
		||||
@EnableSnailJob(group = "${snail-job.group-name}")
 | 
			
		||||
public class SnailJobConfig {
 | 
			
		||||
 | 
			
		||||
    @EventListener(EasyRetryStartingEvent.class)
 | 
			
		||||
    public void onStarting(EasyRetryStartingEvent event) {
 | 
			
		||||
    @EventListener(SnailClientStartingEvent.class)
 | 
			
		||||
    public void onStarting(SnailClientStartingEvent event) {
 | 
			
		||||
        LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();
 | 
			
		||||
        EasyRetryLogbackAppender<ILoggingEvent> ca = new EasyRetryLogbackAppender<>();
 | 
			
		||||
        ca.setName("easy_log_appender");
 | 
			
		||||
        SnailLogbackAppender<ILoggingEvent> ca = new SnailLogbackAppender<>();
 | 
			
		||||
        ca.setName("snail_log_appender");
 | 
			
		||||
        ca.start();
 | 
			
		||||
        Logger rootLogger = lc.getLogger(Logger.ROOT_LOGGER_NAME);
 | 
			
		||||
        rootLogger.addAppender(ca);
 | 
			
		||||
@@ -1 +1 @@
 | 
			
		||||
org.dromara.common.job.config.EasyRetryConfig
 | 
			
		||||
org.dromara.common.job.config.SnailJobConfig
 | 
			
		||||
 
 | 
			
		||||
@@ -13,7 +13,7 @@
 | 
			
		||||
 | 
			
		||||
    <modules>
 | 
			
		||||
        <module>ruoyi-monitor-admin</module>
 | 
			
		||||
        <module>ruoyi-easyretry-server</module>
 | 
			
		||||
        <module>ruoyi-snailjob-server</module>
 | 
			
		||||
    </modules>
 | 
			
		||||
 | 
			
		||||
</project>
 | 
			
		||||
 
 | 
			
		||||
@@ -1,18 +0,0 @@
 | 
			
		||||
package org.dromara.easyretry;
 | 
			
		||||
 | 
			
		||||
import org.springframework.boot.SpringApplication;
 | 
			
		||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * EasyRetry Server 启动程序
 | 
			
		||||
 *
 | 
			
		||||
 * @author dhb52
 | 
			
		||||
 */
 | 
			
		||||
@SpringBootApplication
 | 
			
		||||
public class EasyRetryServerApplication {
 | 
			
		||||
 | 
			
		||||
    public static void main(String[] args) {
 | 
			
		||||
        SpringApplication.run(com.aizuda.easy.retry.server.EasyRetryServerApplication.class, args);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@@ -1,10 +0,0 @@
 | 
			
		||||
Application Version: ${revision}
 | 
			
		||||
Spring Boot Version: ${spring-boot.version}
 | 
			
		||||
                                      _
 | 
			
		||||
                                     | |
 | 
			
		||||
  ___  __ _ ___ _   _ ______ _ __ ___| |_ _ __ _   _ ______ ___  ___ _ ____   _____ _ __
 | 
			
		||||
 / _ \/ _` / __| | | |______| '__/ _ \ __| '__| | | |______/ __|/ _ \ '__\ \ / / _ \ '__|
 | 
			
		||||
|  __/ (_| \__ \ |_| |      | | |  __/ |_| |  | |_| |      \__ \  __/ |   \ V /  __/ |
 | 
			
		||||
 \___|\__,_|___/\__, |      |_|  \___|\__|_|   \__, |      |___/\___|_|    \_/ \___|_|
 | 
			
		||||
                 __/ |                          __/ |
 | 
			
		||||
                |___/                          |___/
 | 
			
		||||
@@ -3,16 +3,16 @@ FROM openjdk:17.0.2-oraclelinux8
 | 
			
		||||
 | 
			
		||||
MAINTAINER Lion Li
 | 
			
		||||
 | 
			
		||||
RUN mkdir -p /ruoyi/easyretry/logs
 | 
			
		||||
RUN mkdir -p /ruoyi/snailjob/logs
 | 
			
		||||
 | 
			
		||||
WORKDIR /ruoyi/easyretry
 | 
			
		||||
WORKDIR /ruoyi/snailjob
 | 
			
		||||
 | 
			
		||||
ENV LANG=C.UTF-8 LC_ALL=C.UTF-8 JAVA_OPTS="-Xms512m -Xmx1024m"
 | 
			
		||||
 | 
			
		||||
EXPOSE 8800
 | 
			
		||||
EXPOSE 1788
 | 
			
		||||
 | 
			
		||||
ADD ./target/ruoyi-easyretry-server.jar ./app.jar
 | 
			
		||||
ADD ./target/ruoyi-snailjob-server.jar ./app.jar
 | 
			
		||||
 | 
			
		||||
ENTRYPOINT java -Djava.security.egd=file:/dev/./urandom \
 | 
			
		||||
           -XX:+HeapDumpOnOutOfMemoryError -XX:+UseZGC ${JAVA_OPTS} \
 | 
			
		||||
@@ -9,13 +9,13 @@
 | 
			
		||||
    </parent>
 | 
			
		||||
    <modelVersion>4.0.0</modelVersion>
 | 
			
		||||
    <packaging>jar</packaging>
 | 
			
		||||
    <artifactId>ruoyi-easyretry-server</artifactId>
 | 
			
		||||
    <artifactId>ruoyi-snailjob-server</artifactId>
 | 
			
		||||
 | 
			
		||||
    <dependencies>
 | 
			
		||||
        <dependency>
 | 
			
		||||
            <groupId>com.aizuda</groupId>
 | 
			
		||||
            <artifactId>easy-retry-server-starter</artifactId>
 | 
			
		||||
            <version>${easyretry.version}</version>
 | 
			
		||||
            <artifactId>snail-job-server-starter</artifactId>
 | 
			
		||||
            <version>${snailjob.version}</version>
 | 
			
		||||
        </dependency>
 | 
			
		||||
 | 
			
		||||
        <dependency>
 | 
			
		||||
@@ -0,0 +1,19 @@
 | 
			
		||||
package org.dromara.snailjob;
 | 
			
		||||
 | 
			
		||||
import org.springframework.boot.SpringApplication;
 | 
			
		||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * SnailJob Server 启动程序
 | 
			
		||||
 *
 | 
			
		||||
 * @author opensnail
 | 
			
		||||
 * @date 2024-05-17
 | 
			
		||||
 */
 | 
			
		||||
@SpringBootApplication
 | 
			
		||||
public class SnailJobServerApplication {
 | 
			
		||||
 | 
			
		||||
    public static void main(String[] args) {
 | 
			
		||||
        SpringApplication.run(com.aizuda.snailjob.server.SnailJobServerApplication.class, args);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@@ -14,16 +14,14 @@ spring:
 | 
			
		||||
      max-lifetime: 900000
 | 
			
		||||
      keepaliveTime: 30000
 | 
			
		||||
 | 
			
		||||
--- # easy-retry 服务端配置
 | 
			
		||||
easy-retry:
 | 
			
		||||
--- # snail-job 服务端配置
 | 
			
		||||
snail-job:
 | 
			
		||||
  # 拉取重试数据的每批次的大小
 | 
			
		||||
  retry-pull-page-size: 1000
 | 
			
		||||
  # 拉取重试数据的每批次的大小
 | 
			
		||||
  job-pull-page-size: 1000
 | 
			
		||||
  # 服务端 netty 端口
 | 
			
		||||
  # 服务端netty端口
 | 
			
		||||
  netty-port: 1788
 | 
			
		||||
  # 重试和死信表的分区总数
 | 
			
		||||
  total-partition: 2
 | 
			
		||||
  # 一个客户端每秒最多接收的重试数量指令
 | 
			
		||||
  limiter: 1000
 | 
			
		||||
  # 号段模式下步长配置
 | 
			
		||||
@@ -36,7 +34,6 @@ easy-retry:
 | 
			
		||||
    max-count: 288
 | 
			
		||||
    #间隔时间
 | 
			
		||||
    trigger-interval: 900
 | 
			
		||||
  mode: all
 | 
			
		||||
  retry-max-pull-count: 10
 | 
			
		||||
 | 
			
		||||
--- # 监控中心配置
 | 
			
		||||
@@ -14,16 +14,14 @@ spring:
 | 
			
		||||
      max-lifetime: 900000
 | 
			
		||||
      keepaliveTime: 30000
 | 
			
		||||
 | 
			
		||||
--- # easy-retry 服务端配置
 | 
			
		||||
easy-retry:
 | 
			
		||||
--- # snail-job 服务端配置
 | 
			
		||||
snail-job:
 | 
			
		||||
  # 拉取重试数据的每批次的大小
 | 
			
		||||
  retry-pull-page-size: 1000
 | 
			
		||||
  # 拉取重试数据的每批次的大小
 | 
			
		||||
  job-pull-page-size: 1000
 | 
			
		||||
  # 服务端 netty 端口
 | 
			
		||||
  netty-port: 1788
 | 
			
		||||
  # 重试和死信表的分区总数
 | 
			
		||||
  total-partition: 2
 | 
			
		||||
  # 一个客户端每秒最多接收的重试数量指令
 | 
			
		||||
  limiter: 1000
 | 
			
		||||
  # 号段模式下步长配置
 | 
			
		||||
@@ -36,7 +34,6 @@ easy-retry:
 | 
			
		||||
    max-count: 288
 | 
			
		||||
    #间隔时间
 | 
			
		||||
    trigger-interval: 900
 | 
			
		||||
  mode: all
 | 
			
		||||
  retry-max-pull-count: 10
 | 
			
		||||
 | 
			
		||||
--- # 监控中心配置
 | 
			
		||||
@@ -1,11 +1,11 @@
 | 
			
		||||
server:
 | 
			
		||||
  port: 8800
 | 
			
		||||
  servlet:
 | 
			
		||||
    context-path: /easy-retry
 | 
			
		||||
    context-path: /snail-job
 | 
			
		||||
 | 
			
		||||
spring:
 | 
			
		||||
  application:
 | 
			
		||||
    name: ruoyi-easyretry-server
 | 
			
		||||
    name: ruoyi-snailjob-server
 | 
			
		||||
  profiles:
 | 
			
		||||
    active: @profiles.active@
 | 
			
		||||
  web:
 | 
			
		||||
@@ -13,10 +13,9 @@ spring:
 | 
			
		||||
      static-locations: classpath:admin/
 | 
			
		||||
 | 
			
		||||
mybatis-plus:
 | 
			
		||||
  typeAliasesPackage: com.aizuda.easy.retry.template.datasource.persistence.po
 | 
			
		||||
  typeAliasesPackage: com.aizuda.snailjob.template.datasource.persistence.po
 | 
			
		||||
  global-config:
 | 
			
		||||
    db-config:
 | 
			
		||||
      table-prefix: er_
 | 
			
		||||
      where-strategy: NOT_EMPTY
 | 
			
		||||
      capital-mode: false
 | 
			
		||||
      logic-delete-value: 1
 | 
			
		||||
@@ -37,4 +36,4 @@ management:
 | 
			
		||||
    health:
 | 
			
		||||
      show-details: ALWAYS
 | 
			
		||||
    logfile:
 | 
			
		||||
      external-file: ./logs/ruoyi-easyretry-server/console.log
 | 
			
		||||
      external-file: ./logs/ruoyi-snailjob-server/console.log
 | 
			
		||||
@@ -1,6 +1,6 @@
 | 
			
		||||
<?xml version="1.0" encoding="UTF-8"?>
 | 
			
		||||
<configuration>
 | 
			
		||||
    <property name="log.path" value="./logs/ruoyi-easyretry-server" />
 | 
			
		||||
    <property name="log.path" value="./logs/ruoyi-snailjob-server" />
 | 
			
		||||
    <property name="console.log.pattern"
 | 
			
		||||
              value="%red(%d{yyyy-MM-dd HH:mm:ss}) %green([%thread]) %highlight(%-5level) %boldMagenta(%logger{36}%n) - %msg%n"/>
 | 
			
		||||
    <property name="log.pattern" value="%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n"/>
 | 
			
		||||
@@ -78,8 +78,8 @@
 | 
			
		||||
        <appender-ref ref ="file_error"/>
 | 
			
		||||
    </appender>
 | 
			
		||||
 | 
			
		||||
    <!-- EasyRetry appender -->
 | 
			
		||||
    <appender name="easy_log_server_appender" class="com.aizuda.easy.retry.server.common.appender.EasyRetryServerLogbackAppender">
 | 
			
		||||
    <!-- SnailJob appender -->
 | 
			
		||||
    <appender name="snail_log_server_appender" class="com.aizuda.snailjob.server.common.appender.SnailJobServerLogbackAppender">
 | 
			
		||||
    </appender>
 | 
			
		||||
 | 
			
		||||
    <!-- 控制台输出日志级别 -->
 | 
			
		||||
@@ -87,6 +87,6 @@
 | 
			
		||||
        <appender-ref ref="console" />
 | 
			
		||||
        <appender-ref ref="async_info" />
 | 
			
		||||
        <appender-ref ref="async_error" />
 | 
			
		||||
        <appender-ref ref="easy_log_server_appender" />
 | 
			
		||||
        <appender-ref ref="snail_log_server_appender" />
 | 
			
		||||
    </root>
 | 
			
		||||
</configuration>
 | 
			
		||||
@@ -1,23 +0,0 @@
 | 
			
		||||
package org.dromara.job.easyretry;
 | 
			
		||||
 | 
			
		||||
import com.aizuda.easy.retry.client.job.core.annotation.JobExecutor;
 | 
			
		||||
import com.aizuda.easy.retry.client.job.core.dto.JobArgs;
 | 
			
		||||
import com.aizuda.easy.retry.client.model.ExecuteResult;
 | 
			
		||||
import com.aizuda.easy.retry.common.core.util.JsonUtil;
 | 
			
		||||
import com.aizuda.easy.retry.common.log.EasyRetryLog;
 | 
			
		||||
import org.springframework.stereotype.Component;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @author www.byteblogs.com
 | 
			
		||||
 * @date 2023-09-28 22:54:07
 | 
			
		||||
 */
 | 
			
		||||
@Component
 | 
			
		||||
@JobExecutor(name = "testJobExecutor")
 | 
			
		||||
public class TestAnnoJobExecutor {
 | 
			
		||||
 | 
			
		||||
    public ExecuteResult jobExecute(JobArgs jobArgs) {
 | 
			
		||||
        EasyRetryLog.LOCAL.info("testJobExecutor. jobArgs:{}", JsonUtil.toJsonString(jobArgs));
 | 
			
		||||
        EasyRetryLog.REMOTE.info("testJobExecutor. jobArgs:{}", JsonUtil.toJsonString(jobArgs));
 | 
			
		||||
        return ExecuteResult.success("测试成功");
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -0,0 +1,23 @@
 | 
			
		||||
package org.dromara.job.snailjob;
 | 
			
		||||
 | 
			
		||||
import com.aizuda.snailjob.client.job.core.annotation.JobExecutor;
 | 
			
		||||
import com.aizuda.snailjob.client.job.core.dto.JobArgs;
 | 
			
		||||
import com.aizuda.snailjob.client.model.ExecuteResult;
 | 
			
		||||
import com.aizuda.snailjob.common.core.util.JsonUtil;
 | 
			
		||||
import com.aizuda.snailjob.common.log.SnailJobLog;
 | 
			
		||||
import org.springframework.stereotype.Component;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @author opensnail
 | 
			
		||||
 * @date 2024-05-17
 | 
			
		||||
 */
 | 
			
		||||
@Component
 | 
			
		||||
@JobExecutor(name = "testJobExecutor")
 | 
			
		||||
public class TestAnnoJobExecutor {
 | 
			
		||||
 | 
			
		||||
    public ExecuteResult jobExecute(JobArgs jobArgs) {
 | 
			
		||||
        SnailJobLog.LOCAL.info("testJobExecutor. jobArgs:{}", JsonUtil.toJsonString(jobArgs));
 | 
			
		||||
        SnailJobLog.REMOTE.info("testJobExecutor. jobArgs:{}", JsonUtil.toJsonString(jobArgs));
 | 
			
		||||
        return ExecuteResult.success("测试成功");
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -1,13 +1,13 @@
 | 
			
		||||
package org.dromara.job.easyretry;
 | 
			
		||||
package org.dromara.job.snailjob;
 | 
			
		||||
 | 
			
		||||
import com.aizuda.easy.retry.client.job.core.dto.JobArgs;
 | 
			
		||||
import com.aizuda.easy.retry.client.job.core.executor.AbstractJobExecutor;
 | 
			
		||||
import com.aizuda.easy.retry.client.model.ExecuteResult;
 | 
			
		||||
import com.aizuda.snailjob.client.job.core.dto.JobArgs;
 | 
			
		||||
import com.aizuda.snailjob.client.job.core.executor.AbstractJobExecutor;
 | 
			
		||||
import com.aizuda.snailjob.client.model.ExecuteResult;
 | 
			
		||||
import org.springframework.stereotype.Component;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * @author www.byteblogs.com
 | 
			
		||||
 * @date 2023-09-28 22:54:07
 | 
			
		||||
 * @author opensnail
 | 
			
		||||
 * @date 2024-05-17
 | 
			
		||||
 */
 | 
			
		||||
@Component
 | 
			
		||||
public class TestClassJobExecutor extends AbstractJobExecutor {
 | 
			
		||||
@@ -141,9 +141,9 @@ services:
 | 
			
		||||
    privileged: true
 | 
			
		||||
    network_mode: "host"
 | 
			
		||||
 | 
			
		||||
  ruoyi-easyretry-server:
 | 
			
		||||
    image: ruoyi/ruoyi-easyretry-server:5.2.0
 | 
			
		||||
    container_name: ruoyi-easyretry-server
 | 
			
		||||
  ruoyi-snailjob-server:
 | 
			
		||||
    image: ruoyi/ruoyi-snailjob-server:5.2.0
 | 
			
		||||
    container_name: ruoyi-snailjob-server
 | 
			
		||||
    environment:
 | 
			
		||||
      # 时区上海
 | 
			
		||||
      TZ: Asia/Shanghai
 | 
			
		||||
@@ -151,6 +151,6 @@ services:
 | 
			
		||||
      - "8800:8800"
 | 
			
		||||
      - "1788:1788"
 | 
			
		||||
    volumes:
 | 
			
		||||
      - /docker/easyretry/logs/:/ruoyi/easyretry/logs
 | 
			
		||||
      - /docker/snailjob/logs/:/ruoyi/snailjob/logs
 | 
			
		||||
    privileged: true
 | 
			
		||||
    network_mode: "host"
 | 
			
		||||
 
 | 
			
		||||
@@ -31,7 +31,7 @@ http {
 | 
			
		||||
        server 127.0.0.1:9090;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    upstream easyretry-server {
 | 
			
		||||
    upstream snailjob-server {
 | 
			
		||||
        server 127.0.0.1:8800;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
@@ -96,12 +96,12 @@ http {
 | 
			
		||||
            proxy_pass http://monitor-admin/admin/;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        location /easy-retry/ {
 | 
			
		||||
        location /snail-job/ {
 | 
			
		||||
            proxy_set_header Host $http_host;
 | 
			
		||||
            proxy_set_header X-Real-IP $remote_addr;
 | 
			
		||||
            proxy_set_header REMOTE-HOST $remote_addr;
 | 
			
		||||
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 | 
			
		||||
            proxy_pass http://easyretry-server/easy-retry/;
 | 
			
		||||
            proxy_pass http://snailjob-server/snail-job/;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        error_page   500 502 503 504  /50x.html;
 | 
			
		||||
 
 | 
			
		||||
@@ -1,829 +0,0 @@
 | 
			
		||||
-- Oracle DDL
 | 
			
		||||
 | 
			
		||||
-- er_namespace
 | 
			
		||||
CREATE TABLE er_namespace
 | 
			
		||||
(
 | 
			
		||||
    id          NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    name        VARCHAR2(64) NOT NULL,
 | 
			
		||||
    unique_id   VARCHAR2(64) NOT NULL,
 | 
			
		||||
    description VARCHAR2(256) DEFAULT '',
 | 
			
		||||
    create_dt   TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt   TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    deleted     SMALLINT      DEFAULT 0
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_namespace_1 ON er_namespace (unique_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_namespace IS '命名空间';
 | 
			
		||||
COMMENT ON COLUMN er_namespace.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_namespace.name IS '名称';
 | 
			
		||||
COMMENT ON COLUMN er_namespace.unique_id IS '唯一id';
 | 
			
		||||
COMMENT ON COLUMN er_namespace.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN er_namespace.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_namespace.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON COLUMN er_namespace.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
 | 
			
		||||
-- id 为 IDENTITY 类型, 不能插入
 | 
			
		||||
INSERT INTO er_namespace(name, unique_id, description, create_dt, update_dt, deleted) VALUES('Development', 'dev', '', SYSDATE, SYSDATE, 0 );
 | 
			
		||||
INSERT INTO er_namespace(name, unique_id, description, create_dt, update_dt, deleted) VALUES ('Production', 'prod', '', sysdate, sysdate, 0);
 | 
			
		||||
 | 
			
		||||
-- er_group_config
 | 
			
		||||
CREATE TABLE er_group_config
 | 
			
		||||
(
 | 
			
		||||
    id                NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id      VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name        VARCHAR2(64) NOT NULL,
 | 
			
		||||
    description       VARCHAR2(256) DEFAULT '',
 | 
			
		||||
    token             VARCHAR2(64)  DEFAULT 'ER_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT',
 | 
			
		||||
    group_status      SMALLINT      DEFAULT 0,
 | 
			
		||||
    version           INT          NOT NULL,
 | 
			
		||||
    group_partition   INT          NOT NULL,
 | 
			
		||||
    id_generator_mode SMALLINT      DEFAULT 1,
 | 
			
		||||
    init_scene        SMALLINT      DEFAULT 0,
 | 
			
		||||
    bucket_index      INT           DEFAULT 0,
 | 
			
		||||
    create_dt         TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt         TIMESTAMP     DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_group_config_1 ON er_group_config (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_group_config IS '组配置';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.namespace_id IS '命名空间';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.description IS '组描述';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.token IS 'token';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.group_status IS '组状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.version IS '版本号';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.group_partition IS '分区';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.id_generator_mode IS '唯一id生成模式 默认号段模式';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.init_scene IS '是否初始化场景 0:否 1:是';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.bucket_index IS 'bucket';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.update_dt IS '修改时间';
 | 
			
		||||
 | 
			
		||||
INSERT INTO er_group_config(namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES ('dev', 'ruoyi_group', '', 'ER_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, SYSDATE, SYSDATE );
 | 
			
		||||
 | 
			
		||||
-- er_notify_config
 | 
			
		||||
CREATE TABLE er_notify_config
 | 
			
		||||
(
 | 
			
		||||
    id                     NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id           VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name             VARCHAR2(64)  NOT NULL,
 | 
			
		||||
    scene_name             VARCHAR2(64)  NOT NULL,
 | 
			
		||||
    notify_status          SMALLINT      DEFAULT 0,
 | 
			
		||||
    notify_type            SMALLINT      DEFAULT 0,
 | 
			
		||||
    notify_attribute       VARCHAR2(512) NOT NULL,
 | 
			
		||||
    notify_threshold       INT           DEFAULT 0,
 | 
			
		||||
    notify_scene           SMALLINT      DEFAULT 0,
 | 
			
		||||
    rate_limiter_status    SMALLINT      DEFAULT 0,
 | 
			
		||||
    rate_limiter_threshold INT           DEFAULT 0,
 | 
			
		||||
    description            VARCHAR2(256) DEFAULT '',
 | 
			
		||||
    create_dt              TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt              TIMESTAMP     DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_notify_config_1 ON er_notify_config (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_notify_config IS '通知配置';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.notify_status IS '通知状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.notify_type IS '通知类型 1、钉钉 2、邮件 3、企业微信';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.notify_attribute IS '配置属性';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.notify_threshold IS '通知阈值';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.notify_scene IS '通知场景';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.rate_limiter_status IS '限流状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.rate_limiter_threshold IS '每秒限流阈值';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.update_dt IS '修改时间';
 | 
			
		||||
 | 
			
		||||
-- er_retry_dead_letter
 | 
			
		||||
CREATE TABLE er_retry_dead_letter_0
 | 
			
		||||
(
 | 
			
		||||
    id            NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    unique_id     VARCHAR2(64) NOT NULL,
 | 
			
		||||
    namespace_id  VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name    VARCHAR2(64) NOT NULL,
 | 
			
		||||
    scene_name    VARCHAR2(64) NOT NULL,
 | 
			
		||||
    idempotent_id VARCHAR2(64) NOT NULL,
 | 
			
		||||
    biz_no        VARCHAR2(64)  DEFAULT '',
 | 
			
		||||
    executor_name VARCHAR2(512) DEFAULT '',
 | 
			
		||||
    args_str      CLOB          DEFAULT '',
 | 
			
		||||
    ext_attrs     CLOB          DEFAULT '',
 | 
			
		||||
    task_type     SMALLINT      DEFAULT 1,
 | 
			
		||||
    create_dt     TIMESTAMP     DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_retry_dead_letter_0_1 ON er_retry_dead_letter_0 (namespace_id, group_name, unique_id);
 | 
			
		||||
CREATE INDEX idx_retry_dead_letter_0_1 ON er_retry_dead_letter_0 (namespace_id, group_name, scene_name);
 | 
			
		||||
CREATE INDEX idx_retry_dead_letter_0_2 ON er_retry_dead_letter_0 (idempotent_id);
 | 
			
		||||
CREATE INDEX idx_retry_dead_letter_0_3 ON er_retry_dead_letter_0 (biz_no);
 | 
			
		||||
CREATE INDEX idx_retry_dead_letter_0_4 ON er_retry_dead_letter_0 (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_retry_dead_letter_0 IS '死信队列表';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.idempotent_id IS '幂等id';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.biz_no IS '业务编号';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.executor_name IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.task_type IS '任务类型 1、重试数据 2、回调数据';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.create_dt IS '创建时间';
 | 
			
		||||
 | 
			
		||||
-- er_retry_task
 | 
			
		||||
CREATE TABLE er_retry_task_0
 | 
			
		||||
(
 | 
			
		||||
    id              NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    unique_id       VARCHAR2(64) NOT NULL,
 | 
			
		||||
    namespace_id    VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name      VARCHAR2(64) NOT NULL,
 | 
			
		||||
    scene_name      VARCHAR2(64) NOT NULL,
 | 
			
		||||
    idempotent_id   VARCHAR2(64) NOT NULL,
 | 
			
		||||
    biz_no          VARCHAR2(64)  DEFAULT '',
 | 
			
		||||
    executor_name   VARCHAR2(512) DEFAULT '',
 | 
			
		||||
    args_str        CLOB          DEFAULT '',
 | 
			
		||||
    ext_attrs       CLOB          DEFAULT '',
 | 
			
		||||
    next_trigger_at TIMESTAMP    NOT NULL,
 | 
			
		||||
    retry_count     INT           DEFAULT 0,
 | 
			
		||||
    retry_status    SMALLINT      DEFAULT 0,
 | 
			
		||||
    task_type       SMALLINT      DEFAULT 1,
 | 
			
		||||
    create_dt       TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt       TIMESTAMP     DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_retry_task_0_1 ON er_retry_task_0 (namespace_id, group_name, unique_id);
 | 
			
		||||
CREATE INDEX idx_retry_task_0_1 ON er_retry_task_0 (namespace_id, group_name, scene_name);
 | 
			
		||||
CREATE INDEX idx_retry_task_0_2 ON er_retry_task_0 (namespace_id, group_name, retry_status);
 | 
			
		||||
CREATE INDEX idx_retry_task_0_3 ON er_retry_task_0 (idempotent_id);
 | 
			
		||||
CREATE INDEX idx_retry_task_0_4 ON er_retry_task_0 (biz_no);
 | 
			
		||||
CREATE INDEX idx_retry_task_0_5 ON er_retry_task_0 (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_retry_task_0 IS '任务表';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.idempotent_id IS '幂等id';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.biz_no IS '业务编号';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.executor_name IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.next_trigger_at IS '下次触发时间';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.retry_count IS '重试次数';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.task_type IS '任务类型 1、重试数据 2、回调数据';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.update_dt IS '修改时间';
 | 
			
		||||
 | 
			
		||||
-- er_retry_task_log
 | 
			
		||||
CREATE TABLE er_retry_task_log
 | 
			
		||||
(
 | 
			
		||||
    id            NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    unique_id     VARCHAR2(64) NOT NULL,
 | 
			
		||||
    namespace_id  VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name    VARCHAR2(64) NOT NULL,
 | 
			
		||||
    scene_name    VARCHAR2(64) NOT NULL,
 | 
			
		||||
    idempotent_id VARCHAR2(64) NOT NULL,
 | 
			
		||||
    biz_no        VARCHAR2(64)  DEFAULT '',
 | 
			
		||||
    executor_name VARCHAR2(512) DEFAULT '',
 | 
			
		||||
    args_str      CLOB          DEFAULT '',
 | 
			
		||||
    ext_attrs     CLOB          DEFAULT '',
 | 
			
		||||
    retry_status  SMALLINT      DEFAULT 0,
 | 
			
		||||
    task_type     SMALLINT      DEFAULT 1,
 | 
			
		||||
    create_dt     TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt     TIMESTAMP     DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_retry_task_log_1 ON er_retry_task_log (namespace_id, group_name, scene_name);
 | 
			
		||||
CREATE INDEX idx_retry_task_log_2 ON er_retry_task_log (retry_status);
 | 
			
		||||
CREATE INDEX idx_retry_task_log_3 ON er_retry_task_log (idempotent_id);
 | 
			
		||||
CREATE INDEX idx_retry_task_log_4 ON er_retry_task_log (namespace_id, group_name, unique_id);
 | 
			
		||||
CREATE INDEX idx_retry_task_log_5 ON er_retry_task_log (biz_no);
 | 
			
		||||
CREATE INDEX idx_retry_task_log_6 ON er_retry_task_log (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_retry_task_log IS '任务日志基础信息表';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.idempotent_id IS '幂等id';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.biz_no IS '业务编号';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.executor_name IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.retry_status IS '重试状态 0、重试中 1、成功 2、最大次数';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.task_type IS '任务类型 1、重试数据 2、回调数据';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.update_dt IS '修改时间';
 | 
			
		||||
 | 
			
		||||
-- er_retry_task_log_message
 | 
			
		||||
CREATE TABLE er_retry_task_log_message
 | 
			
		||||
(
 | 
			
		||||
    id           NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id VARCHAR2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name   VARCHAR2(64) NOT NULL,
 | 
			
		||||
    unique_id    VARCHAR2(64) NOT NULL,
 | 
			
		||||
    create_dt    TIMESTAMP    DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    message      CLOB         DEFAULT '',
 | 
			
		||||
    log_num      INT          DEFAULT 1,
 | 
			
		||||
    real_time    NUMERIC(13)  DEFAULT 0
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_retry_task_log_message_1 ON er_retry_task_log_message (namespace_id, group_name, unique_id);
 | 
			
		||||
CREATE INDEX idx_retry_task_log_message_2 ON er_retry_task_log_message (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_retry_task_log_message IS '任务调度日志信息记录表';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.namespace_id IS '命名空间';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.message IS '异常信息';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.log_num IS '日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.real_time IS '上报时间';
 | 
			
		||||
 | 
			
		||||
-- er_scene_config
 | 
			
		||||
CREATE TABLE er_scene_config
 | 
			
		||||
(
 | 
			
		||||
    id               NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id     VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    scene_name       VARCHAR2(64) NOT NULL,
 | 
			
		||||
    group_name       VARCHAR2(64) NOT NULL,
 | 
			
		||||
    scene_status     SMALLINT      DEFAULT 0,
 | 
			
		||||
    max_retry_count  INT           DEFAULT 5,
 | 
			
		||||
    back_off         SMALLINT      DEFAULT 1,
 | 
			
		||||
    trigger_interval VARCHAR2(16)  DEFAULT '',
 | 
			
		||||
    deadline_request NUMBER(20)    DEFAULT 60000,
 | 
			
		||||
    route_key        SMALLINT      DEFAULT 4,
 | 
			
		||||
    executor_timeout INT           DEFAULT 5,
 | 
			
		||||
    description      VARCHAR2(256) DEFAULT '',
 | 
			
		||||
    create_dt        TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt        TIMESTAMP     DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_scene_config_1 ON er_scene_config (namespace_id, group_name, scene_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_scene_config IS '场景配置';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.scene_status IS '组状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.max_retry_count IS '最大重试次数';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.back_off IS '1、默认等级 2、固定间隔时间 3、CRON 表达式';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.trigger_interval IS '间隔时长';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.deadline_request IS 'Deadline Request 调用链超时 单位毫秒';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.route_key IS '路由策略';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.executor_timeout IS '超时时间';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.update_dt IS '修改时间';
 | 
			
		||||
 | 
			
		||||
-- er_server_node
 | 
			
		||||
CREATE TABLE er_server_node
 | 
			
		||||
(
 | 
			
		||||
    id           NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name   VARCHAR2(64) NOT NULL,
 | 
			
		||||
    host_id      VARCHAR2(64) NOT NULL,
 | 
			
		||||
    host_ip      VARCHAR2(64) NOT NULL,
 | 
			
		||||
    context_path VARCHAR2(256) DEFAULT '/',
 | 
			
		||||
    host_port    INT          NOT NULL,
 | 
			
		||||
    expire_at    TIMESTAMP    NOT NULL,
 | 
			
		||||
    node_type    SMALLINT     NOT NULL,
 | 
			
		||||
    ext_attrs    VARCHAR2(256) DEFAULT '',
 | 
			
		||||
    create_dt    TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt    TIMESTAMP     DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_server_node_1 ON er_server_node (host_id, host_ip);
 | 
			
		||||
CREATE INDEX idx_server_node_1 ON er_server_node (expire_at, node_type);
 | 
			
		||||
CREATE INDEX idx_server_node_2 ON er_server_node (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_server_node IS '服务器节点';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.host_id IS '主机id';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.host_ip IS '机器ip';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.context_path IS '客户端上下文路径 server.servlet.context-path';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.host_port IS '机器端口';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.expire_at IS '过期时间';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.node_type IS '节点类型 1、客户端 2、是服务端';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.update_dt IS '修改时间';
 | 
			
		||||
 | 
			
		||||
-- er_distributed_lock
 | 
			
		||||
CREATE TABLE er_distributed_lock
 | 
			
		||||
(
 | 
			
		||||
    id         NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    name       VARCHAR2(64)  NOT NULL,
 | 
			
		||||
    lock_until TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    locked_at  TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    locked_by  VARCHAR2(255) NOT NULL,
 | 
			
		||||
    create_dt  TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt  TIMESTAMP DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE er_distributed_lock
 | 
			
		||||
    ADD CONSTRAINT uk_name_distributed_lock UNIQUE (name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_distributed_lock IS '锁定表';
 | 
			
		||||
COMMENT ON COLUMN er_distributed_lock.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_distributed_lock.name IS '锁名称';
 | 
			
		||||
COMMENT ON COLUMN er_distributed_lock.lock_until IS '锁定时长';
 | 
			
		||||
COMMENT ON COLUMN er_distributed_lock.locked_at IS '锁定时间';
 | 
			
		||||
COMMENT ON COLUMN er_distributed_lock.locked_by IS '锁定者';
 | 
			
		||||
COMMENT ON COLUMN er_distributed_lock.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_distributed_lock.update_dt IS '修改时间';
 | 
			
		||||
 | 
			
		||||
-- er_system_user
 | 
			
		||||
CREATE TABLE er_system_user
 | 
			
		||||
(
 | 
			
		||||
    id        NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    username  VARCHAR2(64)  NOT NULL,
 | 
			
		||||
    password  VARCHAR2(128) NOT NULL,
 | 
			
		||||
    role      SMALLINT  DEFAULT 0,
 | 
			
		||||
    create_dt TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt TIMESTAMP DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_system_user_1 ON er_system_user (username);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_system_user IS '系统用户表';
 | 
			
		||||
COMMENT ON COLUMN er_system_user.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_system_user.username IS '账号';
 | 
			
		||||
COMMENT ON COLUMN er_system_user.password IS '密码';
 | 
			
		||||
COMMENT ON COLUMN er_system_user.role IS '角色:1-普通用户、2-管理员';
 | 
			
		||||
COMMENT ON COLUMN er_system_user.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_system_user.update_dt IS '修改时间';
 | 
			
		||||
 | 
			
		||||
-- pwd: admin
 | 
			
		||||
INSERT INTO er_system_user(username, password, role, create_dt, update_dt) VALUES ('admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2, SYSDATE, SYSDATE);
 | 
			
		||||
 | 
			
		||||
-- er_system_user_permission
 | 
			
		||||
CREATE TABLE er_system_user_permission
 | 
			
		||||
(
 | 
			
		||||
    id             NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id   VARCHAR2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name     VARCHAR2(64) NOT NULL,
 | 
			
		||||
    system_user_id NUMBER(20)   NOT NULL,
 | 
			
		||||
    create_dt      TIMESTAMP    DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt      TIMESTAMP    DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_system_user_permission_1 ON er_system_user_permission (namespace_id, group_name, system_user_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_system_user_permission IS '系统用户权限表';
 | 
			
		||||
COMMENT ON COLUMN er_system_user_permission.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_system_user_permission.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_system_user_permission.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_system_user_permission.system_user_id IS '系统用户id';
 | 
			
		||||
COMMENT ON COLUMN er_system_user_permission.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_system_user_permission.update_dt IS '修改时间';
 | 
			
		||||
 | 
			
		||||
-- er_sequence_alloc
 | 
			
		||||
CREATE TABLE er_sequence_alloc
 | 
			
		||||
(
 | 
			
		||||
    id           NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id VARCHAR2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name   VARCHAR2(64) DEFAULT '',
 | 
			
		||||
    max_id       NUMBER(20)   DEFAULT 1,
 | 
			
		||||
    step         INT          DEFAULT 100,
 | 
			
		||||
    update_dt    TIMESTAMP    DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sequence_alloc_1 ON er_sequence_alloc (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_sequence_alloc IS '号段模式序号ID分配表';
 | 
			
		||||
COMMENT ON COLUMN er_sequence_alloc.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_sequence_alloc.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_sequence_alloc.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_sequence_alloc.max_id IS '最大id';
 | 
			
		||||
COMMENT ON COLUMN er_sequence_alloc.step IS '步长';
 | 
			
		||||
COMMENT ON COLUMN er_sequence_alloc.update_dt IS '更新时间';
 | 
			
		||||
 | 
			
		||||
-- er_job
 | 
			
		||||
CREATE TABLE er_job
 | 
			
		||||
(
 | 
			
		||||
    id               NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id     VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name       VARCHAR2(64)  NOT NULL,
 | 
			
		||||
    job_name         VARCHAR2(64)  NOT NULL,
 | 
			
		||||
    args_str         CLOB          DEFAULT '',
 | 
			
		||||
    args_type        SMALLINT      DEFAULT 1,
 | 
			
		||||
    next_trigger_at  NUMBER(20)    NOT NULL,
 | 
			
		||||
    job_status       SMALLINT      DEFAULT 1,
 | 
			
		||||
    task_type        SMALLINT      DEFAULT 1,
 | 
			
		||||
    route_key        SMALLINT      DEFAULT 4,
 | 
			
		||||
    executor_type    SMALLINT      DEFAULT 1,
 | 
			
		||||
    executor_info    VARCHAR2(255) DEFAULT NULL,
 | 
			
		||||
    trigger_type     SMALLINT      NOT NULL,
 | 
			
		||||
    trigger_interval VARCHAR2(255) NOT NULL,
 | 
			
		||||
    block_strategy   SMALLINT      DEFAULT 1,
 | 
			
		||||
    executor_timeout INT           DEFAULT 0,
 | 
			
		||||
    max_retry_times  INT           DEFAULT 0,
 | 
			
		||||
    parallel_num     INT           DEFAULT 1,
 | 
			
		||||
    retry_interval   INT           DEFAULT 0,
 | 
			
		||||
    bucket_index     INT           DEFAULT 0,
 | 
			
		||||
    resident         SMALLINT      DEFAULT 0,
 | 
			
		||||
    description      VARCHAR2(256) DEFAULT '',
 | 
			
		||||
    ext_attrs        VARCHAR2(256) DEFAULT '',
 | 
			
		||||
    create_dt        TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt        TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    deleted          SMALLINT      DEFAULT 0
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_job_1 ON er_job (namespace_id, group_name);
 | 
			
		||||
CREATE INDEX idx_job_2 ON er_job (job_status, bucket_index);
 | 
			
		||||
CREATE INDEX idx_job_3 ON er_job (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_job IS '任务信息';
 | 
			
		||||
COMMENT ON COLUMN er_job.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_job.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_job.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_job.job_name IS '名称';
 | 
			
		||||
COMMENT ON COLUMN er_job.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN er_job.args_type IS '参数类型';
 | 
			
		||||
COMMENT ON COLUMN er_job.next_trigger_at IS '下次触发时间';
 | 
			
		||||
COMMENT ON COLUMN er_job.job_status IS '重试状态 0、关闭、1、开启';
 | 
			
		||||
COMMENT ON COLUMN er_job.task_type IS '任务类型 1、集群 2、广播 3、切片';
 | 
			
		||||
COMMENT ON COLUMN er_job.route_key IS '路由策略';
 | 
			
		||||
COMMENT ON COLUMN er_job.executor_type IS '执行器类型';
 | 
			
		||||
COMMENT ON COLUMN er_job.executor_info IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN er_job.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间';
 | 
			
		||||
COMMENT ON COLUMN er_job.trigger_interval IS '间隔时长';
 | 
			
		||||
COMMENT ON COLUMN er_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
 | 
			
		||||
COMMENT ON COLUMN er_job.executor_timeout IS '任务执行超时时间,单位秒';
 | 
			
		||||
COMMENT ON COLUMN er_job.max_retry_times IS '最大重试次数';
 | 
			
		||||
COMMENT ON COLUMN er_job.parallel_num IS '并行数';
 | 
			
		||||
COMMENT ON COLUMN er_job.retry_interval IS '更新重试间隔(s)';
 | 
			
		||||
COMMENT ON COLUMN er_job.bucket_index IS 'bucket';
 | 
			
		||||
COMMENT ON COLUMN er_job.resident IS '是否是常驻任务';
 | 
			
		||||
COMMENT ON COLUMN er_job.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN er_job.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN er_job.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_job.update_dt IS '更新时间';
 | 
			
		||||
COMMENT ON COLUMN er_job.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
 | 
			
		||||
INSERT INTO er_job (namespace_id, group_name, job_name, args_str, args_type, next_trigger_at, job_status, task_type, route_key, executor_type, executor_info, trigger_type, trigger_interval, block_strategy,executor_timeout, max_retry_times, parallel_num, retry_interval, bucket_index, resident, description, ext_attrs, create_dt, update_dt, deleted)
 | 
			
		||||
VALUES ('dev', 'ruoyi_group', 'demo-job', NULL, 1, 1710344035622, 1, 1, 4, 1, 'testJobExecutor', 2, '60', 1, 60, 3, 1, 1, 116, 0, '', '', SYSDATE, SYSDATE, 0);
 | 
			
		||||
 | 
			
		||||
-- er_job_log_message
 | 
			
		||||
CREATE TABLE er_job_log_message
 | 
			
		||||
(
 | 
			
		||||
    id            NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id  VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name    VARCHAR2(64) NOT NULL,
 | 
			
		||||
    job_id        NUMBER(20)   NOT NULL,
 | 
			
		||||
    task_batch_id NUMBER(20)   NOT NULL,
 | 
			
		||||
    task_id       NUMBER(20)   NOT NULL,
 | 
			
		||||
    message       CLOB          DEFAULT '',
 | 
			
		||||
    log_num       INT           DEFAULT 1,
 | 
			
		||||
    real_time     NUMBER(20)    DEFAULT 0,
 | 
			
		||||
    ext_attrs     VARCHAR2(256) DEFAULT '',
 | 
			
		||||
    create_dt     TIMESTAMP     DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_job_log_message_1 ON er_job_log_message (namespace_id, group_name);
 | 
			
		||||
CREATE INDEX idx_job_log_message_2 ON er_job_log_message (task_batch_id, task_id);
 | 
			
		||||
CREATE INDEX idx_job_log_message_3 ON er_job_log_message (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_job_log_message IS '调度日志';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.task_batch_id IS '任务批次id';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.task_id IS '调度任务id';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.message IS '调度信息';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.log_num IS '日志序号';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.real_time IS '实际时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.ext_attrs IS '扩展字段';
 | 
			
		||||
 | 
			
		||||
-- er_job_task
 | 
			
		||||
CREATE TABLE er_job_task
 | 
			
		||||
(
 | 
			
		||||
    id             NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id   VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name     VARCHAR2(64) NOT NULL,
 | 
			
		||||
    job_id         NUMBER(20)   NOT NULL,
 | 
			
		||||
    task_batch_id  NUMBER(20)   NOT NULL,
 | 
			
		||||
    parent_id      NUMBER(20)    DEFAULT 0,
 | 
			
		||||
    task_status    SMALLINT      DEFAULT 0,
 | 
			
		||||
    retry_count    INT           DEFAULT 0,
 | 
			
		||||
    client_info    VARCHAR2(128) DEFAULT NULL,
 | 
			
		||||
    result_message CLOB          DEFAULT '',
 | 
			
		||||
    args_str       CLOB          DEFAULT '',
 | 
			
		||||
    args_type      SMALLINT      DEFAULT 1,
 | 
			
		||||
    ext_attrs      VARCHAR2(256) DEFAULT '',
 | 
			
		||||
    create_dt      TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt      TIMESTAMP     DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_job_task_1 ON er_job_task (namespace_id, group_name);
 | 
			
		||||
CREATE INDEX idx_job_task_2 ON er_job_task (task_batch_id, task_status);
 | 
			
		||||
CREATE INDEX idx_job_task_3 ON er_job_task (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_job_task IS '任务实例';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.task_batch_id IS '任务批次id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.parent_id IS '父执行器id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.task_status IS '执行的状态 0、失败 1、成功';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.retry_count IS '重试次数';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.client_info IS '客户端地址 clientId#ip:port';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.result_message IS '调度信息';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.args_type IS '参数类型';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.update_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.ext_attrs IS '扩展字段';
 | 
			
		||||
 | 
			
		||||
-- er_job_task_batch
 | 
			
		||||
CREATE TABLE er_job_task_batch
 | 
			
		||||
(
 | 
			
		||||
    id                      NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id            VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name              VARCHAR2(64) NOT NULL,
 | 
			
		||||
    job_id                  NUMBER(20)   NOT NULL,
 | 
			
		||||
    workflow_node_id        NUMBER(20)    DEFAULT 0,
 | 
			
		||||
    parent_workflow_node_id NUMBER(20)    DEFAULT 0,
 | 
			
		||||
    workflow_task_batch_id  NUMBER(20)    DEFAULT 0,
 | 
			
		||||
    parent_id               VARCHAR2(64)  DEFAULT '',
 | 
			
		||||
    task_batch_status       SMALLINT      DEFAULT 0,
 | 
			
		||||
    operation_reason        SMALLINT      DEFAULT 0,
 | 
			
		||||
    execution_at            NUMBER(20)    DEFAULT 0,
 | 
			
		||||
    system_task_type        SMALLINT      DEFAULT 3,
 | 
			
		||||
    ext_attrs               VARCHAR2(256) DEFAULT '',
 | 
			
		||||
    deleted                 SMALLINT      DEFAULT 0,
 | 
			
		||||
    create_dt               TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt               TIMESTAMP     DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_job_task_batch_1 ON er_job_task_batch (namespace_id, group_name);
 | 
			
		||||
CREATE INDEX idx_job_task_batch_2 ON er_job_task_batch (job_id, task_batch_status);
 | 
			
		||||
CREATE INDEX idx_job_task_batch_3 ON er_job_task_batch (create_dt);
 | 
			
		||||
CREATE INDEX idx_job_task_batch_4 ON er_job_task_batch (workflow_task_batch_id, workflow_node_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_job_task_batch IS '任务批次';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.operation_reason IS '操作原因';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.workflow_node_id IS '工作流节点id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.parent_workflow_node_id IS '父节点';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.workflow_task_batch_id IS '任务批次id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.system_task_type IS '任务类型 0、系统任务 1、业务任务';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.execution_at IS '任务执行时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.parent_id IS '父节点';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.update_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.ext_attrs IS '扩展字段';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_job_notify_config
 | 
			
		||||
(
 | 
			
		||||
    id                     NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id           VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name             VARCHAR2(64)  NOT NULL,
 | 
			
		||||
    job_id                 NUMBER(20)    NOT NULL,
 | 
			
		||||
    notify_status          SMALLINT      DEFAULT 0,
 | 
			
		||||
    notify_type            SMALLINT      DEFAULT 0,
 | 
			
		||||
    notify_attribute       VARCHAR2(512) NOT NULL,
 | 
			
		||||
    notify_threshold       INT           DEFAULT 0,
 | 
			
		||||
    notify_scene           SMALLINT      DEFAULT 0,
 | 
			
		||||
    rate_limiter_status    SMALLINT      DEFAULT 0,
 | 
			
		||||
    rate_limiter_threshold INT           DEFAULT 0,
 | 
			
		||||
    description            VARCHAR2(256) DEFAULT '',
 | 
			
		||||
    create_dt              TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt              TIMESTAMP     DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_job_notify_config_1 ON er_job_notify_config (namespace_id, group_name, job_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_job_notify_config IS '通知配置';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.notify_status IS '通知状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.notify_type IS '通知类型 1、钉钉 2、邮件 3、企业微信';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.notify_attribute IS '配置属性';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.notify_threshold IS '通知阈值';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.notify_scene IS '通知场景';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.rate_limiter_status IS '限流状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.rate_limiter_threshold IS '每秒限流阈值';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.update_dt IS '修改时间';
 | 
			
		||||
 | 
			
		||||
-- er_retry_summary
 | 
			
		||||
CREATE TABLE er_retry_summary
 | 
			
		||||
(
 | 
			
		||||
    id            NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id  VARCHAR2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name    VARCHAR2(64) DEFAULT '',
 | 
			
		||||
    scene_name    VARCHAR2(50) DEFAULT '',
 | 
			
		||||
    trigger_at    TIMESTAMP    DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    running_num   INT          DEFAULT 0,
 | 
			
		||||
    finish_num    INT          DEFAULT 0,
 | 
			
		||||
    max_count_num INT          DEFAULT 0,
 | 
			
		||||
    suspend_num   INT          DEFAULT 0,
 | 
			
		||||
    create_dt     TIMESTAMP    DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt     TIMESTAMP    DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_retry_summary_1 ON er_retry_summary (namespace_id, group_name, scene_name, trigger_at);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_retry_summary IS 'DashBoard_Retry';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.trigger_at IS '统计时间';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.running_num IS '重试中-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.finish_num IS '重试完成-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.max_count_num IS '重试到达最大次数-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.suspend_num IS '暂停重试-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.update_dt IS '修改时间';
 | 
			
		||||
 | 
			
		||||
-- er_job_summary
 | 
			
		||||
CREATE TABLE er_job_summary
 | 
			
		||||
(
 | 
			
		||||
    id               NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id     VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name       VARCHAR2(64)  DEFAULT '',
 | 
			
		||||
    business_id      NUMBER(20) NOT NULL,
 | 
			
		||||
    system_task_type SMALLINT      DEFAULT '3',
 | 
			
		||||
    trigger_at       TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    success_num      INT           DEFAULT 0,
 | 
			
		||||
    fail_num         INT           DEFAULT 0,
 | 
			
		||||
    fail_reason      VARCHAR2(512) DEFAULT '',
 | 
			
		||||
    stop_num         INT           DEFAULT 0,
 | 
			
		||||
    stop_reason      VARCHAR2(512) DEFAULT '',
 | 
			
		||||
    cancel_num       INT           DEFAULT 0,
 | 
			
		||||
    cancel_reason    VARCHAR2(512) DEFAULT '',
 | 
			
		||||
    create_dt        TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt        TIMESTAMP     DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_job_summary_1 ON er_job_summary (trigger_at, system_task_type, business_id);
 | 
			
		||||
CREATE INDEX idx_job_summary_1 ON er_job_summary (namespace_id, group_name, business_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_job_summary IS 'DashBoard_Job';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.business_id IS '业务id (job_id或workflow_id)';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.trigger_at IS '统计时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.success_num IS '执行成功-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.fail_num IS '执行失败-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.fail_reason IS '失败原因';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.stop_num IS '执行失败-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.stop_reason IS '失败原因';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.cancel_num IS '执行失败-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.cancel_reason IS '失败原因';
 | 
			
		||||
 | 
			
		||||
-- er_workflow
 | 
			
		||||
CREATE TABLE er_workflow
 | 
			
		||||
(
 | 
			
		||||
    id               NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    workflow_name    VARCHAR2(64)  NOT NULL,
 | 
			
		||||
    namespace_id     VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name       VARCHAR2(64)  NOT NULL,
 | 
			
		||||
    workflow_status  SMALLINT      DEFAULT 1,
 | 
			
		||||
    trigger_type     SMALLINT      NOT NULL,
 | 
			
		||||
    trigger_interval VARCHAR2(255) NOT NULL,
 | 
			
		||||
    next_trigger_at  NUMBER(20)    NOT NULL,
 | 
			
		||||
    block_strategy   SMALLINT      DEFAULT 1,
 | 
			
		||||
    executor_timeout INT           DEFAULT 0,
 | 
			
		||||
    description      VARCHAR2(256) DEFAULT '',
 | 
			
		||||
    flow_info        CLOB          DEFAULT '',
 | 
			
		||||
    bucket_index     INT           DEFAULT 0,
 | 
			
		||||
    version          INT           NOT NULL,
 | 
			
		||||
    create_dt        TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt        TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    deleted          SMALLINT      DEFAULT 0,
 | 
			
		||||
    ext_attrs        VARCHAR2(256) DEFAULT ''
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_workflow_1 ON er_workflow (create_dt);
 | 
			
		||||
CREATE INDEX idx_workflow_2 ON er_workflow (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_workflow IS '工作流';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.workflow_name IS '工作流名称';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.workflow_status IS '工作流状态 0、关闭、1、开启';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.trigger_interval IS '间隔时长';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.next_trigger_at IS '下次触发时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.executor_timeout IS '任务执行超时时间,单位秒';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.flow_info IS '流程信息';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.bucket_index IS 'bucket';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.version IS '版本号';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.ext_attrs IS '扩展字段';
 | 
			
		||||
 | 
			
		||||
-- er_workflow_node
 | 
			
		||||
CREATE TABLE er_workflow_node
 | 
			
		||||
(
 | 
			
		||||
    id                   NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id         VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    node_name            VARCHAR2(64) NOT NULL,
 | 
			
		||||
    group_name           VARCHAR2(64) NOT NULL,
 | 
			
		||||
    job_id               NUMBER(20)   NOT NULL,
 | 
			
		||||
    workflow_id          NUMBER(20)   NOT NULL,
 | 
			
		||||
    node_type            SMALLINT      DEFAULT 1,
 | 
			
		||||
    expression_type      SMALLINT      DEFAULT 0,
 | 
			
		||||
    fail_strategy        SMALLINT      DEFAULT 1,
 | 
			
		||||
    workflow_node_status SMALLINT      DEFAULT 1,
 | 
			
		||||
    priority_level       INT           DEFAULT 1,
 | 
			
		||||
    node_info            CLOB          DEFAULT '',
 | 
			
		||||
    version              INT          NOT NULL,
 | 
			
		||||
    create_dt            TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt            TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    deleted              SMALLINT      DEFAULT 0,
 | 
			
		||||
    ext_attrs            VARCHAR2(256) DEFAULT ''
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_workflow_node_1 ON er_workflow_node (create_dt);
 | 
			
		||||
CREATE INDEX idx_workflow_node_2 ON er_workflow_node (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_workflow_node IS '工作流节点';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.node_name IS '节点名称';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.workflow_id IS '工作流ID';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.node_type IS '1、任务节点 2、条件节点';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.expression_type IS '1、SpEl、2、Aviator 3、QL';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.fail_strategy IS '失败策略 1、跳过 2、阻塞';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.workflow_node_status IS '工作流节点状态 0、关闭、1、开启';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.priority_level IS '优先级';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.node_info IS '节点信息';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.version IS '版本号';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.ext_attrs IS '扩展字段';
 | 
			
		||||
 | 
			
		||||
-- er_workflow_task_batch
 | 
			
		||||
CREATE TABLE er_workflow_task_batch
 | 
			
		||||
(
 | 
			
		||||
    id                NUMBER GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id      VARCHAR2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name        VARCHAR2(64) NOT NULL,
 | 
			
		||||
    workflow_id       NUMBER(20)   NOT NULL,
 | 
			
		||||
    task_batch_status SMALLINT      DEFAULT 0,
 | 
			
		||||
    operation_reason  SMALLINT      DEFAULT 0,
 | 
			
		||||
    flow_info         CLOB          DEFAULT '',
 | 
			
		||||
    execution_at      NUMBER(20)    DEFAULT 0,
 | 
			
		||||
    create_dt         TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt         TIMESTAMP     DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    deleted           SMALLINT      DEFAULT 0,
 | 
			
		||||
    ext_attrs         VARCHAR2(256) DEFAULT ''
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_workflow_task_batch_1 ON er_workflow_task_batch (workflow_id, task_batch_status);
 | 
			
		||||
CREATE INDEX idx_workflow_task_batch_2 ON er_workflow_task_batch (create_dt);
 | 
			
		||||
CREATE INDEX idx_workflow_task_batch_3 ON er_workflow_task_batch (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_workflow_task_batch IS '工作流批次';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.workflow_id IS '工作流任务id';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.operation_reason IS '操作原因';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.flow_info IS '流程信息';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.execution_at IS '任务执行时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.ext_attrs IS '扩展字段';
 | 
			
		||||
@@ -452,8 +452,8 @@ insert into sys_menu values('123',  '客户端管理',   '1',   '11', 'client',
 | 
			
		||||
insert into sys_menu values('117',  'Admin监控',   '2',    '5', 'Admin',            'monitor/admin/index',         '', 1, 0, 'C', '0', '0', 'monitor:admin:list',          'dashboard',     103, 1, sysdate, null, null, 'Admin监控菜单');
 | 
			
		||||
-- oss菜单
 | 
			
		||||
insert into sys_menu values('118',  '文件管理',     '1',    '10', 'oss',             'system/oss/index',            '', 1, 0, 'C', '0', '0', 'system:oss:list',             'upload',        103, 1, sysdate, null, null, '文件管理菜单');
 | 
			
		||||
-- powerjob server控制台
 | 
			
		||||
insert into sys_menu values('120',  '任务调度中心',  '2',    '5', 'easyretry',           'monitor/easyretry/index',        '', 1, 0, 'C', '0', '0', 'monitor:easyretry:list', 'job',           103, 1, sysdate, null, null, 'easyretry控制台菜单');
 | 
			
		||||
-- snail-job server控制台
 | 
			
		||||
insert into sys_menu values('120',  '任务调度中心',  '2',    '5', 'snailjob',           'monitor/snailjob/index',        '', 1, 0, 'C', '0', '0', 'monitor:snailjob:list', 'job',           103, 1, sysdate, null, null, 'snailjob控制台菜单');
 | 
			
		||||
 | 
			
		||||
-- 三级菜单
 | 
			
		||||
insert into sys_menu values('500',  '操作日志', '108', '1', 'operlog',    'monitor/operlog/index',    '', 1, 0, 'C', '0', '0', 'monitor:operlog:list',    'form',          103, 1, sysdate, null, null, '操作日志菜单');
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										894
									
								
								script/sql/oracle/snail_job_oracle.sql
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										894
									
								
								script/sql/oracle/snail_job_oracle.sql
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,894 @@
 | 
			
		||||
/*
 | 
			
		||||
 SnailJob Database Transfer Tool
 | 
			
		||||
 Source Server Type    : MySQL
 | 
			
		||||
 Target Server Type    : Oracle
 | 
			
		||||
 Date: 2024-05-14 23:36:38
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
-- sj_namespace
 | 
			
		||||
CREATE TABLE sj_namespace
 | 
			
		||||
(
 | 
			
		||||
    id          number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    name        varchar2(64)                            NULL,
 | 
			
		||||
    unique_id   varchar2(64)                            NULL,
 | 
			
		||||
    description varchar2(256) DEFAULT ''                NULL,
 | 
			
		||||
    deleted     smallint      DEFAULT 0                 NOT NULL,
 | 
			
		||||
    create_dt   date          DEFAULT CURRENT_TIMESTAMP NOT NULL,
 | 
			
		||||
    update_dt   date          DEFAULT CURRENT_TIMESTAMP NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_namespace
 | 
			
		||||
    ADD CONSTRAINT pk_sj_namespace PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_namespace_01 ON sj_namespace (name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_namespace.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_namespace.name IS '名称';
 | 
			
		||||
COMMENT ON COLUMN sj_namespace.unique_id IS '唯一id';
 | 
			
		||||
COMMENT ON COLUMN sj_namespace.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN sj_namespace.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN sj_namespace.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_namespace.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_namespace IS '命名空间';
 | 
			
		||||
 | 
			
		||||
INSERT INTO sj_namespace(name, unique_id, description, deleted, create_dt, update_dt) VALUES ('Development', 'dev', '', 0, sysdate, sysdate);
 | 
			
		||||
INSERT INTO sj_namespace(name, unique_id, description, deleted, create_dt, update_dt) VALUES ('Production', 'prod', '', 0, sysdate, sysdate);
 | 
			
		||||
 | 
			
		||||
-- sj_group_config
 | 
			
		||||
CREATE TABLE sj_group_config
 | 
			
		||||
(
 | 
			
		||||
    id                number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id      varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a'    NULL,
 | 
			
		||||
    group_name        varchar2(64)  DEFAULT ''                                    NULL,
 | 
			
		||||
    description       varchar2(256) DEFAULT ''                                    NULL,
 | 
			
		||||
    token             varchar2(64)  DEFAULT 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT' NULL,
 | 
			
		||||
    group_status      smallint      DEFAULT 0                                     NOT NULL,
 | 
			
		||||
    version           number                                                      NOT NULL,
 | 
			
		||||
    group_partition   number                                                      NOT NULL,
 | 
			
		||||
    id_generator_mode smallint      DEFAULT 1                                     NOT NULL,
 | 
			
		||||
    init_scene        smallint      DEFAULT 0                                     NOT NULL,
 | 
			
		||||
    bucket_index      number        DEFAULT 0                                     NOT NULL,
 | 
			
		||||
    create_dt         date          DEFAULT CURRENT_TIMESTAMP                     NOT NULL,
 | 
			
		||||
    update_dt         date          DEFAULT CURRENT_TIMESTAMP                     NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_group_config
 | 
			
		||||
    ADD CONSTRAINT pk_sj_group_config PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_group_config_01 ON sj_group_config (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.description IS '组描述';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.token IS 'token';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.group_status IS '组状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.version IS '版本号';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.group_partition IS '分区';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.id_generator_mode IS '唯一id生成模式 默认号段模式';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.init_scene IS '是否初始化场景 0:否 1:是';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.bucket_index IS 'bucket';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_group_config IS '组配置';
 | 
			
		||||
 | 
			
		||||
INSERT INTO sj_group_config (namespace_id, group_name, description, token, group_status, version, group_partition, id_generator_mode, init_scene, bucket_index, create_dt, update_dt) VALUES ('dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, sysdate, sysdate);
 | 
			
		||||
 | 
			
		||||
-- sj_notify_config
 | 
			
		||||
CREATE TABLE sj_notify_config
 | 
			
		||||
(
 | 
			
		||||
    id                     number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id           varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    group_name             varchar2(64)                                             NULL,
 | 
			
		||||
    business_id            varchar2(64)                                             NULL,
 | 
			
		||||
    system_task_type       smallint      DEFAULT 3                                  NOT NULL,
 | 
			
		||||
    notify_status          smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    recipient_ids          varchar2(128)                                            NULL,
 | 
			
		||||
    notify_threshold       number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    notify_scene           smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    rate_limiter_status    smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    rate_limiter_threshold number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    description            varchar2(256) DEFAULT ''                                 NULL,
 | 
			
		||||
    create_dt              date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt              date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_notify_config
 | 
			
		||||
    ADD CONSTRAINT pk_sj_notify_config PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_notify_config_01 ON sj_notify_config (namespace_id, group_name, business_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.business_id IS '业务id  ( job_id或workflow_id或scene_name ) ';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.system_task_type IS '任务类型 1. 重试任务 2. 重试回调 3、JOB任务 4、WORKFLOW任务';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.notify_status IS '通知状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.recipient_ids IS '接收人id列表';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.notify_threshold IS '通知阈值';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.notify_scene IS '通知场景';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.rate_limiter_status IS '限流状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.rate_limiter_threshold IS '每秒限流阈值';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_notify_config IS '通知配置';
 | 
			
		||||
 | 
			
		||||
-- sj_notify_recipient
 | 
			
		||||
CREATE TABLE sj_notify_recipient
 | 
			
		||||
(
 | 
			
		||||
    id               number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id     varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    recipient_name   varchar2(64)                                             NULL,
 | 
			
		||||
    notify_type      smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    notify_attribute varchar2(512)                                            NULL,
 | 
			
		||||
    description      varchar2(256) DEFAULT ''                                 NULL,
 | 
			
		||||
    create_dt        date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt        date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_notify_recipient
 | 
			
		||||
    ADD CONSTRAINT pk_sj_notify_recipient PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_notify_recipient_01 ON sj_notify_recipient (namespace_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.recipient_name IS '接收人名称';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.notify_type IS '通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.notify_attribute IS '配置属性';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_notify_recipient IS '告警通知接收人';
 | 
			
		||||
 | 
			
		||||
-- sj_retry_dead_letter_0
 | 
			
		||||
CREATE TABLE sj_retry_dead_letter_0
 | 
			
		||||
(
 | 
			
		||||
    id            number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id  varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    unique_id     varchar2(64)                                             NULL,
 | 
			
		||||
    group_name    varchar2(64)                                             NULL,
 | 
			
		||||
    scene_name    varchar2(64)                                             NULL,
 | 
			
		||||
    idempotent_id varchar2(64)                                             NULL,
 | 
			
		||||
    biz_no        varchar2(64)  DEFAULT ''                                 NULL,
 | 
			
		||||
    executor_name varchar2(512) DEFAULT ''                                 NULL,
 | 
			
		||||
    args_str      clob                                                     NULL,
 | 
			
		||||
    ext_attrs     clob                                                     NULL,
 | 
			
		||||
    task_type     smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    create_dt     date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_retry_dead_letter_0
 | 
			
		||||
    ADD CONSTRAINT pk_sj_retry_dead_letter_0 PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, unique_id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, scene_name);
 | 
			
		||||
CREATE INDEX idx_sj_retry_dead_letter_0_02 ON sj_retry_dead_letter_0 (idempotent_id);
 | 
			
		||||
CREATE INDEX idx_sj_retry_dead_letter_0_03 ON sj_retry_dead_letter_0 (biz_no);
 | 
			
		||||
CREATE INDEX idx_sj_retry_dead_letter_0_04 ON sj_retry_dead_letter_0 (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.idempotent_id IS '幂等id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.biz_no IS '业务编号';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.executor_name IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.task_type IS '任务类型 1、重试数据 2、回调数据';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON TABLE sj_retry_dead_letter_0 IS '死信队列表';
 | 
			
		||||
 | 
			
		||||
-- sj_retry_task_0
 | 
			
		||||
CREATE TABLE sj_retry_task_0
 | 
			
		||||
(
 | 
			
		||||
    id              number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id    varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    unique_id       varchar2(64)                                             NULL,
 | 
			
		||||
    group_name      varchar2(64)                                             NULL,
 | 
			
		||||
    scene_name      varchar2(64)                                             NULL,
 | 
			
		||||
    idempotent_id   varchar2(64)                                             NULL,
 | 
			
		||||
    biz_no          varchar2(64)  DEFAULT ''                                 NULL,
 | 
			
		||||
    executor_name   varchar2(512) DEFAULT ''                                 NULL,
 | 
			
		||||
    args_str        clob                                                     NULL,
 | 
			
		||||
    ext_attrs       clob                                                     NULL,
 | 
			
		||||
    next_trigger_at date                                                     NOT NULL,
 | 
			
		||||
    retry_count     number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    retry_status    smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    task_type       smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    create_dt       date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt       date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_retry_task_0
 | 
			
		||||
    ADD CONSTRAINT pk_sj_retry_task_0 PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, unique_id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, scene_name);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_0_02 ON sj_retry_task_0 (namespace_id, group_name, task_type);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_0_03 ON sj_retry_task_0 (namespace_id, group_name, retry_status);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_0_04 ON sj_retry_task_0 (idempotent_id);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_0_05 ON sj_retry_task_0 (biz_no);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_0_06 ON sj_retry_task_0 (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.idempotent_id IS '幂等id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.biz_no IS '业务编号';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.executor_name IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.next_trigger_at IS '下次触发时间';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.retry_count IS '重试次数';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.task_type IS '任务类型 1、重试数据 2、回调数据';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_retry_task_0 IS '任务表';
 | 
			
		||||
 | 
			
		||||
-- sj_retry_task_log
 | 
			
		||||
CREATE TABLE sj_retry_task_log
 | 
			
		||||
(
 | 
			
		||||
    id            number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id  varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    unique_id     varchar2(64)                                             NULL,
 | 
			
		||||
    group_name    varchar2(64)                                             NULL,
 | 
			
		||||
    scene_name    varchar2(64)                                             NULL,
 | 
			
		||||
    idempotent_id varchar2(64)                                             NULL,
 | 
			
		||||
    biz_no        varchar2(64)  DEFAULT ''                                 NULL,
 | 
			
		||||
    executor_name varchar2(512) DEFAULT ''                                 NULL,
 | 
			
		||||
    args_str      clob                                                     NULL,
 | 
			
		||||
    ext_attrs     clob                                                     NULL,
 | 
			
		||||
    retry_status  smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    task_type     smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    create_dt     date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt     date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_retry_task_log
 | 
			
		||||
    ADD CONSTRAINT pk_sj_retry_task_log PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_01 ON sj_retry_task_log (namespace_id, group_name, scene_name);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_02 ON sj_retry_task_log (retry_status);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_03 ON sj_retry_task_log (idempotent_id);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_04 ON sj_retry_task_log (unique_id);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_05 ON sj_retry_task_log (biz_no);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_06 ON sj_retry_task_log (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.idempotent_id IS '幂等id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.biz_no IS '业务编号';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.executor_name IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.retry_status IS '重试状态 0、重试中 1、成功 2、最大次数';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.task_type IS '任务类型 1、重试数据 2、回调数据';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_retry_task_log IS '任务日志基础信息表';
 | 
			
		||||
 | 
			
		||||
-- sj_retry_task_log_message
 | 
			
		||||
CREATE TABLE sj_retry_task_log_message
 | 
			
		||||
(
 | 
			
		||||
    id           number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    group_name   varchar2(64)                                            NULL,
 | 
			
		||||
    unique_id    varchar2(64)                                            NULL,
 | 
			
		||||
    message      clob                                                    NULL,
 | 
			
		||||
    log_num      number       DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    real_time    number       DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    create_dt    date         DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_retry_task_log_message
 | 
			
		||||
    ADD CONSTRAINT pk_sj_retry_task_log_message PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, unique_id);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_message_02 ON sj_retry_task_log_message (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.message IS '异常信息';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.log_num IS '日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.real_time IS '上报时间';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON TABLE sj_retry_task_log_message IS '任务调度日志信息记录表';
 | 
			
		||||
 | 
			
		||||
-- sj_retry_scene_config
 | 
			
		||||
CREATE TABLE sj_retry_scene_config
 | 
			
		||||
(
 | 
			
		||||
    id               number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id     varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    scene_name       varchar2(64)                                             NULL,
 | 
			
		||||
    group_name       varchar2(64)                                             NULL,
 | 
			
		||||
    scene_status     smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    max_retry_count  number        DEFAULT 5                                  NOT NULL,
 | 
			
		||||
    back_off         smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    trigger_interval varchar2(16)  DEFAULT ''                                 NULL,
 | 
			
		||||
    deadline_request number        DEFAULT 60000                              NOT NULL,
 | 
			
		||||
    executor_timeout number        DEFAULT 5                                  NOT NULL,
 | 
			
		||||
    route_key        smallint      DEFAULT 4                                  NOT NULL,
 | 
			
		||||
    description      varchar2(256) DEFAULT ''                                 NULL,
 | 
			
		||||
    create_dt        date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt        date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_retry_scene_config
 | 
			
		||||
    ADD CONSTRAINT pk_sj_retry_scene_config PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_retry_scene_config_01 ON sj_retry_scene_config (namespace_id, group_name, scene_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.scene_status IS '组状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.max_retry_count IS '最大重试次数';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.back_off IS '1、默认等级 2、固定间隔时间 3、CRON 表达式';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.trigger_interval IS '间隔时长';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.deadline_request IS 'Deadline Request 调用链超时 单位毫秒';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.executor_timeout IS '任务执行超时时间,单位秒';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.route_key IS '路由策略';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_retry_scene_config IS '场景配置';
 | 
			
		||||
 | 
			
		||||
-- sj_server_node
 | 
			
		||||
CREATE TABLE sj_server_node
 | 
			
		||||
(
 | 
			
		||||
    id           number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    group_name   varchar2(64)                                             NULL,
 | 
			
		||||
    host_id      varchar2(64)                                             NULL,
 | 
			
		||||
    host_ip      varchar2(64)                                             NULL,
 | 
			
		||||
    host_port    number                                                   NOT NULL,
 | 
			
		||||
    expire_at    date                                                     NOT NULL,
 | 
			
		||||
    node_type    smallint                                                 NOT NULL,
 | 
			
		||||
    ext_attrs    varchar2(256) DEFAULT ''                                 NULL,
 | 
			
		||||
    create_dt    date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt    date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_server_node
 | 
			
		||||
    ADD CONSTRAINT pk_sj_server_node PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_server_node_01 ON sj_server_node (host_id, host_ip);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_server_node_01 ON sj_server_node (namespace_id, group_name);
 | 
			
		||||
CREATE INDEX idx_sj_server_node_02 ON sj_server_node (expire_at, node_type);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.host_id IS '主机id';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.host_ip IS '机器ip';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.host_port IS '机器端口';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.expire_at IS '过期时间';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.node_type IS '节点类型 1、客户端 2、是服务端';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_server_node IS '服务器节点';
 | 
			
		||||
 | 
			
		||||
-- sj_distributed_lock
 | 
			
		||||
CREATE TABLE sj_distributed_lock
 | 
			
		||||
(
 | 
			
		||||
    id         number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    name       varchar2(64)                              NULL,
 | 
			
		||||
    lock_until timestamp(3) DEFAULT CURRENT_TIMESTAMP(3) NOT NULL,
 | 
			
		||||
    locked_at  timestamp(3) DEFAULT CURRENT_TIMESTAMP(3) NOT NULL,
 | 
			
		||||
    locked_by  varchar2(255)                             NULL,
 | 
			
		||||
    create_dt  date         DEFAULT CURRENT_TIMESTAMP    NOT NULL,
 | 
			
		||||
    update_dt  date         DEFAULT CURRENT_TIMESTAMP    NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_distributed_lock
 | 
			
		||||
    ADD CONSTRAINT pk_sj_distributed_lock PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_distributed_lock.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_distributed_lock.name IS '锁名称';
 | 
			
		||||
COMMENT ON COLUMN sj_distributed_lock.lock_until IS '锁定时长';
 | 
			
		||||
COMMENT ON COLUMN sj_distributed_lock.locked_at IS '锁定时间';
 | 
			
		||||
COMMENT ON COLUMN sj_distributed_lock.locked_by IS '锁定者';
 | 
			
		||||
COMMENT ON COLUMN sj_distributed_lock.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_distributed_lock.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_distributed_lock IS '锁定表';
 | 
			
		||||
 | 
			
		||||
-- sj_system_user
 | 
			
		||||
CREATE TABLE sj_system_user
 | 
			
		||||
(
 | 
			
		||||
    id        number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    username  varchar2(64)                       NULL,
 | 
			
		||||
    password  varchar2(128)                      NULL,
 | 
			
		||||
    role      smallint DEFAULT 0                 NOT NULL,
 | 
			
		||||
    create_dt date     DEFAULT CURRENT_TIMESTAMP NOT NULL,
 | 
			
		||||
    update_dt date     DEFAULT CURRENT_TIMESTAMP NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_system_user
 | 
			
		||||
    ADD CONSTRAINT pk_sj_system_user PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_system_user.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user.username IS '账号';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user.password IS '密码';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user.role IS '角色:1-普通用户、2-管理员';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_system_user IS '系统用户表';
 | 
			
		||||
 | 
			
		||||
-- pwd: admin
 | 
			
		||||
INSERT INTO sj_system_user(username, password, role, create_dt, update_dt) VALUES ('admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2, sysdate, sysdate);
 | 
			
		||||
 | 
			
		||||
-- sj_system_user_permission
 | 
			
		||||
CREATE TABLE sj_system_user_permission
 | 
			
		||||
(
 | 
			
		||||
    id             number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    group_name     varchar2(64)                                            NULL,
 | 
			
		||||
    namespace_id   varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    system_user_id number                                                  NOT NULL,
 | 
			
		||||
    create_dt      date         DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt      date         DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_system_user_permission
 | 
			
		||||
    ADD CONSTRAINT pk_sj_system_user_permission PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_system_user_permission_01 ON sj_system_user_permission (namespace_id, group_name, system_user_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_system_user_permission.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user_permission.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user_permission.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user_permission.system_user_id IS '系统用户id';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user_permission.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user_permission.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_system_user_permission IS '系统用户权限表';
 | 
			
		||||
 | 
			
		||||
-- sj_sequence_alloc
 | 
			
		||||
CREATE TABLE sj_sequence_alloc
 | 
			
		||||
(
 | 
			
		||||
    id           number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    group_name   varchar2(64) DEFAULT ''                                 NULL,
 | 
			
		||||
    max_id       number       DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    step         number       DEFAULT 100                                NOT NULL,
 | 
			
		||||
    update_dt    date         DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_sequence_alloc
 | 
			
		||||
    ADD CONSTRAINT pk_sj_sequence_alloc PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_sequence_alloc_01 ON sj_sequence_alloc (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_sequence_alloc.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_sequence_alloc.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_sequence_alloc.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_sequence_alloc.max_id IS '最大id';
 | 
			
		||||
COMMENT ON COLUMN sj_sequence_alloc.step IS '步长';
 | 
			
		||||
COMMENT ON COLUMN sj_sequence_alloc.update_dt IS '更新时间';
 | 
			
		||||
COMMENT ON TABLE sj_sequence_alloc IS '号段模式序号ID分配表';
 | 
			
		||||
 | 
			
		||||
-- sj_job
 | 
			
		||||
CREATE TABLE sj_job
 | 
			
		||||
(
 | 
			
		||||
    id               number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id     varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    group_name       varchar2(64)                                             NULL,
 | 
			
		||||
    job_name         varchar2(64)                                             NULL,
 | 
			
		||||
    args_str         clob          DEFAULT NULL                               NULL,
 | 
			
		||||
    args_type        smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    next_trigger_at  number                                                   NOT NULL,
 | 
			
		||||
    job_status       smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    task_type        smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    route_key        smallint      DEFAULT 4                                  NOT NULL,
 | 
			
		||||
    executor_type    smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    executor_info    varchar2(255) DEFAULT NULL                               NULL,
 | 
			
		||||
    trigger_type     smallint                                                 NOT NULL,
 | 
			
		||||
    trigger_interval varchar2(255)                                            NULL,
 | 
			
		||||
    block_strategy   smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    executor_timeout number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    max_retry_times  number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    parallel_num     number        DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    retry_interval   number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    bucket_index     number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    resident         smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    description      varchar2(256) DEFAULT ''                                 NULL,
 | 
			
		||||
    ext_attrs        varchar2(256) DEFAULT ''                                 NULL,
 | 
			
		||||
    deleted          smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    create_dt        date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt        date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_job
 | 
			
		||||
    ADD CONSTRAINT pk_sj_job PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_job_01 ON sj_job (namespace_id, group_name);
 | 
			
		||||
CREATE INDEX idx_sj_job_02 ON sj_job (job_status, bucket_index);
 | 
			
		||||
CREATE INDEX idx_sj_job_03 ON sj_job (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_job.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_job.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_job.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_job.job_name IS '名称';
 | 
			
		||||
COMMENT ON COLUMN sj_job.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN sj_job.args_type IS '参数类型 ';
 | 
			
		||||
COMMENT ON COLUMN sj_job.next_trigger_at IS '下次触发时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job.job_status IS '任务状态 0、关闭、1、开启';
 | 
			
		||||
COMMENT ON COLUMN sj_job.task_type IS '任务类型 1、集群 2、广播 3、切片';
 | 
			
		||||
COMMENT ON COLUMN sj_job.route_key IS '路由策略';
 | 
			
		||||
COMMENT ON COLUMN sj_job.executor_type IS '执行器类型';
 | 
			
		||||
COMMENT ON COLUMN sj_job.executor_info IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN sj_job.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job.trigger_interval IS '间隔时长';
 | 
			
		||||
COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
 | 
			
		||||
COMMENT ON COLUMN sj_job.executor_timeout IS '任务执行超时时间,单位秒';
 | 
			
		||||
COMMENT ON COLUMN sj_job.max_retry_times IS '最大重试次数';
 | 
			
		||||
COMMENT ON COLUMN sj_job.parallel_num IS '并行数';
 | 
			
		||||
COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s ) ';
 | 
			
		||||
COMMENT ON COLUMN sj_job.bucket_index IS 'bucket';
 | 
			
		||||
COMMENT ON COLUMN sj_job.resident IS '是否是常驻任务';
 | 
			
		||||
COMMENT ON COLUMN sj_job.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN sj_job.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_job.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN sj_job.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_job IS '任务信息';
 | 
			
		||||
 | 
			
		||||
INSERT INTO sj_job(namespace_id, group_name, job_name, args_str, args_type, next_trigger_at, job_status, task_type, route_key, executor_type, executor_info, trigger_type, trigger_interval, block_strategy,executor_timeout, max_retry_times, parallel_num, retry_interval, bucket_index, resident, description, ext_attrs, deleted, create_dt, update_dt) VALUES ('dev', 'ruoyi_group', 'demo-job', NULL, 1, 1710344035622, 1, 1, 4, 1, 'testJobExecutor', 2, '60', 1, 60, 3, 1, 1, 116, 0, '', '', 0, sysdate, sysdate);
 | 
			
		||||
 | 
			
		||||
-- sj_job_log_message
 | 
			
		||||
CREATE TABLE sj_job_log_message
 | 
			
		||||
(
 | 
			
		||||
    id            number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id  varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    group_name    varchar2(64)                                             NULL,
 | 
			
		||||
    job_id        number                                                   NOT NULL,
 | 
			
		||||
    task_batch_id number                                                   NOT NULL,
 | 
			
		||||
    task_id       number                                                   NOT NULL,
 | 
			
		||||
    message       clob                                                     NULL,
 | 
			
		||||
    log_num       number        DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    real_time     number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    ext_attrs     varchar2(256) DEFAULT ''                                 NULL,
 | 
			
		||||
    create_dt     date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_job_log_message
 | 
			
		||||
    ADD CONSTRAINT pk_sj_job_log_message PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_job_log_message_01 ON sj_job_log_message (task_batch_id, task_id);
 | 
			
		||||
CREATE INDEX idx_sj_job_log_message_02 ON sj_job_log_message (create_dt);
 | 
			
		||||
CREATE INDEX idx_sj_job_log_message_03 ON sj_job_log_message (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.task_batch_id IS '任务批次id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.task_id IS '调度任务id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.message IS '调度信息';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.log_num IS '日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.real_time IS '上报时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON TABLE sj_job_log_message IS '调度日志';
 | 
			
		||||
 | 
			
		||||
-- sj_job_task
 | 
			
		||||
CREATE TABLE sj_job_task
 | 
			
		||||
(
 | 
			
		||||
    id             number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id   varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    group_name     varchar2(64)                                             NULL,
 | 
			
		||||
    job_id         number                                                   NOT NULL,
 | 
			
		||||
    task_batch_id  number                                                   NOT NULL,
 | 
			
		||||
    parent_id      number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    task_status    smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    retry_count    number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    client_info    varchar2(128) DEFAULT NULL                               NULL,
 | 
			
		||||
    result_message clob                                                     NULL,
 | 
			
		||||
    args_str       clob          DEFAULT NULL                               NULL,
 | 
			
		||||
    args_type      smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    ext_attrs      varchar2(256) DEFAULT ''                                 NULL,
 | 
			
		||||
    create_dt      date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt      date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_job_task
 | 
			
		||||
    ADD CONSTRAINT pk_sj_job_task PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_job_task_01 ON sj_job_task (task_batch_id, task_status);
 | 
			
		||||
CREATE INDEX idx_sj_job_task_02 ON sj_job_task (create_dt);
 | 
			
		||||
CREATE INDEX idx_sj_job_task_03 ON sj_job_task (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.task_batch_id IS '调度任务id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.parent_id IS '父执行器id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.task_status IS '执行的状态 0、失败 1、成功';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.retry_count IS '重试次数';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.client_info IS '客户端地址 clientId#ip:port';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.result_message IS '执行结果';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.args_type IS '参数类型 ';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_job_task IS '任务实例';
 | 
			
		||||
 | 
			
		||||
-- sj_job_task_batch
 | 
			
		||||
CREATE TABLE sj_job_task_batch
 | 
			
		||||
(
 | 
			
		||||
    id                      number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id            varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    group_name              varchar2(64)                                             NULL,
 | 
			
		||||
    job_id                  number                                                   NOT NULL,
 | 
			
		||||
    workflow_node_id        number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    parent_workflow_node_id number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    workflow_task_batch_id  number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    task_batch_status       smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    operation_reason        smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    execution_at            number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    system_task_type        smallint      DEFAULT 3                                  NOT NULL,
 | 
			
		||||
    parent_id               varchar2(64)  DEFAULT ''                                 NULL,
 | 
			
		||||
    ext_attrs               varchar2(256) DEFAULT ''                                 NULL,
 | 
			
		||||
    deleted                 smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    create_dt               date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt               date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_job_task_batch
 | 
			
		||||
    ADD CONSTRAINT pk_sj_job_task_batch PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_job_task_batch_01 ON sj_job_task_batch (job_id, task_batch_status);
 | 
			
		||||
CREATE INDEX idx_sj_job_task_batch_02 ON sj_job_task_batch (create_dt);
 | 
			
		||||
CREATE INDEX idx_sj_job_task_batch_03 ON sj_job_task_batch (namespace_id, group_name);
 | 
			
		||||
CREATE INDEX idx_sj_job_task_batch_04 ON sj_job_task_batch (workflow_task_batch_id, workflow_node_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.job_id IS '任务id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.workflow_node_id IS '工作流节点id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.parent_workflow_node_id IS '工作流任务父批次id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.workflow_task_batch_id IS '工作流任务批次id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.operation_reason IS '操作原因';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.execution_at IS '任务执行时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.parent_id IS '父节点';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_job_task_batch IS '任务批次';
 | 
			
		||||
 | 
			
		||||
-- sj_job_summary
 | 
			
		||||
CREATE TABLE sj_job_summary
 | 
			
		||||
(
 | 
			
		||||
    id               number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id     varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    group_name       varchar2(64)  DEFAULT ''                                 NULL,
 | 
			
		||||
    business_id      number                                                   NOT NULL,
 | 
			
		||||
    system_task_type smallint      DEFAULT 3                                  NOT NULL,
 | 
			
		||||
    trigger_at       date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    success_num      number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    fail_num         number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    fail_reason      varchar2(512) DEFAULT ''                                 NULL,
 | 
			
		||||
    stop_num         number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    stop_reason      varchar2(512) DEFAULT ''                                 NULL,
 | 
			
		||||
    cancel_num       number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    cancel_reason    varchar2(512) DEFAULT ''                                 NULL,
 | 
			
		||||
    create_dt        date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt        date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_job_summary
 | 
			
		||||
    ADD CONSTRAINT pk_sj_job_summary PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_job_summary_01 ON sj_job_summary (trigger_at, system_task_type, business_id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_job_summary_01 ON sj_job_summary (namespace_id, group_name, business_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.business_id IS '业务id  ( job_id或workflow_id ) ';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.trigger_at IS '统计时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.success_num IS '执行成功-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.fail_num IS '执行失败-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.fail_reason IS '失败原因';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.stop_num IS '执行失败-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.stop_reason IS '失败原因';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.cancel_num IS '执行失败-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.cancel_reason IS '失败原因';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_job_summary IS 'DashBoard_Job';
 | 
			
		||||
 | 
			
		||||
-- sj_retry_summary
 | 
			
		||||
CREATE TABLE sj_retry_summary
 | 
			
		||||
(
 | 
			
		||||
    id            number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id  varchar2(64) DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    group_name    varchar2(64) DEFAULT ''                                 NULL,
 | 
			
		||||
    scene_name    varchar2(50) DEFAULT ''                                 NULL,
 | 
			
		||||
    trigger_at    date         DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    running_num   number       DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    finish_num    number       DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    max_count_num number       DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    suspend_num   number       DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    create_dt     date         DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt     date         DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_retry_summary
 | 
			
		||||
    ADD CONSTRAINT pk_sj_retry_summary PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_retry_summary_01 ON sj_retry_summary (namespace_id, group_name, scene_name, trigger_at);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_retry_summary_01 ON sj_retry_summary (trigger_at);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.trigger_at IS '统计时间';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.running_num IS '重试中-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.finish_num IS '重试完成-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.max_count_num IS '重试到达最大次数-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.suspend_num IS '暂停重试-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_retry_summary IS 'DashBoard_Retry';
 | 
			
		||||
 | 
			
		||||
-- sj_workflow
 | 
			
		||||
CREATE TABLE sj_workflow
 | 
			
		||||
(
 | 
			
		||||
    id               number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    workflow_name    varchar2(64)                                             NULL,
 | 
			
		||||
    namespace_id     varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    group_name       varchar2(64)                                             NULL,
 | 
			
		||||
    workflow_status  smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    trigger_type     smallint                                                 NOT NULL,
 | 
			
		||||
    trigger_interval varchar2(255)                                            NULL,
 | 
			
		||||
    next_trigger_at  number                                                   NOT NULL,
 | 
			
		||||
    block_strategy   smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    executor_timeout number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    description      varchar2(256) DEFAULT ''                                 NULL,
 | 
			
		||||
    flow_info        clob          DEFAULT NULL                               NULL,
 | 
			
		||||
    bucket_index     number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    version          number                                                   NOT NULL,
 | 
			
		||||
    ext_attrs        varchar2(256) DEFAULT ''                                 NULL,
 | 
			
		||||
    deleted          smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    create_dt        date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt        date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_workflow
 | 
			
		||||
    ADD CONSTRAINT pk_sj_workflow PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_workflow_01 ON sj_workflow (create_dt);
 | 
			
		||||
CREATE INDEX idx_sj_workflow_02 ON sj_workflow (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.workflow_name IS '工作流名称';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.workflow_status IS '工作流状态 0、关闭、1、开启';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.trigger_interval IS '间隔时长';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.next_trigger_at IS '下次触发时间';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.executor_timeout IS '任务执行超时时间,单位秒';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.flow_info IS '流程信息';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.bucket_index IS 'bucket';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.version IS '版本号';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_workflow IS '工作流';
 | 
			
		||||
 | 
			
		||||
-- sj_workflow_node
 | 
			
		||||
CREATE TABLE sj_workflow_node
 | 
			
		||||
(
 | 
			
		||||
    id                   number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id         varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    node_name            varchar2(64)                                             NULL,
 | 
			
		||||
    group_name           varchar2(64)                                             NULL,
 | 
			
		||||
    job_id               number                                                   NOT NULL,
 | 
			
		||||
    workflow_id          number                                                   NOT NULL,
 | 
			
		||||
    node_type            smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    expression_type      smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    fail_strategy        smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    workflow_node_status smallint      DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    priority_level       number        DEFAULT 1                                  NOT NULL,
 | 
			
		||||
    node_info            clob          DEFAULT NULL                               NULL,
 | 
			
		||||
    version              number                                                   NOT NULL,
 | 
			
		||||
    ext_attrs            varchar2(256) DEFAULT ''                                 NULL,
 | 
			
		||||
    deleted              smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    create_dt            date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt            date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_workflow_node
 | 
			
		||||
    ADD CONSTRAINT pk_sj_workflow_node PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_workflow_node_01 ON sj_workflow_node (create_dt);
 | 
			
		||||
CREATE INDEX idx_sj_workflow_node_02 ON sj_workflow_node (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.node_name IS '节点名称';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.workflow_id IS '工作流ID';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.node_type IS '1、任务节点 2、条件节点';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.expression_type IS '1、SpEl、2、Aviator 3、QL';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.fail_strategy IS '失败策略 1、跳过 2、阻塞';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.workflow_node_status IS '工作流节点状态 0、关闭、1、开启';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.priority_level IS '优先级';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.node_info IS '节点信息 ';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.version IS '版本号';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_workflow_node IS '工作流节点';
 | 
			
		||||
 | 
			
		||||
-- sj_workflow_task_batch
 | 
			
		||||
CREATE TABLE sj_workflow_task_batch
 | 
			
		||||
(
 | 
			
		||||
    id                number GENERATED ALWAYS AS IDENTITY,
 | 
			
		||||
    namespace_id      varchar2(64)  DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' NULL,
 | 
			
		||||
    group_name        varchar2(64)                                             NULL,
 | 
			
		||||
    workflow_id       number                                                   NOT NULL,
 | 
			
		||||
    task_batch_status smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    operation_reason  smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    flow_info         clob          DEFAULT NULL                               NULL,
 | 
			
		||||
    execution_at      number        DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    ext_attrs         varchar2(256) DEFAULT ''                                 NULL,
 | 
			
		||||
    deleted           smallint      DEFAULT 0                                  NOT NULL,
 | 
			
		||||
    create_dt         date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL,
 | 
			
		||||
    update_dt         date          DEFAULT CURRENT_TIMESTAMP                  NOT NULL
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE sj_workflow_task_batch
 | 
			
		||||
    ADD CONSTRAINT pk_sj_workflow_task_batch PRIMARY KEY (id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_workflow_task_batch_01 ON sj_workflow_task_batch (workflow_id, task_batch_status);
 | 
			
		||||
CREATE INDEX idx_sj_workflow_task_batch_02 ON sj_workflow_task_batch (create_dt);
 | 
			
		||||
CREATE INDEX idx_sj_workflow_task_batch_03 ON sj_workflow_task_batch (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.workflow_id IS '工作流任务id';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.operation_reason IS '操作原因';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.flow_info IS '流程信息';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.execution_at IS '任务执行时间';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_workflow_task_batch IS '工作流批次';
 | 
			
		||||
 | 
			
		||||
@@ -1,807 +0,0 @@
 | 
			
		||||
-- PostgreSQL DDL
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_namespace
 | 
			
		||||
(
 | 
			
		||||
    id          BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    name        VARCHAR(64)  NOT NULL,
 | 
			
		||||
    unique_id   VARCHAR(64)  NOT NULL,
 | 
			
		||||
    description VARCHAR(256) NOT NULL DEFAULT '',
 | 
			
		||||
    create_dt   TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt   TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    deleted     SMALLINT     NOT NULL DEFAULT 0
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_namespace_unique_id ON er_namespace (unique_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_namespace.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_namespace.name IS '名称';
 | 
			
		||||
COMMENT ON COLUMN er_namespace.unique_id IS '唯一id';
 | 
			
		||||
COMMENT ON COLUMN er_namespace.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN er_namespace.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_namespace.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON COLUMN er_namespace.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON TABLE er_namespace IS '命名空间';
 | 
			
		||||
 | 
			
		||||
INSERT INTO er_namespace VALUES (1, 'Development', 'dev', '', now(), now(), 0);
 | 
			
		||||
INSERT INTO er_namespace VALUES (2, 'Production', 'prod', '', now(), now(), 0);
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_group_config
 | 
			
		||||
(
 | 
			
		||||
    id                BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id      VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name        VARCHAR(64) NOT NULL,
 | 
			
		||||
    description       VARCHAR(256)         DEFAULT '',
 | 
			
		||||
    token             VARCHAR(64)          DEFAULT 'ER_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT',
 | 
			
		||||
    group_status      SMALLINT    NOT NULL DEFAULT 0,
 | 
			
		||||
    version           INT         NOT NULL,
 | 
			
		||||
    group_partition   INT         NOT NULL,
 | 
			
		||||
    id_generator_mode SMALLINT    NOT NULL DEFAULT 1,
 | 
			
		||||
    init_scene        SMALLINT    NOT NULL DEFAULT 0,
 | 
			
		||||
    bucket_index      INT         NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt         TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt         TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_namespace_id_group_name_group_config ON er_group_config (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_group_config.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.namespace_id IS '命名空间';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.description IS '组描述';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.token IS 'token';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.group_status IS '组状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.version IS '版本号';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.group_partition IS '分区';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.id_generator_mode IS '唯一id生成模式 默认号段模式';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.init_scene IS '是否初始化场景 0:否 1:是';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.bucket_index IS 'bucket';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_group_config.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE er_group_config IS '组配置';
 | 
			
		||||
 | 
			
		||||
INSERT INTO er_group_config VALUES (1, 'dev', 'ruoyi_group', '', 'ER_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now());
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_notify_config
 | 
			
		||||
(
 | 
			
		||||
    id                     BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id           VARCHAR(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name             VARCHAR(64)  NOT NULL,
 | 
			
		||||
    scene_name             VARCHAR(64)  NOT NULL,
 | 
			
		||||
    notify_status          SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    notify_type            SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    notify_attribute       VARCHAR(512) NOT NULL,
 | 
			
		||||
    notify_threshold       INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    notify_scene           SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    rate_limiter_status    SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    rate_limiter_threshold INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    description            VARCHAR(256) NOT NULL DEFAULT '',
 | 
			
		||||
    create_dt              TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt              TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_notify_config ON er_notify_config (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.notify_status IS '通知状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.notify_type IS '通知类型 1、钉钉 2、邮件 3、企业微信';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.notify_attribute IS '配置属性';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.notify_threshold IS '通知阈值';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.notify_scene IS '通知场景';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.rate_limiter_status IS '限流状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.rate_limiter_threshold IS '每秒限流阈值';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_notify_config.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE er_notify_config IS '通知配置';
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_retry_dead_letter_0
 | 
			
		||||
(
 | 
			
		||||
    id            BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    unique_id     VARCHAR(64)  NOT NULL,
 | 
			
		||||
    namespace_id  VARCHAR(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name    VARCHAR(64)  NOT NULL,
 | 
			
		||||
    scene_name    VARCHAR(64)  NOT NULL,
 | 
			
		||||
    idempotent_id VARCHAR(64)  NOT NULL,
 | 
			
		||||
    biz_no        VARCHAR(64)  NOT NULL DEFAULT '',
 | 
			
		||||
    executor_name VARCHAR(512) NOT NULL DEFAULT '',
 | 
			
		||||
    args_str      TEXT         NOT NULL,
 | 
			
		||||
    ext_attrs     TEXT         NOT NULL,
 | 
			
		||||
    task_type     SMALLINT     NOT NULL DEFAULT 1,
 | 
			
		||||
    create_dt     TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_namespace_id_group_name_unique_id_retry_dead_letter ON er_retry_dead_letter_0 (namespace_id, group_name, unique_id);
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_scene_name_retry_dead_letter ON er_retry_dead_letter_0 (namespace_id, group_name, scene_name);
 | 
			
		||||
CREATE INDEX idx_idempotent_id_retry_dead_letter ON er_retry_dead_letter_0 (idempotent_id);
 | 
			
		||||
CREATE INDEX idx_biz_no_retry_dead_letter ON er_retry_dead_letter_0 (biz_no);
 | 
			
		||||
CREATE INDEX idx_create_dt_retry_dead_letter ON er_retry_dead_letter_0 (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.idempotent_id IS '幂等id';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.biz_no IS '业务编号';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.executor_name IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.task_type IS '任务类型 1、重试数据 2、回调数据';
 | 
			
		||||
COMMENT ON COLUMN er_retry_dead_letter_0.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON TABLE er_retry_dead_letter_0 IS '死信队列表';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_retry_task_0
 | 
			
		||||
(
 | 
			
		||||
    id              BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    unique_id       VARCHAR(64)  NOT NULL,
 | 
			
		||||
    namespace_id    VARCHAR(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name      VARCHAR(64)  NOT NULL,
 | 
			
		||||
    scene_name      VARCHAR(64)  NOT NULL,
 | 
			
		||||
    idempotent_id   VARCHAR(64)  NOT NULL,
 | 
			
		||||
    biz_no          VARCHAR(64)  NOT NULL DEFAULT '',
 | 
			
		||||
    executor_name   VARCHAR(512) NOT NULL DEFAULT '',
 | 
			
		||||
    args_str        TEXT         NOT NULL,
 | 
			
		||||
    ext_attrs       TEXT         NOT NULL,
 | 
			
		||||
    next_trigger_at TIMESTAMP    NOT NULL,
 | 
			
		||||
    retry_count     INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    retry_status    SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    task_type       SMALLINT     NOT NULL DEFAULT 1,
 | 
			
		||||
    create_dt       TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt       TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_name_unique_id_retry_task ON er_retry_task_0 (namespace_id, group_name, unique_id);
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_scene_name_retry_task ON er_retry_task_0 (namespace_id, group_name, scene_name);
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_retry_status_retry_task ON er_retry_task_0 (namespace_id, group_name, retry_status);
 | 
			
		||||
CREATE INDEX idx_idempotent_id_retry_task ON er_retry_task_0 (idempotent_id);
 | 
			
		||||
CREATE INDEX idx_biz_no_retry_task ON er_retry_task_0 (biz_no);
 | 
			
		||||
CREATE INDEX idx_create_dt_retry_task ON er_retry_task_0 (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.idempotent_id IS '幂等id';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.biz_no IS '业务编号';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.executor_name IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.next_trigger_at IS '下次触发时间';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.retry_count IS '重试次数';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.task_type IS '任务类型 1、重试数据 2、回调数据';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_0.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE er_retry_task_0 IS '任务表';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_retry_task_log
 | 
			
		||||
(
 | 
			
		||||
    id            BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    unique_id     VARCHAR(64)  NOT NULL,
 | 
			
		||||
    namespace_id  VARCHAR(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name    VARCHAR(64)  NOT NULL,
 | 
			
		||||
    scene_name    VARCHAR(64)  NOT NULL,
 | 
			
		||||
    idempotent_id VARCHAR(64)  NOT NULL,
 | 
			
		||||
    biz_no        VARCHAR(64)  NOT NULL DEFAULT '',
 | 
			
		||||
    executor_name VARCHAR(512) NOT NULL DEFAULT '',
 | 
			
		||||
    args_str      TEXT         NOT NULL,
 | 
			
		||||
    ext_attrs     TEXT         NOT NULL,
 | 
			
		||||
    retry_status  SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    task_type     SMALLINT     NOT NULL DEFAULT 1,
 | 
			
		||||
    create_dt     TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt     TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_group_name_scene_name_retry_task_log ON er_retry_task_log (namespace_id, group_name, scene_name);
 | 
			
		||||
CREATE INDEX idx_retry_status_retry_task_log ON er_retry_task_log (retry_status);
 | 
			
		||||
CREATE INDEX idx_idempotent_id_retry_task_log ON er_retry_task_log (idempotent_id);
 | 
			
		||||
CREATE INDEX idx_unique_id ON er_retry_task_log (namespace_id, group_name, unique_id);
 | 
			
		||||
CREATE INDEX idx_biz_no_retry_task_log ON er_retry_task_log (biz_no);
 | 
			
		||||
CREATE INDEX idx_create_dt_retry_task_log ON er_retry_task_log (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.idempotent_id IS '幂等id';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.biz_no IS '业务编号';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.executor_name IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.retry_status IS '重试状态 0、重试中 1、成功 2、最大次数';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.task_type IS '任务类型 1、重试数据 2、回调数据';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE er_retry_task_log IS '任务日志基础信息表';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_retry_task_log_message
 | 
			
		||||
(
 | 
			
		||||
    id           BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name   VARCHAR(64) NOT NULL,
 | 
			
		||||
    unique_id    VARCHAR(64) NOT NULL,
 | 
			
		||||
    create_dt    TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    message      TEXT        NOT NULL,
 | 
			
		||||
    log_num      INT         NOT NULL DEFAULT 1,
 | 
			
		||||
    real_time    BIGINT      NOT NULL DEFAULT 0
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_unique_id ON er_retry_task_log_message (namespace_id, group_name, unique_id);
 | 
			
		||||
CREATE INDEX idx_create_dt ON er_retry_task_log_message (create_dt);
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.namespace_id IS '命名空间';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.message IS '异常信息';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.log_num IS '日志条数';
 | 
			
		||||
COMMENT ON COLUMN er_retry_task_log_message.real_time IS '实际时间';
 | 
			
		||||
COMMENT ON TABLE er_retry_task_log_message IS '任务调度日志信息记录表';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_scene_config
 | 
			
		||||
(
 | 
			
		||||
    id               BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id     VARCHAR(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    scene_name       VARCHAR(64)  NOT NULL,
 | 
			
		||||
    group_name       VARCHAR(64)  NOT NULL,
 | 
			
		||||
    scene_status     SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    max_retry_count  INT          NOT NULL DEFAULT 5,
 | 
			
		||||
    back_off         SMALLINT     NOT NULL DEFAULT 1,
 | 
			
		||||
    trigger_interval VARCHAR(16)  NOT NULL DEFAULT '',
 | 
			
		||||
    deadline_request BIGINT       NOT NULL DEFAULT 60000,
 | 
			
		||||
    route_key        SMALLINT     NOT NULL DEFAULT 4,
 | 
			
		||||
    executor_timeout INT          NOT NULL DEFAULT 5,
 | 
			
		||||
    description      VARCHAR(256) NOT NULL DEFAULT '',
 | 
			
		||||
    create_dt        TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt        TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_namespace_id_group_name_scene_name ON er_scene_config (namespace_id, group_name, scene_name);
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.scene_status IS '组状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.max_retry_count IS '最大重试次数';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.back_off IS '1、默认等级 2、固定间隔时间 3、CRON 表达式';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.trigger_interval IS '间隔时长';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.deadline_request IS 'Deadline Request 调用链超时 单位毫秒';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.route_key IS '路由策略';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.executor_timeout IS '超时时间';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_scene_config.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE er_scene_config IS '场景配置';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_server_node
 | 
			
		||||
(
 | 
			
		||||
    id           BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id VARCHAR(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name   VARCHAR(64)  NOT NULL,
 | 
			
		||||
    host_id      VARCHAR(64)  NOT NULL,
 | 
			
		||||
    host_ip      VARCHAR(64)  NOT NULL,
 | 
			
		||||
    context_path VARCHAR(256) NOT NULL DEFAULT '/',
 | 
			
		||||
    host_port    INT          NOT NULL,
 | 
			
		||||
    expire_at    TIMESTAMP    NOT NULL,
 | 
			
		||||
    node_type    SMALLINT     NOT NULL,
 | 
			
		||||
    ext_attrs    VARCHAR(256)          DEFAULT '',
 | 
			
		||||
    create_dt    TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt    TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_host_id_host_ip ON er_server_node (host_id, host_ip);
 | 
			
		||||
CREATE INDEX idx_expire_at_node_type ON er_server_node (expire_at, node_type);
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_server_node ON er_server_node (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_server_node.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.host_id IS '主机id';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.host_ip IS '机器ip';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.context_path IS '客户端上下文路径 server.servlet.context-path';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.host_port IS '机器端口';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.expire_at IS '过期时间';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.node_type IS '节点类型 1、客户端 2、是服务端';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_server_node.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE er_server_node IS '服务器节点';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_distributed_lock
 | 
			
		||||
(
 | 
			
		||||
    id         BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    name       VARCHAR(64)  NOT NULL,
 | 
			
		||||
    lock_until TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    locked_at  TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    locked_by  VARCHAR(255) NOT NULL,
 | 
			
		||||
    create_dt  TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt  TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
ALTER TABLE er_distributed_lock
 | 
			
		||||
    ADD CONSTRAINT uk_name UNIQUE (name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_distributed_lock.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_distributed_lock.name IS '锁名称';
 | 
			
		||||
COMMENT ON COLUMN er_distributed_lock.lock_until IS '锁定时长';
 | 
			
		||||
COMMENT ON COLUMN er_distributed_lock.locked_at IS '锁定时间';
 | 
			
		||||
COMMENT ON COLUMN er_distributed_lock.locked_by IS '锁定者';
 | 
			
		||||
COMMENT ON COLUMN er_distributed_lock.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_distributed_lock.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE er_distributed_lock IS '锁定表';
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_system_user
 | 
			
		||||
(
 | 
			
		||||
    id        BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    username  VARCHAR(64)  NOT NULL,
 | 
			
		||||
    password  VARCHAR(128) NOT NULL,
 | 
			
		||||
    role      SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_username ON er_system_user (username);
 | 
			
		||||
COMMENT ON COLUMN er_system_user.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_system_user.username IS '账号';
 | 
			
		||||
COMMENT ON COLUMN er_system_user.password IS '密码';
 | 
			
		||||
COMMENT ON COLUMN er_system_user.role IS '角色:1-普通用户、2-管理员';
 | 
			
		||||
COMMENT ON COLUMN er_system_user.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_system_user.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE er_system_user IS '系统用户表';
 | 
			
		||||
 | 
			
		||||
-- pwd: admin
 | 
			
		||||
INSERT INTO er_system_user VALUES (1, 'admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2, now(), now());
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_system_user_permission
 | 
			
		||||
(
 | 
			
		||||
    id             BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id   VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name     VARCHAR(64) NOT NULL,
 | 
			
		||||
    system_user_id BIGINT      NOT NULL,
 | 
			
		||||
    create_dt      TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt      TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_namespace_id_group_name_system_user_id ON er_system_user_permission (namespace_id, group_name, system_user_id);
 | 
			
		||||
COMMENT ON COLUMN er_system_user_permission.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_system_user_permission.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_system_user_permission.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_system_user_permission.system_user_id IS '系统用户id';
 | 
			
		||||
COMMENT ON COLUMN er_system_user_permission.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_system_user_permission.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE er_system_user_permission IS '系统用户权限表';
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_sequence_alloc
 | 
			
		||||
(
 | 
			
		||||
    id           BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name   VARCHAR(64) NOT NULL DEFAULT '',
 | 
			
		||||
    max_id       BIGINT      NOT NULL DEFAULT 1,
 | 
			
		||||
    step         INT         NOT NULL DEFAULT 100,
 | 
			
		||||
    update_dt    TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_namespace_id_group_name ON er_sequence_alloc (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_sequence_alloc.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_sequence_alloc.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_sequence_alloc.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_sequence_alloc.max_id IS '最大id';
 | 
			
		||||
COMMENT ON COLUMN er_sequence_alloc.step IS '步长';
 | 
			
		||||
COMMENT ON COLUMN er_sequence_alloc.update_dt IS '更新时间';
 | 
			
		||||
COMMENT ON TABLE er_sequence_alloc IS '号段模式序号ID分配表';
 | 
			
		||||
 | 
			
		||||
-- 分布式调度DDL
 | 
			
		||||
CREATE TABLE er_job
 | 
			
		||||
(
 | 
			
		||||
    id               BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id     VARCHAR(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name       VARCHAR(64)  NOT NULL,
 | 
			
		||||
    job_name         VARCHAR(64)  NOT NULL,
 | 
			
		||||
    args_str         TEXT         NOT NULL DEFAULT '',
 | 
			
		||||
    args_type        SMALLINT     NOT NULL DEFAULT 1,
 | 
			
		||||
    next_trigger_at  BIGINT       NOT NULL,
 | 
			
		||||
    job_status       SMALLINT     NOT NULL DEFAULT 1,
 | 
			
		||||
    task_type        SMALLINT     NOT NULL DEFAULT 1,
 | 
			
		||||
    route_key        SMALLINT     NOT NULL DEFAULT 4,
 | 
			
		||||
    executor_type    SMALLINT     NOT NULL DEFAULT 1,
 | 
			
		||||
    executor_info    VARCHAR(255)          DEFAULT NULL,
 | 
			
		||||
    trigger_type     SMALLINT     NOT NULL,
 | 
			
		||||
    trigger_interval VARCHAR(255) NOT NULL,
 | 
			
		||||
    block_strategy   SMALLINT     NOT NULL DEFAULT 1,
 | 
			
		||||
    executor_timeout INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    max_retry_times  INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    parallel_num     INT          NOT NULL DEFAULT 1,
 | 
			
		||||
    retry_interval   INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    bucket_index     INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    resident         SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    description      VARCHAR(256) NOT NULL DEFAULT '',
 | 
			
		||||
    ext_attrs        VARCHAR(256)          DEFAULT NULL,
 | 
			
		||||
    create_dt        TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt        TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    deleted          SMALLINT     NOT NULL DEFAULT 0
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_job ON er_job (namespace_id, group_name);
 | 
			
		||||
CREATE INDEX idx_job_status_bucket_index_job ON er_job (job_status, bucket_index);
 | 
			
		||||
CREATE INDEX idx_create_dt_job ON er_job (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_job.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_job.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_job.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_job.job_name IS '名称';
 | 
			
		||||
COMMENT ON COLUMN er_job.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN er_job.args_type IS '参数类型';
 | 
			
		||||
COMMENT ON COLUMN er_job.next_trigger_at IS '下次触发时间';
 | 
			
		||||
COMMENT ON COLUMN er_job.job_status IS '重试状态 0、关闭、1、开启';
 | 
			
		||||
COMMENT ON COLUMN er_job.task_type IS '任务类型 1、集群 2、广播 3、切片';
 | 
			
		||||
COMMENT ON COLUMN er_job.route_key IS '路由策略';
 | 
			
		||||
COMMENT ON COLUMN er_job.executor_type IS '执行器类型';
 | 
			
		||||
COMMENT ON COLUMN er_job.executor_info IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN er_job.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间';
 | 
			
		||||
COMMENT ON COLUMN er_job.trigger_interval IS '间隔时长';
 | 
			
		||||
COMMENT ON COLUMN er_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
 | 
			
		||||
COMMENT ON COLUMN er_job.executor_timeout IS '任务执行超时时间,单位秒';
 | 
			
		||||
COMMENT ON COLUMN er_job.max_retry_times IS '最大重试次数';
 | 
			
		||||
COMMENT ON COLUMN er_job.parallel_num IS '并行数';
 | 
			
		||||
COMMENT ON COLUMN er_job.retry_interval IS '更新重试间隔(s)';
 | 
			
		||||
COMMENT ON COLUMN er_job.bucket_index IS 'bucket';
 | 
			
		||||
COMMENT ON COLUMN er_job.resident IS '是否是常驻任务';
 | 
			
		||||
COMMENT ON COLUMN er_job.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN er_job.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN er_job.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_job.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN er_job.update_dt IS '更新时间';
 | 
			
		||||
COMMENT ON TABLE er_job IS '任务信息';
 | 
			
		||||
 | 
			
		||||
INSERT INTO er_job VALUES (1, 'dev', 'ruoyi_group', 'demo-job', null, 1, 1710344035622, 1, 1, 4, 1, 'testJobExecutor', 2, '60', 1, 60, 3, 1, 1, 116, 0, '', '', now(), now(), 0);
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_job_log_message
 | 
			
		||||
(
 | 
			
		||||
    id            BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id  VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name    VARCHAR(64) NOT NULL,
 | 
			
		||||
    job_id        BIGINT      NOT NULL,
 | 
			
		||||
    task_batch_id BIGINT      NOT NULL,
 | 
			
		||||
    task_id       BIGINT      NOT NULL,
 | 
			
		||||
    message       TEXT        NOT NULL,
 | 
			
		||||
    log_num       INT         NOT NULL DEFAULT 1,
 | 
			
		||||
    real_time     BIGINT      NOT NULL DEFAULT 0,
 | 
			
		||||
    ext_attrs     VARCHAR(256)         DEFAULT '',
 | 
			
		||||
    create_dt     TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_to_job_log_message ON er_job_log_message (namespace_id, group_name);
 | 
			
		||||
CREATE INDEX idx_task_batch_id_task_id_to_job_log_message ON er_job_log_message (task_batch_id, task_id);
 | 
			
		||||
CREATE INDEX idx_create_dt_to_job_log_message ON er_job_log_message (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.task_batch_id IS '任务批次id';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.task_id IS '调度任务id';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.message IS '调度信息';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.log_num IS '日志序号';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.real_time IS '实际时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_log_message.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON TABLE er_job_log_message IS '调度日志';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_job_task
 | 
			
		||||
(
 | 
			
		||||
    id             BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id   VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name     VARCHAR(64) NOT NULL,
 | 
			
		||||
    job_id         BIGINT      NOT NULL,
 | 
			
		||||
    task_batch_id  BIGINT      NOT NULL,
 | 
			
		||||
    parent_id      BIGINT      NOT NULL DEFAULT 0,
 | 
			
		||||
    task_status    SMALLINT    NOT NULL DEFAULT 0,
 | 
			
		||||
    retry_count    INT         NOT NULL DEFAULT 0,
 | 
			
		||||
    client_info    VARCHAR(128)         DEFAULT NULL,
 | 
			
		||||
    result_message TEXT        NOT NULL,
 | 
			
		||||
    args_str       TEXT        NOT NULL,
 | 
			
		||||
    args_type      SMALLINT    NOT NULL DEFAULT 1,
 | 
			
		||||
    ext_attrs      VARCHAR(256)         DEFAULT '',
 | 
			
		||||
    create_dt      TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt      TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_to_job_task ON er_job_task (namespace_id, group_name);
 | 
			
		||||
CREATE INDEX idx_task_batch_id_task_status_to_job_task ON er_job_task (task_batch_id, task_status);
 | 
			
		||||
CREATE INDEX idx_create_dt_to_job_task ON er_job_task (create_dt);
 | 
			
		||||
COMMENT ON COLUMN er_job_task.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.task_batch_id IS '任务批次id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.parent_id IS '父执行器id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.task_status IS '执行的状态 0、失败 1、成功';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.retry_count IS '重试次数';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.client_info IS '客户端地址 clientId#ip:port';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.result_message IS '调度信息';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.args_type IS '参数类型';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.update_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_task.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON TABLE er_job_task IS '任务实例';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_job_task_batch
 | 
			
		||||
(
 | 
			
		||||
    id                      BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id            VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name              VARCHAR(64) NOT NULL,
 | 
			
		||||
    job_id                  BIGINT      NOT NULL,
 | 
			
		||||
    workflow_node_id        BIGINT      NOT NULL DEFAULT 0,
 | 
			
		||||
    parent_workflow_node_id BIGINT      NOT NULL DEFAULT 0,
 | 
			
		||||
    workflow_task_batch_id  BIGINT      NOT NULL DEFAULT 0,
 | 
			
		||||
    parent_id               VARCHAR(64) NOT NULL DEFAULT '',
 | 
			
		||||
    task_batch_status       SMALLINT    NOT NULL DEFAULT 0,
 | 
			
		||||
    operation_reason        SMALLINT    NOT NULL DEFAULT 0,
 | 
			
		||||
    execution_at            BIGINT      NOT NULL DEFAULT 0,
 | 
			
		||||
    system_task_type        SMALLINT    NOT NULL DEFAULT 3,
 | 
			
		||||
    ext_attrs               VARCHAR(256)         DEFAULT '',
 | 
			
		||||
    deleted                 SMALLINT    NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt               TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt               TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_to_job_task_batch ON er_job_task_batch (namespace_id, group_name);
 | 
			
		||||
CREATE INDEX idx_job_id_task_batch_status_to_job_task_batch ON er_job_task_batch (job_id, task_batch_status);
 | 
			
		||||
CREATE INDEX idx_create_dt_to_job_task_batch ON er_job_task_batch (create_dt);
 | 
			
		||||
CREATE INDEX idx_workflow_task_batch_id_workflow_node_id ON er_job_task_batch (workflow_task_batch_id, workflow_node_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.operation_reason IS '操作原因';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.workflow_node_id IS '工作流节点id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.parent_workflow_node_id IS '父节点';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.workflow_task_batch_id IS '任务批次id';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.system_task_type IS '任务类型 0、系统任务 1、业务任务';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.execution_at IS '任务执行时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.parent_id IS '父节点';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.update_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_task_batch.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON TABLE er_job_task_batch IS '任务批次';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_job_notify_config
 | 
			
		||||
(
 | 
			
		||||
    id                     BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id           VARCHAR(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name             VARCHAR(64)  NOT NULL,
 | 
			
		||||
    job_id                 BIGINT       NOT NULL,
 | 
			
		||||
    notify_status          SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    notify_type            SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    notify_attribute       VARCHAR(512) NOT NULL,
 | 
			
		||||
    notify_threshold       INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    notify_scene           SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    rate_limiter_status    SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    rate_limiter_threshold INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    description            VARCHAR(256) NOT NULL DEFAULT '',
 | 
			
		||||
    create_dt              TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt              TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_job_id_job_notify_config ON er_job_notify_config (namespace_id, group_name, job_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.notify_status IS '通知状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.notify_type IS '通知类型 1、钉钉 2、邮件 3、企业微信';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.notify_attribute IS '配置属性';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.notify_threshold IS '通知阈值';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.notify_scene IS '通知场景';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.rate_limiter_status IS '限流状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.rate_limiter_threshold IS '每秒限流阈值';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_notify_config.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE er_job_notify_config IS '通知配置';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_retry_summary
 | 
			
		||||
(
 | 
			
		||||
    id            BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id  VARCHAR(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name    VARCHAR(64) NOT NULL DEFAULT '',
 | 
			
		||||
    scene_name    VARCHAR(50) NOT NULL DEFAULT '',
 | 
			
		||||
    trigger_at    TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    running_num   INT         NOT NULL DEFAULT 0,
 | 
			
		||||
    finish_num    INT         NOT NULL DEFAULT 0,
 | 
			
		||||
    max_count_num INT         NOT NULL DEFAULT 0,
 | 
			
		||||
    suspend_num   INT         NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt     TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt     TIMESTAMP   NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_scene_name_trigger_at ON er_retry_summary (namespace_id, group_name, scene_name, trigger_at);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.trigger_at IS '统计时间';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.running_num IS '重试中-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.finish_num IS '重试完成-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.max_count_num IS '重试到达最大次数-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.suspend_num IS '暂停重试-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_retry_summary.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE er_retry_summary IS 'DashBoard_Retry';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_job_summary
 | 
			
		||||
(
 | 
			
		||||
    id               BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id     VARCHAR(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name       VARCHAR(64)  NOT NULL DEFAULT '',
 | 
			
		||||
    business_id      BIGINT       NOT NULL,
 | 
			
		||||
    system_task_type SMALLINT     NOT NULL DEFAULT '3',
 | 
			
		||||
    trigger_at       TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    success_num      INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    fail_num         INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    fail_reason      VARCHAR(512) NOT NULL DEFAULT '',
 | 
			
		||||
    stop_num         INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    stop_reason      VARCHAR(512) NOT NULL DEFAULT '',
 | 
			
		||||
    cancel_num       INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    cancel_reason    VARCHAR(512) NOT NULL DEFAULT '',
 | 
			
		||||
    create_dt        TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt        TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_trigger_at_system_task_type_business_id ON er_job_summary (trigger_at, system_task_type, business_id);
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_job_id ON er_job_summary (namespace_id, group_name, business_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.business_id IS '业务id (job_id或workflow_id)';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.trigger_at IS '统计时间';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.success_num IS '执行成功-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.fail_num IS '执行失败-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.fail_reason IS '失败原因';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.stop_num IS '执行失败-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.stop_reason IS '失败原因';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.cancel_num IS '执行失败-日志数量';
 | 
			
		||||
COMMENT ON COLUMN er_job_summary.cancel_reason IS '失败原因';
 | 
			
		||||
COMMENT ON TABLE er_job_summary IS 'DashBoard_Job';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_workflow
 | 
			
		||||
(
 | 
			
		||||
    id               BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    workflow_name    varchar(64)  NOT NULL,
 | 
			
		||||
    namespace_id     varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name       varchar(64)  NOT NULL,
 | 
			
		||||
    workflow_status  smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    trigger_type     smallint     NOT NULL,
 | 
			
		||||
    trigger_interval varchar(255) NOT NULL,
 | 
			
		||||
    next_trigger_at  BIGINT       NOT NULL,
 | 
			
		||||
    block_strategy   smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    executor_timeout INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    description      varchar(256) NOT NULL DEFAULT '',
 | 
			
		||||
    flow_info        text                  DEFAULT NULL,
 | 
			
		||||
    bucket_index     INT          NOT NULL DEFAULT 0,
 | 
			
		||||
    version          INT          NOT NULL,
 | 
			
		||||
    create_dt        timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt        timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    deleted          smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    ext_attrs        varchar(256) NULL     DEFAULT ''
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_create_dt_workflow ON er_workflow (create_dt);
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_workflow ON er_workflow (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_workflow IS '工作流';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.workflow_name IS '工作流名称';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.workflow_status IS '工作流状态 0、关闭、1、开启';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.trigger_interval IS '间隔时长';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.next_trigger_at IS '下次触发时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.executor_timeout IS '任务执行超时时间,单位秒';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.flow_info IS '流程信息';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.bucket_index IS 'bucket';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.version IS '版本号';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN er_workflow.ext_attrs IS '扩展字段';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_workflow_node
 | 
			
		||||
(
 | 
			
		||||
    id                   BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id         VARCHAR(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    node_name            VARCHAR(64)  NOT NULL,
 | 
			
		||||
    group_name           VARCHAR(64)  NOT NULL,
 | 
			
		||||
    job_id               BIGINT       NOT NULL,
 | 
			
		||||
    workflow_id          BIGINT       NOT NULL,
 | 
			
		||||
    node_type            SMALLINT     NOT NULL DEFAULT 1,
 | 
			
		||||
    expression_type      SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    fail_strategy        SMALLINT     NOT NULL DEFAULT 1,
 | 
			
		||||
    workflow_node_status SMALLINT     NOT NULL DEFAULT 1,
 | 
			
		||||
    priority_level       INT          NOT NULL DEFAULT 1,
 | 
			
		||||
    node_info            TEXT                  DEFAULT NULL,
 | 
			
		||||
    version              INT          NOT NULL,
 | 
			
		||||
    create_dt            TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt            TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    deleted              SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    ext_attrs            VARCHAR(256) NULL     DEFAULT ''
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_create_dt_workflow_node ON er_workflow_node (create_dt);
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_workflow_node ON er_workflow_node (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_workflow_node IS '工作流节点';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.node_name IS '节点名称';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.workflow_id IS '工作流ID';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.node_type IS '1、任务节点 2、条件节点';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.expression_type IS '1、SpEl、2、Aviator 3、QL';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.fail_strategy IS '失败策略 1、跳过 2、阻塞';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.workflow_node_status IS '工作流节点状态 0、关闭、1、开启';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.priority_level IS '优先级';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.node_info IS '节点信息';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.version IS '版本号';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_node.ext_attrs IS '扩展字段';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE er_workflow_task_batch
 | 
			
		||||
(
 | 
			
		||||
    id                BIGSERIAL PRIMARY KEY,
 | 
			
		||||
    namespace_id      VARCHAR(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name        VARCHAR(64)  NOT NULL,
 | 
			
		||||
    workflow_id       BIGINT       NOT NULL,
 | 
			
		||||
    task_batch_status SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    operation_reason  SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    flow_info         TEXT                  DEFAULT NULL,
 | 
			
		||||
    execution_at      BIGINT       NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt         TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt         TIMESTAMP    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    deleted           SMALLINT     NOT NULL DEFAULT 0,
 | 
			
		||||
    ext_attrs         VARCHAR(256) NULL     DEFAULT ''
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_job_id_task_batch_status_workflow_task_batch ON er_workflow_task_batch (workflow_id, task_batch_status);
 | 
			
		||||
CREATE INDEX idx_create_dt_workflow_task_batch ON er_workflow_task_batch (create_dt);
 | 
			
		||||
CREATE INDEX idx_namespace_id_group_name_workflow_task_batch ON er_workflow_task_batch (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON TABLE er_workflow_task_batch IS '工作流批次';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.workflow_id IS '工作流任务id';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.operation_reason IS '操作原因';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.flow_info IS '流程信息';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.execution_at IS '任务执行时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN er_workflow_task_batch.ext_attrs IS '扩展字段';
 | 
			
		||||
@@ -454,8 +454,8 @@ insert into sys_menu values('123',  '客户端管理',   '1',   '11', 'client',
 | 
			
		||||
insert into sys_menu values('117',  'Admin监控',   '2',   '5',  'Admin',            'monitor/admin/index',         '', '1', '0', 'C', '0', '0', 'monitor:admin:list',          'dashboard',     103, 1, now(), null, null, 'Admin监控菜单');
 | 
			
		||||
-- oss菜单
 | 
			
		||||
insert into sys_menu values('118',  '文件管理',     '1',   '10', 'oss',              'system/oss/index',            '', '1', '0', 'C', '0', '0', 'system:oss:list',             'upload',        103, 1, now(), null, null, '文件管理菜单');
 | 
			
		||||
-- retry server控制台
 | 
			
		||||
insert into sys_menu values('120',  '任务调度中心',  '2',   '6',  'easyretry',     'monitor/easyretry/index',    '', '1', '0', 'C', '0', '0', 'monitor:easyretry:list',          'job',           103, 1, now(), null, null, 'EasyRetry控制台菜单');
 | 
			
		||||
-- snail-job server控制台
 | 
			
		||||
insert into sys_menu values('120',  '任务调度中心',  '2',   '6',  'snailjob',     'monitor/snailjob/index',    '', '1', '0', 'C', '0', '0', 'monitor:snailjob:list',          'job',           103, 1, now(), null, null, 'SnailJob控制台菜单');
 | 
			
		||||
 | 
			
		||||
-- 三级菜单
 | 
			
		||||
insert into sys_menu values('500',  '操作日志', '108', '1', 'operlog',    'monitor/operlog/index',    '', '1', '0', 'C', '0', '0', 'monitor:operlog:list',    'form',          103, 1, now(), null, null, '操作日志菜单');
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										825
									
								
								script/sql/postgres/snail_job_postgre.sql
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										825
									
								
								script/sql/postgres/snail_job_postgre.sql
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,825 @@
 | 
			
		||||
/*
 | 
			
		||||
 SnailJob Database Transfer Tool
 | 
			
		||||
 Source Server Type    : MySQL
 | 
			
		||||
 Target Server Type    : PostgreSQL
 | 
			
		||||
 Date: 2024-05-13 22:49:34
 | 
			
		||||
*/
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
-- sj_namespace
 | 
			
		||||
CREATE TABLE sj_namespace
 | 
			
		||||
(
 | 
			
		||||
    id          bigserial PRIMARY KEY,
 | 
			
		||||
    name        varchar(64)  NOT NULL,
 | 
			
		||||
    unique_id   varchar(64)  NOT NULL,
 | 
			
		||||
    description varchar(256) NOT NULL DEFAULT '',
 | 
			
		||||
    deleted     smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt   timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt   timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_namespace_01 ON sj_namespace (name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_namespace.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_namespace.name IS '名称';
 | 
			
		||||
COMMENT ON COLUMN sj_namespace.unique_id IS '唯一id';
 | 
			
		||||
COMMENT ON COLUMN sj_namespace.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN sj_namespace.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN sj_namespace.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_namespace.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_namespace IS '命名空间';
 | 
			
		||||
 | 
			
		||||
INSERT INTO sj_namespace VALUES (1, 'Development', 'dev', '', 0, now(), now());
 | 
			
		||||
INSERT INTO sj_namespace VALUES (2, 'Production', 'prod', '', 0, now(), now());
 | 
			
		||||
 | 
			
		||||
-- sj_group_config
 | 
			
		||||
CREATE TABLE sj_group_config
 | 
			
		||||
(
 | 
			
		||||
    id                bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id      varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name        varchar(64)  NOT NULL DEFAULT '',
 | 
			
		||||
    description       varchar(256) NOT NULL DEFAULT '',
 | 
			
		||||
    token             varchar(64)  NOT NULL DEFAULT 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT',
 | 
			
		||||
    group_status      smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    version           int          NOT NULL,
 | 
			
		||||
    group_partition   int          NOT NULL,
 | 
			
		||||
    id_generator_mode smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    init_scene        smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    bucket_index      int          NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt         timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt         timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_group_config_01 ON sj_group_config (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.description IS '组描述';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.token IS 'token';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.group_status IS '组状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.version IS '版本号';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.group_partition IS '分区';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.id_generator_mode IS '唯一id生成模式 默认号段模式';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.init_scene IS '是否初始化场景 0:否 1:是';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.bucket_index IS 'bucket';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_group_config.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_group_config IS '组配置';
 | 
			
		||||
 | 
			
		||||
INSERT INTO sj_group_config VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now());
 | 
			
		||||
 | 
			
		||||
-- sj_notify_config
 | 
			
		||||
CREATE TABLE sj_notify_config
 | 
			
		||||
(
 | 
			
		||||
    id                     bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id           varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name             varchar(64)  NOT NULL,
 | 
			
		||||
    business_id            varchar(64)  NOT NULL,
 | 
			
		||||
    system_task_type       smallint     NOT NULL DEFAULT 3,
 | 
			
		||||
    notify_status          smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    recipient_ids          varchar(128) NOT NULL,
 | 
			
		||||
    notify_threshold       int          NOT NULL DEFAULT 0,
 | 
			
		||||
    notify_scene           smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    rate_limiter_status    smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    rate_limiter_threshold int          NOT NULL DEFAULT 0,
 | 
			
		||||
    description            varchar(256) NOT NULL DEFAULT '',
 | 
			
		||||
    create_dt              timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt              timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_notify_config_01 ON sj_notify_config (namespace_id, group_name, business_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.business_id IS '业务id  ( job_id或workflow_id或scene_name ) ';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.system_task_type IS '任务类型 1. 重试任务 2. 重试回调 3、JOB任务 4、WORKFLOW任务';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.notify_status IS '通知状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.recipient_ids IS '接收人id列表';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.notify_threshold IS '通知阈值';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.notify_scene IS '通知场景';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.rate_limiter_status IS '限流状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.rate_limiter_threshold IS '每秒限流阈值';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_config.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_notify_config IS '通知配置';
 | 
			
		||||
 | 
			
		||||
-- sj_notify_recipient
 | 
			
		||||
CREATE TABLE sj_notify_recipient
 | 
			
		||||
(
 | 
			
		||||
    id               bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id     varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    recipient_name   varchar(64)  NOT NULL,
 | 
			
		||||
    notify_type      smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    notify_attribute varchar(512) NOT NULL,
 | 
			
		||||
    description      varchar(256) NOT NULL DEFAULT '',
 | 
			
		||||
    create_dt        timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt        timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_notify_recipient_01 ON sj_notify_recipient (namespace_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.recipient_name IS '接收人名称';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.notify_type IS '通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.notify_attribute IS '配置属性';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_notify_recipient.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_notify_recipient IS '告警通知接收人';
 | 
			
		||||
 | 
			
		||||
-- sj_retry_dead_letter_0
 | 
			
		||||
CREATE TABLE sj_retry_dead_letter_0
 | 
			
		||||
(
 | 
			
		||||
    id            bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id  varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    unique_id     varchar(64)  NOT NULL,
 | 
			
		||||
    group_name    varchar(64)  NOT NULL,
 | 
			
		||||
    scene_name    varchar(64)  NOT NULL,
 | 
			
		||||
    idempotent_id varchar(64)  NOT NULL,
 | 
			
		||||
    biz_no        varchar(64)  NOT NULL DEFAULT '',
 | 
			
		||||
    executor_name varchar(512) NOT NULL DEFAULT '',
 | 
			
		||||
    args_str      text         NOT NULL,
 | 
			
		||||
    ext_attrs     text         NOT NULL,
 | 
			
		||||
    task_type     smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    create_dt     timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, unique_id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_retry_dead_letter_0_01 ON sj_retry_dead_letter_0 (namespace_id, group_name, scene_name);
 | 
			
		||||
CREATE INDEX idx_sj_retry_dead_letter_0_02 ON sj_retry_dead_letter_0 (idempotent_id);
 | 
			
		||||
CREATE INDEX idx_sj_retry_dead_letter_0_03 ON sj_retry_dead_letter_0 (biz_no);
 | 
			
		||||
CREATE INDEX idx_sj_retry_dead_letter_0_04 ON sj_retry_dead_letter_0 (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.idempotent_id IS '幂等id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.biz_no IS '业务编号';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.executor_name IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.task_type IS '任务类型 1、重试数据 2、回调数据';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_dead_letter_0.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON TABLE sj_retry_dead_letter_0 IS '死信队列表';
 | 
			
		||||
 | 
			
		||||
-- sj_retry_task_0
 | 
			
		||||
CREATE TABLE sj_retry_task_0
 | 
			
		||||
(
 | 
			
		||||
    id              bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id    varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    unique_id       varchar(64)  NOT NULL,
 | 
			
		||||
    group_name      varchar(64)  NOT NULL,
 | 
			
		||||
    scene_name      varchar(64)  NOT NULL,
 | 
			
		||||
    idempotent_id   varchar(64)  NOT NULL,
 | 
			
		||||
    biz_no          varchar(64)  NOT NULL DEFAULT '',
 | 
			
		||||
    executor_name   varchar(512) NOT NULL DEFAULT '',
 | 
			
		||||
    args_str        text         NOT NULL,
 | 
			
		||||
    ext_attrs       text         NOT NULL,
 | 
			
		||||
    next_trigger_at timestamp    NOT NULL,
 | 
			
		||||
    retry_count     int          NOT NULL DEFAULT 0,
 | 
			
		||||
    retry_status    smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    task_type       smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    create_dt       timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt       timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, unique_id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_0_01 ON sj_retry_task_0 (namespace_id, group_name, scene_name);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_0_02 ON sj_retry_task_0 (namespace_id, group_name, task_type);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_0_03 ON sj_retry_task_0 (namespace_id, group_name, retry_status);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_0_04 ON sj_retry_task_0 (idempotent_id);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_0_05 ON sj_retry_task_0 (biz_no);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_0_06 ON sj_retry_task_0 (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.idempotent_id IS '幂等id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.biz_no IS '业务编号';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.executor_name IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.next_trigger_at IS '下次触发时间';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.retry_count IS '重试次数';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.retry_status IS '重试状态 0、重试中 1、成功 2、最大重试次数';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.task_type IS '任务类型 1、重试数据 2、回调数据';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_0.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_retry_task_0 IS '任务表';
 | 
			
		||||
 | 
			
		||||
-- sj_retry_task_log
 | 
			
		||||
CREATE TABLE sj_retry_task_log
 | 
			
		||||
(
 | 
			
		||||
    id            bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id  varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    unique_id     varchar(64)  NOT NULL,
 | 
			
		||||
    group_name    varchar(64)  NOT NULL,
 | 
			
		||||
    scene_name    varchar(64)  NOT NULL,
 | 
			
		||||
    idempotent_id varchar(64)  NOT NULL,
 | 
			
		||||
    biz_no        varchar(64)  NOT NULL DEFAULT '',
 | 
			
		||||
    executor_name varchar(512) NOT NULL DEFAULT '',
 | 
			
		||||
    args_str      text         NOT NULL,
 | 
			
		||||
    ext_attrs     text         NOT NULL,
 | 
			
		||||
    retry_status  smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    task_type     smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    create_dt     timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt     timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_01 ON sj_retry_task_log (namespace_id, group_name, scene_name);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_02 ON sj_retry_task_log (retry_status);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_03 ON sj_retry_task_log (idempotent_id);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_04 ON sj_retry_task_log (unique_id);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_05 ON sj_retry_task_log (biz_no);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_06 ON sj_retry_task_log (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.idempotent_id IS '幂等id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.biz_no IS '业务编号';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.executor_name IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.retry_status IS '重试状态 0、重试中 1、成功 2、最大次数';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.task_type IS '任务类型 1、重试数据 2、回调数据';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_retry_task_log IS '任务日志基础信息表';
 | 
			
		||||
 | 
			
		||||
-- sj_retry_task_log_message
 | 
			
		||||
CREATE TABLE sj_retry_task_log_message
 | 
			
		||||
(
 | 
			
		||||
    id           bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name   varchar(64) NOT NULL,
 | 
			
		||||
    unique_id    varchar(64) NOT NULL,
 | 
			
		||||
    message      text        NOT NULL,
 | 
			
		||||
    log_num      int         NOT NULL DEFAULT 1,
 | 
			
		||||
    real_time    bigint      NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt    timestamp   NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_message_01 ON sj_retry_task_log_message (namespace_id, group_name, unique_id);
 | 
			
		||||
CREATE INDEX idx_sj_retry_task_log_message_02 ON sj_retry_task_log_message (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.unique_id IS '同组下id唯一';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.message IS '异常信息';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.log_num IS '日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.real_time IS '上报时间';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_task_log_message.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON TABLE sj_retry_task_log_message IS '任务调度日志信息记录表';
 | 
			
		||||
 | 
			
		||||
-- sj_retry_scene_config
 | 
			
		||||
CREATE TABLE sj_retry_scene_config
 | 
			
		||||
(
 | 
			
		||||
    id               bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id     varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    scene_name       varchar(64)  NOT NULL,
 | 
			
		||||
    group_name       varchar(64)  NOT NULL,
 | 
			
		||||
    scene_status     smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    max_retry_count  int          NOT NULL DEFAULT 5,
 | 
			
		||||
    back_off         smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    trigger_interval varchar(16)  NOT NULL DEFAULT '',
 | 
			
		||||
    deadline_request bigint       NOT NULL DEFAULT 60000,
 | 
			
		||||
    executor_timeout int          NOT NULL DEFAULT 5,
 | 
			
		||||
    route_key        smallint     NOT NULL DEFAULT 4,
 | 
			
		||||
    description      varchar(256) NOT NULL DEFAULT '',
 | 
			
		||||
    create_dt        timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt        timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_retry_scene_config_01 ON sj_retry_scene_config (namespace_id, group_name, scene_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.scene_status IS '组状态 0、未启用 1、启用';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.max_retry_count IS '最大重试次数';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.back_off IS '1、默认等级 2、固定间隔时间 3、CRON 表达式';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.trigger_interval IS '间隔时长';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.deadline_request IS 'Deadline Request 调用链超时 单位毫秒';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.executor_timeout IS '任务执行超时时间,单位秒';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.route_key IS '路由策略';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_scene_config.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_retry_scene_config IS '场景配置';
 | 
			
		||||
 | 
			
		||||
-- sj_server_node
 | 
			
		||||
CREATE TABLE sj_server_node
 | 
			
		||||
(
 | 
			
		||||
    id           bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name   varchar(64)  NOT NULL,
 | 
			
		||||
    host_id      varchar(64)  NOT NULL,
 | 
			
		||||
    host_ip      varchar(64)  NOT NULL,
 | 
			
		||||
    host_port    int          NOT NULL,
 | 
			
		||||
    expire_at    timestamp    NOT NULL,
 | 
			
		||||
    node_type    smallint     NOT NULL,
 | 
			
		||||
    ext_attrs    varchar(256) NULL     DEFAULT '',
 | 
			
		||||
    create_dt    timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt    timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_server_node_01 ON sj_server_node (host_id, host_ip);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_server_node_01 ON sj_server_node (namespace_id, group_name);
 | 
			
		||||
CREATE INDEX idx_sj_server_node_02 ON sj_server_node (expire_at, node_type);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.host_id IS '主机id';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.host_ip IS '机器ip';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.host_port IS '机器端口';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.expire_at IS '过期时间';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.node_type IS '节点类型 1、客户端 2、是服务端';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_server_node.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_server_node IS '服务器节点';
 | 
			
		||||
 | 
			
		||||
-- sj_distributed_lock
 | 
			
		||||
CREATE TABLE sj_distributed_lock
 | 
			
		||||
(
 | 
			
		||||
    id         bigserial PRIMARY KEY,
 | 
			
		||||
    name       varchar(64)  NOT NULL,
 | 
			
		||||
    lock_until timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
 | 
			
		||||
    locked_at  timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3),
 | 
			
		||||
    locked_by  varchar(255) NOT NULL,
 | 
			
		||||
    create_dt  timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt  timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_distributed_lock.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_distributed_lock.name IS '锁名称';
 | 
			
		||||
COMMENT ON COLUMN sj_distributed_lock.lock_until IS '锁定时长';
 | 
			
		||||
COMMENT ON COLUMN sj_distributed_lock.locked_at IS '锁定时间';
 | 
			
		||||
COMMENT ON COLUMN sj_distributed_lock.locked_by IS '锁定者';
 | 
			
		||||
COMMENT ON COLUMN sj_distributed_lock.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_distributed_lock.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_distributed_lock IS '锁定表';
 | 
			
		||||
 | 
			
		||||
-- sj_system_user
 | 
			
		||||
CREATE TABLE sj_system_user
 | 
			
		||||
(
 | 
			
		||||
    id        bigserial PRIMARY KEY,
 | 
			
		||||
    username  varchar(64)  NOT NULL,
 | 
			
		||||
    password  varchar(128) NOT NULL,
 | 
			
		||||
    role      smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_system_user.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user.username IS '账号';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user.password IS '密码';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user.role IS '角色:1-普通用户、2-管理员';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_system_user IS '系统用户表';
 | 
			
		||||
 | 
			
		||||
-- pwd: admin
 | 
			
		||||
INSERT INTO sj_system_user VALUES (1, 'admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2, now(), now());
 | 
			
		||||
 | 
			
		||||
-- sj_system_user_permission
 | 
			
		||||
CREATE TABLE sj_system_user_permission
 | 
			
		||||
(
 | 
			
		||||
    id             bigserial PRIMARY KEY,
 | 
			
		||||
    group_name     varchar(64) NOT NULL,
 | 
			
		||||
    namespace_id   varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    system_user_id bigint      NOT NULL,
 | 
			
		||||
    create_dt      timestamp   NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt      timestamp   NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_system_user_permission_01 ON sj_system_user_permission (namespace_id, group_name, system_user_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_system_user_permission.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user_permission.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user_permission.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user_permission.system_user_id IS '系统用户id';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user_permission.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_system_user_permission.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_system_user_permission IS '系统用户权限表';
 | 
			
		||||
 | 
			
		||||
-- sj_sequence_alloc
 | 
			
		||||
CREATE TABLE sj_sequence_alloc
 | 
			
		||||
(
 | 
			
		||||
    id           bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name   varchar(64) NOT NULL DEFAULT '',
 | 
			
		||||
    max_id       bigint      NOT NULL DEFAULT 1,
 | 
			
		||||
    step         int         NOT NULL DEFAULT 100,
 | 
			
		||||
    update_dt    timestamp   NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_sequence_alloc_01 ON sj_sequence_alloc (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_sequence_alloc.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_sequence_alloc.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_sequence_alloc.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_sequence_alloc.max_id IS '最大id';
 | 
			
		||||
COMMENT ON COLUMN sj_sequence_alloc.step IS '步长';
 | 
			
		||||
COMMENT ON COLUMN sj_sequence_alloc.update_dt IS '更新时间';
 | 
			
		||||
COMMENT ON TABLE sj_sequence_alloc IS '号段模式序号ID分配表';
 | 
			
		||||
 | 
			
		||||
-- sj_job
 | 
			
		||||
CREATE TABLE sj_job
 | 
			
		||||
(
 | 
			
		||||
    id               bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id     varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name       varchar(64)  NOT NULL,
 | 
			
		||||
    job_name         varchar(64)  NOT NULL,
 | 
			
		||||
    args_str         text         NULL     DEFAULT NULL,
 | 
			
		||||
    args_type        smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    next_trigger_at  bigint       NOT NULL,
 | 
			
		||||
    job_status       smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    task_type        smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    route_key        smallint     NOT NULL DEFAULT 4,
 | 
			
		||||
    executor_type    smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    executor_info    varchar(255) NULL     DEFAULT NULL,
 | 
			
		||||
    trigger_type     smallint     NOT NULL,
 | 
			
		||||
    trigger_interval varchar(255) NOT NULL,
 | 
			
		||||
    block_strategy   smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    executor_timeout int          NOT NULL DEFAULT 0,
 | 
			
		||||
    max_retry_times  int          NOT NULL DEFAULT 0,
 | 
			
		||||
    parallel_num     int          NOT NULL DEFAULT 1,
 | 
			
		||||
    retry_interval   int          NOT NULL DEFAULT 0,
 | 
			
		||||
    bucket_index     int          NOT NULL DEFAULT 0,
 | 
			
		||||
    resident         smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    description      varchar(256) NOT NULL DEFAULT '',
 | 
			
		||||
    ext_attrs        varchar(256) NULL     DEFAULT '',
 | 
			
		||||
    deleted          smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt        timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt        timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_job_01 ON sj_job (namespace_id, group_name);
 | 
			
		||||
CREATE INDEX idx_sj_job_02 ON sj_job (job_status, bucket_index);
 | 
			
		||||
CREATE INDEX idx_sj_job_03 ON sj_job (create_dt);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_job.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_job.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_job.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_job.job_name IS '名称';
 | 
			
		||||
COMMENT ON COLUMN sj_job.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN sj_job.args_type IS '参数类型 ';
 | 
			
		||||
COMMENT ON COLUMN sj_job.next_trigger_at IS '下次触发时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job.job_status IS '任务状态 0、关闭、1、开启';
 | 
			
		||||
COMMENT ON COLUMN sj_job.task_type IS '任务类型 1、集群 2、广播 3、切片';
 | 
			
		||||
COMMENT ON COLUMN sj_job.route_key IS '路由策略';
 | 
			
		||||
COMMENT ON COLUMN sj_job.executor_type IS '执行器类型';
 | 
			
		||||
COMMENT ON COLUMN sj_job.executor_info IS '执行器名称';
 | 
			
		||||
COMMENT ON COLUMN sj_job.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job.trigger_interval IS '间隔时长';
 | 
			
		||||
COMMENT ON COLUMN sj_job.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
 | 
			
		||||
COMMENT ON COLUMN sj_job.executor_timeout IS '任务执行超时时间,单位秒';
 | 
			
		||||
COMMENT ON COLUMN sj_job.max_retry_times IS '最大重试次数';
 | 
			
		||||
COMMENT ON COLUMN sj_job.parallel_num IS '并行数';
 | 
			
		||||
COMMENT ON COLUMN sj_job.retry_interval IS '重试间隔 ( s ) ';
 | 
			
		||||
COMMENT ON COLUMN sj_job.bucket_index IS 'bucket';
 | 
			
		||||
COMMENT ON COLUMN sj_job.resident IS '是否是常驻任务';
 | 
			
		||||
COMMENT ON COLUMN sj_job.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN sj_job.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_job.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN sj_job.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_job IS '任务信息';
 | 
			
		||||
 | 
			
		||||
INSERT INTO sj_job VALUES (1, 'dev', 'ruoyi_group', 'demo-job', null, 1, 1710344035622, 1, 1, 4, 1, 'testJobExecutor', 2, '60', 1, 60, 3, 1, 1, 116, 0, '', '', 0, now(), now());
 | 
			
		||||
 | 
			
		||||
-- sj_job_log_message
 | 
			
		||||
CREATE TABLE sj_job_log_message
 | 
			
		||||
(
 | 
			
		||||
    id            bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id  varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name    varchar(64)  NOT NULL,
 | 
			
		||||
    job_id        bigint       NOT NULL,
 | 
			
		||||
    task_batch_id bigint       NOT NULL,
 | 
			
		||||
    task_id       bigint       NOT NULL,
 | 
			
		||||
    message       text         NOT NULL,
 | 
			
		||||
    log_num       int          NOT NULL DEFAULT 1,
 | 
			
		||||
    real_time     bigint       NOT NULL DEFAULT 0,
 | 
			
		||||
    ext_attrs     varchar(256) NULL     DEFAULT '',
 | 
			
		||||
    create_dt     timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_job_log_message_01 ON sj_job_log_message (task_batch_id, task_id);
 | 
			
		||||
CREATE INDEX idx_sj_job_log_message_02 ON sj_job_log_message (create_dt);
 | 
			
		||||
CREATE INDEX idx_sj_job_log_message_03 ON sj_job_log_message (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.task_batch_id IS '任务批次id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.task_id IS '调度任务id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.message IS '调度信息';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.log_num IS '日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.real_time IS '上报时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_job_log_message.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON TABLE sj_job_log_message IS '调度日志';
 | 
			
		||||
 | 
			
		||||
-- sj_job_task
 | 
			
		||||
CREATE TABLE sj_job_task
 | 
			
		||||
(
 | 
			
		||||
    id             bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id   varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name     varchar(64)  NOT NULL,
 | 
			
		||||
    job_id         bigint       NOT NULL,
 | 
			
		||||
    task_batch_id  bigint       NOT NULL,
 | 
			
		||||
    parent_id      bigint       NOT NULL DEFAULT 0,
 | 
			
		||||
    task_status    smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    retry_count    int          NOT NULL DEFAULT 0,
 | 
			
		||||
    client_info    varchar(128) NULL     DEFAULT NULL,
 | 
			
		||||
    result_message text         NOT NULL,
 | 
			
		||||
    args_str       text         NULL     DEFAULT NULL,
 | 
			
		||||
    args_type      smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    ext_attrs      varchar(256) NULL     DEFAULT '',
 | 
			
		||||
    create_dt      timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt      timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_job_task_01 ON sj_job_task (task_batch_id, task_status);
 | 
			
		||||
CREATE INDEX idx_sj_job_task_02 ON sj_job_task (create_dt);
 | 
			
		||||
CREATE INDEX idx_sj_job_task_03 ON sj_job_task (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.task_batch_id IS '调度任务id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.parent_id IS '父执行器id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.task_status IS '执行的状态 0、失败 1、成功';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.retry_count IS '重试次数';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.client_info IS '客户端地址 clientId#ip:port';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.result_message IS '执行结果';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.args_str IS '执行方法参数';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.args_type IS '参数类型 ';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_job_task IS '任务实例';
 | 
			
		||||
 | 
			
		||||
-- sj_job_task_batch
 | 
			
		||||
CREATE TABLE sj_job_task_batch
 | 
			
		||||
(
 | 
			
		||||
    id                      bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id            varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name              varchar(64)  NOT NULL,
 | 
			
		||||
    job_id                  bigint       NOT NULL,
 | 
			
		||||
    workflow_node_id        bigint       NOT NULL DEFAULT 0,
 | 
			
		||||
    parent_workflow_node_id bigint       NOT NULL DEFAULT 0,
 | 
			
		||||
    workflow_task_batch_id  bigint       NOT NULL DEFAULT 0,
 | 
			
		||||
    task_batch_status       smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    operation_reason        smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    execution_at            bigint       NOT NULL DEFAULT 0,
 | 
			
		||||
    system_task_type        smallint     NOT NULL DEFAULT 3,
 | 
			
		||||
    parent_id               varchar(64)  NOT NULL DEFAULT '',
 | 
			
		||||
    ext_attrs               varchar(256) NULL     DEFAULT '',
 | 
			
		||||
    deleted                 smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt               timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt               timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_job_task_batch_01 ON sj_job_task_batch (job_id, task_batch_status);
 | 
			
		||||
CREATE INDEX idx_sj_job_task_batch_02 ON sj_job_task_batch (create_dt);
 | 
			
		||||
CREATE INDEX idx_sj_job_task_batch_03 ON sj_job_task_batch (namespace_id, group_name);
 | 
			
		||||
CREATE INDEX idx_sj_job_task_batch_04 ON sj_job_task_batch (workflow_task_batch_id, workflow_node_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.job_id IS '任务id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.workflow_node_id IS '工作流节点id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.parent_workflow_node_id IS '工作流任务父批次id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.workflow_task_batch_id IS '工作流任务批次id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.operation_reason IS '操作原因';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.execution_at IS '任务执行时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.parent_id IS '父节点';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job_task_batch.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_job_task_batch IS '任务批次';
 | 
			
		||||
 | 
			
		||||
-- sj_job_summary
 | 
			
		||||
CREATE TABLE sj_job_summary
 | 
			
		||||
(
 | 
			
		||||
    id               bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id     varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name       varchar(64)  NOT NULL DEFAULT '',
 | 
			
		||||
    business_id      bigint       NOT NULL,
 | 
			
		||||
    system_task_type smallint     NOT NULL DEFAULT 3,
 | 
			
		||||
    trigger_at       timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    success_num      int          NOT NULL DEFAULT 0,
 | 
			
		||||
    fail_num         int          NOT NULL DEFAULT 0,
 | 
			
		||||
    fail_reason      varchar(512) NOT NULL DEFAULT '',
 | 
			
		||||
    stop_num         int          NOT NULL DEFAULT 0,
 | 
			
		||||
    stop_reason      varchar(512) NOT NULL DEFAULT '',
 | 
			
		||||
    cancel_num       int          NOT NULL DEFAULT 0,
 | 
			
		||||
    cancel_reason    varchar(512) NOT NULL DEFAULT '',
 | 
			
		||||
    create_dt        timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt        timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_job_summary_01 ON sj_job_summary (trigger_at, system_task_type, business_id);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_job_summary_01 ON sj_job_summary (namespace_id, group_name, business_id);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.business_id IS '业务id  ( job_id或workflow_id ) ';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.system_task_type IS '任务类型 3、JOB任务 4、WORKFLOW任务';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.trigger_at IS '统计时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.success_num IS '执行成功-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.fail_num IS '执行失败-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.fail_reason IS '失败原因';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.stop_num IS '执行失败-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.stop_reason IS '失败原因';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.cancel_num IS '执行失败-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.cancel_reason IS '失败原因';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_job_summary.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_job_summary IS 'DashBoard_Job';
 | 
			
		||||
 | 
			
		||||
-- sj_retry_summary
 | 
			
		||||
CREATE TABLE sj_retry_summary
 | 
			
		||||
(
 | 
			
		||||
    id            bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id  varchar(64) NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name    varchar(64) NOT NULL DEFAULT '',
 | 
			
		||||
    scene_name    varchar(50) NOT NULL DEFAULT '',
 | 
			
		||||
    trigger_at    timestamp   NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    running_num   int         NOT NULL DEFAULT 0,
 | 
			
		||||
    finish_num    int         NOT NULL DEFAULT 0,
 | 
			
		||||
    max_count_num int         NOT NULL DEFAULT 0,
 | 
			
		||||
    suspend_num   int         NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt     timestamp   NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt     timestamp   NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE UNIQUE INDEX uk_sj_retry_summary_01 ON sj_retry_summary (namespace_id, group_name, scene_name, trigger_at);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_retry_summary_01 ON sj_retry_summary (trigger_at);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.scene_name IS '场景名称';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.trigger_at IS '统计时间';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.running_num IS '重试中-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.finish_num IS '重试完成-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.max_count_num IS '重试到达最大次数-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.suspend_num IS '暂停重试-日志数量';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_retry_summary.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_retry_summary IS 'DashBoard_Retry';
 | 
			
		||||
 | 
			
		||||
-- sj_workflow
 | 
			
		||||
CREATE TABLE sj_workflow
 | 
			
		||||
(
 | 
			
		||||
    id               bigserial PRIMARY KEY,
 | 
			
		||||
    workflow_name    varchar(64)  NOT NULL,
 | 
			
		||||
    namespace_id     varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name       varchar(64)  NOT NULL,
 | 
			
		||||
    workflow_status  smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    trigger_type     smallint     NOT NULL,
 | 
			
		||||
    trigger_interval varchar(255) NOT NULL,
 | 
			
		||||
    next_trigger_at  bigint       NOT NULL,
 | 
			
		||||
    block_strategy   smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    executor_timeout int          NOT NULL DEFAULT 0,
 | 
			
		||||
    description      varchar(256) NOT NULL DEFAULT '',
 | 
			
		||||
    flow_info        text         NULL     DEFAULT NULL,
 | 
			
		||||
    bucket_index     int          NOT NULL DEFAULT 0,
 | 
			
		||||
    version          int          NOT NULL,
 | 
			
		||||
    ext_attrs        varchar(256) NULL     DEFAULT '',
 | 
			
		||||
    deleted          smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt        timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt        timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_workflow_01 ON sj_workflow (create_dt);
 | 
			
		||||
CREATE INDEX idx_sj_workflow_02 ON sj_workflow (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.workflow_name IS '工作流名称';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.workflow_status IS '工作流状态 0、关闭、1、开启';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.trigger_type IS '触发类型 1.CRON 表达式 2. 固定时间';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.trigger_interval IS '间隔时长';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.next_trigger_at IS '下次触发时间';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.block_strategy IS '阻塞策略 1、丢弃 2、覆盖 3、并行';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.executor_timeout IS '任务执行超时时间,单位秒';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.description IS '描述';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.flow_info IS '流程信息';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.bucket_index IS 'bucket';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.version IS '版本号';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_workflow IS '工作流';
 | 
			
		||||
 | 
			
		||||
-- sj_workflow_node
 | 
			
		||||
CREATE TABLE sj_workflow_node
 | 
			
		||||
(
 | 
			
		||||
    id                   bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id         varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    node_name            varchar(64)  NOT NULL,
 | 
			
		||||
    group_name           varchar(64)  NOT NULL,
 | 
			
		||||
    job_id               bigint       NOT NULL,
 | 
			
		||||
    workflow_id          bigint       NOT NULL,
 | 
			
		||||
    node_type            smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    expression_type      smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    fail_strategy        smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    workflow_node_status smallint     NOT NULL DEFAULT 1,
 | 
			
		||||
    priority_level       int          NOT NULL DEFAULT 1,
 | 
			
		||||
    node_info            text         NULL     DEFAULT NULL,
 | 
			
		||||
    version              int          NOT NULL,
 | 
			
		||||
    ext_attrs            varchar(256) NULL     DEFAULT '',
 | 
			
		||||
    deleted              smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt            timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt            timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_workflow_node_01 ON sj_workflow_node (create_dt);
 | 
			
		||||
CREATE INDEX idx_sj_workflow_node_02 ON sj_workflow_node (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.node_name IS '节点名称';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.job_id IS '任务信息id';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.workflow_id IS '工作流ID';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.node_type IS '1、任务节点 2、条件节点';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.expression_type IS '1、SpEl、2、Aviator 3、QL';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.fail_strategy IS '失败策略 1、跳过 2、阻塞';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.workflow_node_status IS '工作流节点状态 0、关闭、1、开启';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.priority_level IS '优先级';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.node_info IS '节点信息 ';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.version IS '版本号';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_node.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_workflow_node IS '工作流节点';
 | 
			
		||||
 | 
			
		||||
-- sj_workflow_task_batch
 | 
			
		||||
CREATE TABLE sj_workflow_task_batch
 | 
			
		||||
(
 | 
			
		||||
    id                bigserial PRIMARY KEY,
 | 
			
		||||
    namespace_id      varchar(64)  NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a',
 | 
			
		||||
    group_name        varchar(64)  NOT NULL,
 | 
			
		||||
    workflow_id       bigint       NOT NULL,
 | 
			
		||||
    task_batch_status smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    operation_reason  smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    flow_info         text         NULL     DEFAULT NULL,
 | 
			
		||||
    execution_at      bigint       NOT NULL DEFAULT 0,
 | 
			
		||||
    ext_attrs         varchar(256) NULL     DEFAULT '',
 | 
			
		||||
    deleted           smallint     NOT NULL DEFAULT 0,
 | 
			
		||||
    create_dt         timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP,
 | 
			
		||||
    update_dt         timestamp    NOT NULL DEFAULT CURRENT_TIMESTAMP
 | 
			
		||||
);
 | 
			
		||||
 | 
			
		||||
CREATE INDEX idx_sj_workflow_task_batch_01 ON sj_workflow_task_batch (workflow_id, task_batch_status);
 | 
			
		||||
CREATE INDEX idx_sj_workflow_task_batch_02 ON sj_workflow_task_batch (create_dt);
 | 
			
		||||
CREATE INDEX idx_sj_workflow_task_batch_03 ON sj_workflow_task_batch (namespace_id, group_name);
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.id IS '主键';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.namespace_id IS '命名空间id';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.group_name IS '组名称';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.workflow_id IS '工作流任务id';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.task_batch_status IS '任务批次状态 0、失败 1、成功';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.operation_reason IS '操作原因';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.flow_info IS '流程信息';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.execution_at IS '任务执行时间';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.ext_attrs IS '扩展字段';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.deleted IS '逻辑删除 1、删除';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.create_dt IS '创建时间';
 | 
			
		||||
COMMENT ON COLUMN sj_workflow_task_batch.update_dt IS '修改时间';
 | 
			
		||||
COMMENT ON TABLE sj_workflow_task_batch IS '工作流批次';
 | 
			
		||||
 | 
			
		||||
@@ -288,8 +288,8 @@ insert into sys_menu values('123',  '客户端管理',   '1',   '11', 'client',
 | 
			
		||||
insert into sys_menu values('117',  'Admin监控',   '2',   '5',  'Admin',            'monitor/admin/index',         '', 1, 0, 'C', '0', '0', 'monitor:admin:list',           'dashboard',     103, 1, sysdate(), null, null, 'Admin监控菜单');
 | 
			
		||||
-- oss菜单
 | 
			
		||||
insert into sys_menu values('118',  '文件管理',     '1',   '10', 'oss',              'system/oss/index',            '', 1, 0, 'C', '0', '0', 'system:oss:list',              'upload',        103, 1, sysdate(), null, null, '文件管理菜单');
 | 
			
		||||
-- retry server控制台
 | 
			
		||||
insert into sys_menu values('120',  '任务调度中心',  '2',   '6',  'easyretry',     'monitor/easyretry/index',    '', 1, 0, 'C', '0', '0', 'monitor:easyretry:list',          'job',           103, 1, sysdate(), null, null, 'EasyRetry控制台菜单');
 | 
			
		||||
-- snail-job server控制台
 | 
			
		||||
insert into sys_menu values('120',  '任务调度中心',  '2',   '6',  'snailjob',     'monitor/snailjob/index',    '', 1, 0, 'C', '0', '0', 'monitor:snailjob:list',          'job',           103, 1, sysdate(), null, null, 'SnailJob控制台菜单');
 | 
			
		||||
 | 
			
		||||
-- 三级菜单
 | 
			
		||||
insert into sys_menu values('500',  '操作日志', '108', '1', 'operlog',    'monitor/operlog/index',    '', 1, 0, 'C', '0', '0', 'monitor:operlog:list',    'form',          103, 1, sysdate(), null, null, '操作日志菜单');
 | 
			
		||||
 
 | 
			
		||||
@@ -1,73 +1,85 @@
 | 
			
		||||
SET NAMES utf8mb4;
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_namespace`
 | 
			
		||||
CREATE TABLE `sj_namespace`
 | 
			
		||||
(
 | 
			
		||||
    `id`          bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `name`        varchar(64)         NOT NULL COMMENT '名称',
 | 
			
		||||
    `unique_id`   varchar(64)         NOT NULL COMMENT '唯一id',
 | 
			
		||||
    `description` varchar(256)        NOT NULL DEFAULT '' COMMENT '描述',
 | 
			
		||||
    `deleted`     tinyint(4)          NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
 | 
			
		||||
    `create_dt`   datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`   datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    `deleted`     tinyint(4)          NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
    KEY `idx_name` (`name`),
 | 
			
		||||
    UNIQUE KEY `uk_unique_id` (`unique_id`)
 | 
			
		||||
) ENGINE = InnoDB
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='命名空间';
 | 
			
		||||
 | 
			
		||||
INSERT INTO `er_namespace` VALUES (1, 'Development', 'dev', '', now(), now(), 0);
 | 
			
		||||
INSERT INTO `er_namespace` VALUES (2, 'Production', 'prod', '', now(), now(), 0);
 | 
			
		||||
INSERT INTO `sj_namespace` VALUES (1, 'Development', 'dev', '', 0, now(), now());
 | 
			
		||||
INSERT INTO `sj_namespace` VALUES (2, 'Production', 'prod', '', 0, now(), now());
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_group_config`
 | 
			
		||||
CREATE TABLE `sj_group_config`
 | 
			
		||||
(
 | 
			
		||||
    `id`                bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`      varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `group_name`        varchar(64)         NOT NULL DEFAULT '' COMMENT '组名称',
 | 
			
		||||
    `description`       varchar(256)        NOT NULL DEFAULT '' COMMENT '组描述',
 | 
			
		||||
    `token`             varchar(64)         NOT NULL DEFAULT 'ER_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT' COMMENT 'token',
 | 
			
		||||
    `group_status`      tinyint(4)          NOT NULL DEFAULT '0' COMMENT '组状态 0、未启用 1、启用',
 | 
			
		||||
    `token`             varchar(64)         NOT NULL DEFAULT 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT' COMMENT 'token',
 | 
			
		||||
    `group_status`      tinyint(4)          NOT NULL DEFAULT 0 COMMENT '组状态 0、未启用 1、启用',
 | 
			
		||||
    `version`           int(11)             NOT NULL COMMENT '版本号',
 | 
			
		||||
    `group_partition`   int(11)             NOT NULL COMMENT '分区',
 | 
			
		||||
    `id_generator_mode` tinyint(4)          NOT NULL DEFAULT '1' COMMENT '唯一id生成模式 默认号段模式',
 | 
			
		||||
    `init_scene`        tinyint(4)          NOT NULL DEFAULT '0' COMMENT '是否初始化场景 0:否 1:是',
 | 
			
		||||
    `bucket_index`      int(11)             NOT NULL DEFAULT '0' COMMENT 'bucket',
 | 
			
		||||
    `id_generator_mode` tinyint(4)          NOT NULL DEFAULT 1 COMMENT '唯一id生成模式 默认号段模式',
 | 
			
		||||
    `init_scene`        tinyint(4)          NOT NULL DEFAULT 0 COMMENT '是否初始化场景 0:否 1:是',
 | 
			
		||||
    `bucket_index`      int(11)             NOT NULL DEFAULT 0 COMMENT 'bucket',
 | 
			
		||||
    `create_dt`         datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`         datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
    UNIQUE KEY `uk_namespace_id_group_name` (`namespace_id`, `group_name`)
 | 
			
		||||
) ENGINE = InnoDB
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='组配置'
 | 
			
		||||
;
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='组配置';
 | 
			
		||||
 | 
			
		||||
INSERT INTO `er_group_config` VALUES (1, 'dev', 'ruoyi_group', '', 'ER_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now());
 | 
			
		||||
INSERT INTO `sj_group_config` VALUES (1, 'dev', 'ruoyi_group', '', 'SJ_cKqBTPzCsWA3VyuCfFoccmuIEGXjr5KT', 1, 1, 0, 1, 1, 4, now(), now());
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_notify_config`
 | 
			
		||||
CREATE TABLE `sj_notify_config`
 | 
			
		||||
(
 | 
			
		||||
    `id`                     bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`           varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `group_name`             varchar(64)         NOT NULL COMMENT '组名称',
 | 
			
		||||
    `scene_name`             varchar(64)         NOT NULL COMMENT '场景名称',
 | 
			
		||||
    `notify_status`          tinyint(4)          NOT NULL DEFAULT '0' COMMENT '通知状态 0、未启用 1、启用',
 | 
			
		||||
    `notify_type`            tinyint(4)          NOT NULL DEFAULT '0' COMMENT '通知类型 1、钉钉 2、邮件 3、企业微信',
 | 
			
		||||
    `notify_attribute`       varchar(512)        NOT NULL COMMENT '配置属性',
 | 
			
		||||
    `notify_threshold`       int(11)             NOT NULL DEFAULT '0' COMMENT '通知阈值',
 | 
			
		||||
    `notify_scene`           tinyint(4)          NOT NULL DEFAULT '0' COMMENT '通知场景',
 | 
			
		||||
    `rate_limiter_status`    tinyint(4)          NOT NULL DEFAULT '0' COMMENT '限流状态 0、未启用 1、启用',
 | 
			
		||||
    `rate_limiter_threshold` int(11)             NOT NULL DEFAULT '0' COMMENT '每秒限流阈值',
 | 
			
		||||
    `business_id`            varchar(64)         NOT NULL COMMENT '业务id (job_id或workflow_id或scene_name)',
 | 
			
		||||
    `system_task_type`       tinyint(4)          NOT NULL DEFAULT 3 COMMENT '任务类型 1. 重试任务 2. 重试回调 3、JOB任务 4、WORKFLOW任务',
 | 
			
		||||
    `notify_status`          tinyint(4)          NOT NULL DEFAULT 0 COMMENT '通知状态 0、未启用 1、启用',
 | 
			
		||||
    `recipient_ids`          varchar(128)        NOT NULL COMMENT '接收人id列表',
 | 
			
		||||
    `notify_threshold`       int(11)             NOT NULL DEFAULT 0 COMMENT '通知阈值',
 | 
			
		||||
    `notify_scene`           tinyint(4)          NOT NULL DEFAULT 0 COMMENT '通知场景',
 | 
			
		||||
    `rate_limiter_status`    tinyint(4)          NOT NULL DEFAULT 0 COMMENT '限流状态 0、未启用 1、启用',
 | 
			
		||||
    `rate_limiter_threshold` int(11)             NOT NULL DEFAULT 0 COMMENT '每秒限流阈值',
 | 
			
		||||
    `description`            varchar(256)        NOT NULL DEFAULT '' COMMENT '描述',
 | 
			
		||||
    `create_dt`              datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`              datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
    KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`)
 | 
			
		||||
    KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `business_id`)
 | 
			
		||||
) ENGINE = InnoDB
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='通知配置'
 | 
			
		||||
;
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='通知配置';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_retry_dead_letter_0`
 | 
			
		||||
CREATE TABLE `sj_notify_recipient`
 | 
			
		||||
(
 | 
			
		||||
    `id`               bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`     varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `recipient_name`   varchar(64)         NOT NULL COMMENT '接收人名称',
 | 
			
		||||
    `notify_type`      tinyint(4)          NOT NULL DEFAULT 0 COMMENT '通知类型 1、钉钉 2、邮件 3、企业微信 4 飞书',
 | 
			
		||||
    `notify_attribute` varchar(512)        NOT NULL COMMENT '配置属性',
 | 
			
		||||
    `description`      varchar(256)        NOT NULL DEFAULT '' COMMENT '描述',
 | 
			
		||||
    `create_dt`        datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`        datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
    KEY `idx_namespace_id` (`namespace_id`)
 | 
			
		||||
) ENGINE = InnoDB
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='告警通知接收人';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `sj_retry_dead_letter_0`
 | 
			
		||||
(
 | 
			
		||||
    `id`            bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`  varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
@@ -79,7 +91,7 @@ CREATE TABLE `er_retry_dead_letter_0`
 | 
			
		||||
    `executor_name` varchar(512)        NOT NULL DEFAULT '' COMMENT '执行器名称',
 | 
			
		||||
    `args_str`      text                NOT NULL COMMENT '执行方法参数',
 | 
			
		||||
    `ext_attrs`     text                NOT NULL COMMENT '扩展字段',
 | 
			
		||||
    `task_type`     tinyint(4)          NOT NULL DEFAULT '1' COMMENT '任务类型 1、重试数据 2、回调数据',
 | 
			
		||||
    `task_type`     tinyint(4)          NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
 | 
			
		||||
    `create_dt`     datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
    KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`),
 | 
			
		||||
@@ -89,10 +101,9 @@ CREATE TABLE `er_retry_dead_letter_0`
 | 
			
		||||
    UNIQUE KEY `uk_namespace_id_group_name_unique_id` (`namespace_id`, `group_name`, `unique_id`)
 | 
			
		||||
) ENGINE = InnoDB
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='死信队列表'
 | 
			
		||||
;
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='死信队列表';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_retry_task_0`
 | 
			
		||||
CREATE TABLE `sj_retry_task_0`
 | 
			
		||||
(
 | 
			
		||||
    `id`              bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`    varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
@@ -105,9 +116,9 @@ CREATE TABLE `er_retry_task_0`
 | 
			
		||||
    `args_str`        text                NOT NULL COMMENT '执行方法参数',
 | 
			
		||||
    `ext_attrs`       text                NOT NULL COMMENT '扩展字段',
 | 
			
		||||
    `next_trigger_at` datetime            NOT NULL COMMENT '下次触发时间',
 | 
			
		||||
    `retry_count`     int(11)             NOT NULL DEFAULT '0' COMMENT '重试次数',
 | 
			
		||||
    `retry_status`    tinyint(4)          NOT NULL DEFAULT '0' COMMENT '重试状态 0、重试中 1、成功 2、最大重试次数',
 | 
			
		||||
    `task_type`       tinyint(4)          NOT NULL DEFAULT '1' COMMENT '任务类型 1、重试数据 2、回调数据',
 | 
			
		||||
    `retry_count`     int(11)             NOT NULL DEFAULT 0 COMMENT '重试次数',
 | 
			
		||||
    `retry_status`    tinyint(4)          NOT NULL DEFAULT 0 COMMENT '重试状态 0、重试中 1、成功 2、最大重试次数',
 | 
			
		||||
    `task_type`       tinyint(4)          NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
 | 
			
		||||
    `create_dt`       datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`       datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
@@ -120,10 +131,9 @@ CREATE TABLE `er_retry_task_0`
 | 
			
		||||
    UNIQUE KEY `uk_name_unique_id` (`namespace_id`, `group_name`, `unique_id`)
 | 
			
		||||
) ENGINE = InnoDB
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='任务表'
 | 
			
		||||
;
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='任务表';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_retry_task_log`
 | 
			
		||||
CREATE TABLE `sj_retry_task_log`
 | 
			
		||||
(
 | 
			
		||||
    `id`            bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`  varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
@@ -135,8 +145,8 @@ CREATE TABLE `er_retry_task_log`
 | 
			
		||||
    `executor_name` varchar(512)        NOT NULL DEFAULT '' COMMENT '执行器名称',
 | 
			
		||||
    `args_str`      text                NOT NULL COMMENT '执行方法参数',
 | 
			
		||||
    `ext_attrs`     text                NOT NULL COMMENT '扩展字段',
 | 
			
		||||
    `retry_status`  tinyint(4)          NOT NULL DEFAULT '0' COMMENT '重试状态 0、重试中 1、成功 2、最大次数',
 | 
			
		||||
    `task_type`     tinyint(4)          NOT NULL DEFAULT '1' COMMENT '任务类型 1、重试数据 2、回调数据',
 | 
			
		||||
    `retry_status`  tinyint(4)          NOT NULL DEFAULT 0 COMMENT '重试状态 0、重试中 1、成功 2、最大次数',
 | 
			
		||||
    `task_type`     tinyint(4)          NOT NULL DEFAULT 1 COMMENT '任务类型 1、重试数据 2、回调数据',
 | 
			
		||||
    `create_dt`     datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`     datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
@@ -148,40 +158,38 @@ CREATE TABLE `er_retry_task_log`
 | 
			
		||||
    KEY `idx_create_dt` (`create_dt`)
 | 
			
		||||
) ENGINE = InnoDB
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='任务日志基础信息表'
 | 
			
		||||
;
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='任务日志基础信息表';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_retry_task_log_message`
 | 
			
		||||
CREATE TABLE `sj_retry_task_log_message`
 | 
			
		||||
(
 | 
			
		||||
    `id`           bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id` varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `group_name`   varchar(64)         NOT NULL COMMENT '组名称',
 | 
			
		||||
    `unique_id`    varchar(64)         NOT NULL COMMENT '同组下id唯一',
 | 
			
		||||
    `create_dt`    datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `message`      longtext            NOT NULL COMMENT '异常信息',
 | 
			
		||||
    `log_num`      int(11)             NOT NULL DEFAULT 1 COMMENT '日志数量',
 | 
			
		||||
    `real_time`    bigint(13)          NOT NULL DEFAULT 0 COMMENT '上报时间',
 | 
			
		||||
    `create_dt`    datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
    KEY `idx_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `unique_id`),
 | 
			
		||||
    KEY `idx_create_dt` (`create_dt`)
 | 
			
		||||
) ENGINE = InnoDB
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='任务调度日志信息记录表'
 | 
			
		||||
;
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='任务调度日志信息记录表';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_scene_config`
 | 
			
		||||
CREATE TABLE `sj_retry_scene_config`
 | 
			
		||||
(
 | 
			
		||||
    `id`               bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`     varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `scene_name`       varchar(64)         NOT NULL COMMENT '场景名称',
 | 
			
		||||
    `group_name`       varchar(64)         NOT NULL COMMENT '组名称',
 | 
			
		||||
    `scene_status`     tinyint(4)          NOT NULL DEFAULT '0' COMMENT '组状态 0、未启用 1、启用',
 | 
			
		||||
    `max_retry_count`  int(11)             NOT NULL DEFAULT '5' COMMENT '最大重试次数',
 | 
			
		||||
    `back_off`         tinyint(4)          NOT NULL DEFAULT '1' COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式',
 | 
			
		||||
    `scene_status`     tinyint(4)          NOT NULL DEFAULT 0 COMMENT '组状态 0、未启用 1、启用',
 | 
			
		||||
    `max_retry_count`  int(11)             NOT NULL DEFAULT 5 COMMENT '最大重试次数',
 | 
			
		||||
    `back_off`         tinyint(4)          NOT NULL DEFAULT 1 COMMENT '1、默认等级 2、固定间隔时间 3、CRON 表达式',
 | 
			
		||||
    `trigger_interval` varchar(16)         NOT NULL DEFAULT '' COMMENT '间隔时长',
 | 
			
		||||
    `deadline_request` bigint(20) unsigned NOT NULL DEFAULT '60000' COMMENT 'Deadline Request 调用链超时 单位毫秒',
 | 
			
		||||
    `executor_timeout` int(11) unsigned    NOT NULL DEFAULT '5' COMMENT '任务执行超时时间,单位秒',
 | 
			
		||||
    `route_key`        tinyint(4)          NOT NULL DEFAULT '4' COMMENT '路由策略',
 | 
			
		||||
    `deadline_request` bigint(20) unsigned NOT NULL DEFAULT 60000 COMMENT 'Deadline Request 调用链超时 单位毫秒',
 | 
			
		||||
    `executor_timeout` int(11) unsigned    NOT NULL DEFAULT 5 COMMENT '任务执行超时时间,单位秒',
 | 
			
		||||
    `route_key`        tinyint(4)          NOT NULL DEFAULT 4 COMMENT '路由策略',
 | 
			
		||||
    `description`      varchar(256)        NOT NULL DEFAULT '' COMMENT '描述',
 | 
			
		||||
    `create_dt`        datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`        datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
@@ -189,21 +197,19 @@ CREATE TABLE `er_scene_config`
 | 
			
		||||
    UNIQUE KEY `uk_namespace_id_group_name_scene_name` (`namespace_id`, `group_name`, `scene_name`)
 | 
			
		||||
) ENGINE = InnoDB
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='场景配置'
 | 
			
		||||
;
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='场景配置';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_server_node`
 | 
			
		||||
CREATE TABLE `sj_server_node`
 | 
			
		||||
(
 | 
			
		||||
    `id`           bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id` varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `group_name`   varchar(64)         NOT NULL COMMENT '组名称',
 | 
			
		||||
    `host_id`      varchar(64)         NOT NULL COMMENT '主机id',
 | 
			
		||||
    `host_ip`      varchar(64)         NOT NULL COMMENT '机器ip',
 | 
			
		||||
    `context_path` varchar(256)        NOT NULL DEFAULT '/' COMMENT '客户端上下文路径 server.servlet.context-path',
 | 
			
		||||
    `host_port`    int(16)             NOT NULL COMMENT '机器端口',
 | 
			
		||||
    `expire_at`    datetime            NOT NULL COMMENT '过期时间',
 | 
			
		||||
    `node_type`    tinyint(4)          NOT NULL COMMENT '节点类型 1、客户端 2、是服务端',
 | 
			
		||||
    `ext_attrs`    varchar(256)        NULL     default '' COMMENT '扩展字段',
 | 
			
		||||
    `ext_attrs`    varchar(256)        NULL     DEFAULT '' COMMENT '扩展字段',
 | 
			
		||||
    `create_dt`    datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`    datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
@@ -212,10 +218,9 @@ CREATE TABLE `er_server_node`
 | 
			
		||||
    UNIQUE KEY `uk_host_id_host_ip` (`host_id`, `host_ip`)
 | 
			
		||||
) ENGINE = InnoDB
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='服务器节点'
 | 
			
		||||
;
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='服务器节点';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_distributed_lock`
 | 
			
		||||
CREATE TABLE `sj_distributed_lock`
 | 
			
		||||
(
 | 
			
		||||
    `id`         bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `name`       varchar(64)         NOT NULL COMMENT '锁名称',
 | 
			
		||||
@@ -228,15 +233,14 @@ CREATE TABLE `er_distributed_lock`
 | 
			
		||||
    UNIQUE KEY `uk_name` (`name`)
 | 
			
		||||
) ENGINE = InnoDB
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='锁定表'
 | 
			
		||||
;
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='锁定表';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_system_user`
 | 
			
		||||
CREATE TABLE `sj_system_user`
 | 
			
		||||
(
 | 
			
		||||
    `id`        bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `username`  varchar(64)         NOT NULL COMMENT '账号',
 | 
			
		||||
    `password`  varchar(128)        NOT NULL COMMENT '密码',
 | 
			
		||||
    `role`      tinyint(4)          NOT NULL DEFAULT '0' COMMENT '角色:1-普通用户、2-管理员',
 | 
			
		||||
    `role`      tinyint(4)          NOT NULL DEFAULT 0 COMMENT '角色:1-普通用户、2-管理员',
 | 
			
		||||
    `create_dt` datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt` datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
@@ -245,9 +249,9 @@ CREATE TABLE `er_system_user`
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='系统用户表';
 | 
			
		||||
 | 
			
		||||
-- pwd: admin
 | 
			
		||||
INSERT INTO `er_system_user` VALUES (1, 'admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2, now(), now());
 | 
			
		||||
INSERT INTO `sj_system_user` VALUES (1, 'admin', '465c194afb65670f38322df087f0a9bb225cc257e43eb4ac5a0c98ef5b3173ac', 2, now(), now());
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_system_user_permission`
 | 
			
		||||
CREATE TABLE `sj_system_user_permission`
 | 
			
		||||
(
 | 
			
		||||
    `id`             bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `group_name`     varchar(64)         NOT NULL COMMENT '组名称',
 | 
			
		||||
@@ -260,13 +264,13 @@ CREATE TABLE `er_system_user_permission`
 | 
			
		||||
) ENGINE = InnoDB
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='系统用户权限表';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_sequence_alloc`
 | 
			
		||||
CREATE TABLE `sj_sequence_alloc`
 | 
			
		||||
(
 | 
			
		||||
    `id`           bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id` varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `group_name`   varchar(64)         NOT NULL DEFAULT '' COMMENT '组名称',
 | 
			
		||||
    `max_id`       bigint(20)          NOT NULL DEFAULT '1' COMMENT '最大id',
 | 
			
		||||
    `step`         int(11)             NOT NULL DEFAULT '100' COMMENT '步长',
 | 
			
		||||
    `max_id`       bigint(20)          NOT NULL DEFAULT 1 COMMENT '最大id',
 | 
			
		||||
    `step`         int(11)             NOT NULL DEFAULT 100 COMMENT '步长',
 | 
			
		||||
    `update_dt`    datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
    UNIQUE KEY `uk_namespace_id_group_name` (`namespace_id`, `group_name`)
 | 
			
		||||
@@ -274,34 +278,34 @@ CREATE TABLE `er_sequence_alloc`
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='号段模式序号ID分配表';
 | 
			
		||||
 | 
			
		||||
-- 分布式调度DDL
 | 
			
		||||
CREATE TABLE `er_job`
 | 
			
		||||
CREATE TABLE `sj_job`
 | 
			
		||||
(
 | 
			
		||||
    `id`               bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`     varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `group_name`       varchar(64)         NOT NULL COMMENT '组名称',
 | 
			
		||||
    `job_name`         varchar(64)         NOT NULL COMMENT '名称',
 | 
			
		||||
    `args_str`         text                         DEFAULT NULL COMMENT '执行方法参数',
 | 
			
		||||
    `args_type`        tinyint(4)          NOT NULL DEFAULT '1' COMMENT '参数类型 ',
 | 
			
		||||
    `args_type`        tinyint(4)          NOT NULL DEFAULT 1 COMMENT '参数类型 ',
 | 
			
		||||
    `next_trigger_at`  bigint(13)          NOT NULL COMMENT '下次触发时间',
 | 
			
		||||
    `job_status`       tinyint(4)          NOT NULL DEFAULT '1' COMMENT '任务状态 0、关闭、1、开启',
 | 
			
		||||
    `task_type`        tinyint(4)          NOT NULL DEFAULT '1' COMMENT '任务类型 1、集群 2、广播 3、切片',
 | 
			
		||||
    `route_key`        tinyint(4)          NOT NULL DEFAULT '4' COMMENT '路由策略',
 | 
			
		||||
    `executor_type`    tinyint(4)          NOT NULL DEFAULT '1' COMMENT '执行器类型',
 | 
			
		||||
    `job_status`       tinyint(4)          NOT NULL DEFAULT 1 COMMENT '任务状态 0、关闭、1、开启',
 | 
			
		||||
    `task_type`        tinyint(4)          NOT NULL DEFAULT 1 COMMENT '任务类型 1、集群 2、广播 3、切片',
 | 
			
		||||
    `route_key`        tinyint(4)          NOT NULL DEFAULT 4 COMMENT '路由策略',
 | 
			
		||||
    `executor_type`    tinyint(4)          NOT NULL DEFAULT 1 COMMENT '执行器类型',
 | 
			
		||||
    `executor_info`    varchar(255)                 DEFAULT NULL COMMENT '执行器名称',
 | 
			
		||||
    `trigger_type`     tinyint(4)          NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间',
 | 
			
		||||
    `trigger_interval` varchar(255)        NOT NULL COMMENT '间隔时长',
 | 
			
		||||
    `block_strategy`   tinyint(4)          NOT NULL DEFAULT '1' COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
 | 
			
		||||
    `executor_timeout` int(11)             NOT NULL DEFAULT '0' COMMENT '任务执行超时时间,单位秒',
 | 
			
		||||
    `max_retry_times`  int(11)             NOT NULL DEFAULT '0' COMMENT '最大重试次数',
 | 
			
		||||
    `parallel_num`     int(11)             NOT NULL DEFAULT '1' COMMENT '并行数',
 | 
			
		||||
    `retry_interval`   int(11)             NOT NULL DEFAULT '0' COMMENT '重试间隔(s)',
 | 
			
		||||
    `bucket_index`     int(11)             NOT NULL DEFAULT '0' COMMENT 'bucket',
 | 
			
		||||
    `resident`         tinyint(4)          NOT NULL DEFAULT '0' COMMENT '是否是常驻任务',
 | 
			
		||||
    `block_strategy`   tinyint(4)          NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
 | 
			
		||||
    `executor_timeout` int(11)             NOT NULL DEFAULT 0 COMMENT '任务执行超时时间,单位秒',
 | 
			
		||||
    `max_retry_times`  int(11)             NOT NULL DEFAULT 0 COMMENT '最大重试次数',
 | 
			
		||||
    `parallel_num`     int(11)             NOT NULL DEFAULT 1 COMMENT '并行数',
 | 
			
		||||
    `retry_interval`   int(11)             NOT NULL DEFAULT 0 COMMENT '重试间隔(s)',
 | 
			
		||||
    `bucket_index`     int(11)             NOT NULL DEFAULT 0 COMMENT 'bucket',
 | 
			
		||||
    `resident`         tinyint(4)          NOT NULL DEFAULT 0 COMMENT '是否是常驻任务',
 | 
			
		||||
    `description`      varchar(256)        NOT NULL DEFAULT '' COMMENT '描述',
 | 
			
		||||
    `ext_attrs`        varchar(256)        NULL     default '' COMMENT '扩展字段',
 | 
			
		||||
    `ext_attrs`        varchar(256)        NULL     DEFAULT '' COMMENT '扩展字段',
 | 
			
		||||
    `deleted`          tinyint(4)          NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
 | 
			
		||||
    `create_dt`        datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`        datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    `deleted`          tinyint(4)          NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
    KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`),
 | 
			
		||||
    KEY `idx_job_status_bucket_index` (`job_status`, `bucket_index`),
 | 
			
		||||
@@ -310,9 +314,9 @@ CREATE TABLE `er_job`
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='任务信息';
 | 
			
		||||
 | 
			
		||||
INSERT INTO `er_job` VALUES (1, 'dev', 'ruoyi_group', 'demo-job', null, 1, 1710344035622, 1, 1, 4, 1, 'testJobExecutor', 2, '60', 1, 60, 3, 1, 1, 116, 0, '', '', now(), now(), 0);
 | 
			
		||||
INSERT INTO `sj_job` VALUES (1, 'dev', 'ruoyi_group', 'demo-job', null, 1, 1710344035622, 1, 1, 4, 1, 'testJobExecutor', 2, '60', 1, 60, 3, 1, 1, 116, 0, '', '', 0 , now(), now());
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_job_log_message`
 | 
			
		||||
CREATE TABLE `sj_job_log_message`
 | 
			
		||||
(
 | 
			
		||||
    `id`            bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`  varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
@@ -323,8 +327,8 @@ CREATE TABLE `er_job_log_message`
 | 
			
		||||
    `message`       longtext            NOT NULL COMMENT '调度信息',
 | 
			
		||||
    `log_num`       int(11)             NOT NULL DEFAULT 1 COMMENT '日志数量',
 | 
			
		||||
    `real_time`     bigint(13)          NOT NULL DEFAULT 0 COMMENT '上报时间',
 | 
			
		||||
    `ext_attrs`     varchar(256)        NULL     DEFAULT '' COMMENT '扩展字段',
 | 
			
		||||
    `create_dt`     datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `ext_attrs`     varchar(256)        NULL     default '' COMMENT '扩展字段',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
    KEY `idx_task_batch_id_task_id` (`task_batch_id`, `task_id`),
 | 
			
		||||
    KEY `idx_create_dt` (`create_dt`),
 | 
			
		||||
@@ -333,21 +337,21 @@ CREATE TABLE `er_job_log_message`
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='调度日志';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_job_task`
 | 
			
		||||
CREATE TABLE `sj_job_task`
 | 
			
		||||
(
 | 
			
		||||
    `id`             bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`   varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `group_name`     varchar(64)         NOT NULL COMMENT '组名称',
 | 
			
		||||
    `job_id`         bigint(20)          NOT NULL COMMENT '任务信息id',
 | 
			
		||||
    `task_batch_id`  bigint(20)          NOT NULL COMMENT '调度任务id',
 | 
			
		||||
    `parent_id`      bigint(20)          NOT NULL DEFAULT '0' COMMENT '父执行器id',
 | 
			
		||||
    `task_status`    tinyint(4)          NOT NULL DEFAULT '0' COMMENT '执行的状态 0、失败 1、成功',
 | 
			
		||||
    `retry_count`    int(11)             NOT NULL DEFAULT '0' COMMENT '重试次数',
 | 
			
		||||
    `parent_id`      bigint(20)          NOT NULL DEFAULT 0 COMMENT '父执行器id',
 | 
			
		||||
    `task_status`    tinyint(4)          NOT NULL DEFAULT 0 COMMENT '执行的状态 0、失败 1、成功',
 | 
			
		||||
    `retry_count`    int(11)             NOT NULL DEFAULT 0 COMMENT '重试次数',
 | 
			
		||||
    `client_info`    varchar(128)                 DEFAULT NULL COMMENT '客户端地址 clientId#ip:port',
 | 
			
		||||
    `result_message` text                NOT NULL COMMENT '执行结果',
 | 
			
		||||
    `args_str`       text                         DEFAULT NULL COMMENT '执行方法参数',
 | 
			
		||||
    `args_type`      tinyint(4)          NOT NULL DEFAULT '1' COMMENT '参数类型 ',
 | 
			
		||||
    `ext_attrs`      varchar(256)        NULL     default '' COMMENT '扩展字段',
 | 
			
		||||
    `args_type`      tinyint(4)          NOT NULL DEFAULT 1 COMMENT '参数类型 ',
 | 
			
		||||
    `ext_attrs`      varchar(256)        NULL     DEFAULT '' COMMENT '扩展字段',
 | 
			
		||||
    `create_dt`      datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`      datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
@@ -358,24 +362,24 @@ CREATE TABLE `er_job_task`
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='任务实例';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_job_task_batch`
 | 
			
		||||
CREATE TABLE `sj_job_task_batch`
 | 
			
		||||
(
 | 
			
		||||
    `id`                      bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`            varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `group_name`              varchar(64)         NOT NULL COMMENT '组名称',
 | 
			
		||||
    `job_id`                  bigint(20)          NOT NULL COMMENT '任务id',
 | 
			
		||||
    `workflow_node_id`        bigint(20)          NOT NULL DEFAULT '0' COMMENT '工作流节点id',
 | 
			
		||||
    `parent_workflow_node_id` bigint(20)          NOT NULL DEFAULT '0' COMMENT '工作流任务父批次id',
 | 
			
		||||
    `workflow_task_batch_id`  bigint(20)          NOT NULL DEFAULT '0' COMMENT '工作流任务批次id',
 | 
			
		||||
    `task_batch_status`       tinyint(4)          NOT NULL DEFAULT '0' COMMENT '任务批次状态 0、失败 1、成功',
 | 
			
		||||
    `operation_reason`        tinyint(4)          NOT NULL DEFAULT '0' COMMENT '操作原因',
 | 
			
		||||
    `execution_at`            bigint(13)          NOT NULL DEFAULT '0' COMMENT '任务执行时间',
 | 
			
		||||
    `system_task_type`        tinyint(4)          NOT NULL DEFAULT '3' COMMENT '任务类型 3、JOB任务 4、WORKFLOW任务',
 | 
			
		||||
    `workflow_node_id`        bigint(20)          NOT NULL DEFAULT 0 COMMENT '工作流节点id',
 | 
			
		||||
    `parent_workflow_node_id` bigint(20)          NOT NULL DEFAULT 0 COMMENT '工作流任务父批次id',
 | 
			
		||||
    `workflow_task_batch_id`  bigint(20)          NOT NULL DEFAULT 0 COMMENT '工作流任务批次id',
 | 
			
		||||
    `task_batch_status`       tinyint(4)          NOT NULL DEFAULT 0 COMMENT '任务批次状态 0、失败 1、成功',
 | 
			
		||||
    `operation_reason`        tinyint(4)          NOT NULL DEFAULT 0 COMMENT '操作原因',
 | 
			
		||||
    `execution_at`            bigint(13)          NOT NULL DEFAULT 0 COMMENT '任务执行时间',
 | 
			
		||||
    `system_task_type`        tinyint(4)          NOT NULL DEFAULT 3 COMMENT '任务类型 3、JOB任务 4、WORKFLOW任务',
 | 
			
		||||
    `parent_id`               varchar(64)         NOT NULL DEFAULT '' COMMENT '父节点',
 | 
			
		||||
    `ext_attrs`               varchar(256)        NULL     DEFAULT '' COMMENT '扩展字段',
 | 
			
		||||
    `deleted`                 tinyint(4)          NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
 | 
			
		||||
    `create_dt`               datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`               datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    `deleted`                 tinyint(4)          NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除',
 | 
			
		||||
    `ext_attrs`               varchar(256)        NULL     default '' COMMENT '扩展字段',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
    KEY `idx_job_id_task_batch_status` (`job_id`, `task_batch_status`),
 | 
			
		||||
    KEY `idx_create_dt` (`create_dt`),
 | 
			
		||||
@@ -385,42 +389,20 @@ CREATE TABLE `er_job_task_batch`
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='任务批次';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_job_notify_config`
 | 
			
		||||
(
 | 
			
		||||
    `id`                     bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`           varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `group_name`             varchar(64)         NOT NULL COMMENT '组名称',
 | 
			
		||||
    `job_id`                 bigint(20)          NOT NULL COMMENT '任务id',
 | 
			
		||||
    `notify_status`          tinyint(4)          NOT NULL DEFAULT '0' COMMENT '通知状态 0、未启用 1、启用',
 | 
			
		||||
    `notify_type`            tinyint(4)          NOT NULL DEFAULT '0' COMMENT '通知类型 1、钉钉 2、邮件 3、企业微信',
 | 
			
		||||
    `notify_attribute`       varchar(512)        NOT NULL COMMENT '配置属性',
 | 
			
		||||
    `notify_threshold`       int(11)             NOT NULL DEFAULT '0' COMMENT '通知阈值',
 | 
			
		||||
    `notify_scene`           tinyint(4)          NOT NULL DEFAULT '0' COMMENT '通知场景',
 | 
			
		||||
    `rate_limiter_status`    tinyint(4)          NOT NULL DEFAULT '0' COMMENT '限流状态 0、未启用 1、启用',
 | 
			
		||||
    `rate_limiter_threshold` int(11)             NOT NULL DEFAULT '0' COMMENT '每秒限流阈值',
 | 
			
		||||
    `description`            varchar(256)        NOT NULL DEFAULT '' COMMENT '描述',
 | 
			
		||||
    `create_dt`              datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`              datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
    KEY `idx_namespace_id_group_name_job_id` (`namespace_id`, `group_name`, job_id)
 | 
			
		||||
) ENGINE = InnoDB
 | 
			
		||||
  AUTO_INCREMENT = 4
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='job通知配置';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_job_summary`
 | 
			
		||||
CREATE TABLE `sj_job_summary`
 | 
			
		||||
(
 | 
			
		||||
    `id`               bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`     VARCHAR(64)     NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `group_name`       VARCHAR(64)     NOT NULL DEFAULT '' COMMENT '组名称',
 | 
			
		||||
    `business_id`      bigint          NOT NULL COMMENT '业务id (job_id或workflow_id)',
 | 
			
		||||
    `system_task_type` tinyint(4)      NOT NULL DEFAULT '3' COMMENT '任务类型 3、JOB任务 4、WORKFLOW任务',
 | 
			
		||||
    `system_task_type` tinyint(4)      NOT NULL DEFAULT 3 COMMENT '任务类型 3、JOB任务 4、WORKFLOW任务',
 | 
			
		||||
    `trigger_at`       datetime        NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '统计时间',
 | 
			
		||||
    `success_num`      int             NOT NULL DEFAULT '0' COMMENT '执行成功-日志数量',
 | 
			
		||||
    `fail_num`         int             NOT NULL DEFAULT '0' COMMENT '执行失败-日志数量',
 | 
			
		||||
    `success_num`      int             NOT NULL DEFAULT 0 COMMENT '执行成功-日志数量',
 | 
			
		||||
    `fail_num`         int             NOT NULL DEFAULT 0 COMMENT '执行失败-日志数量',
 | 
			
		||||
    `fail_reason`      varchar(512)    NOT NULL DEFAULT '' COMMENT '失败原因',
 | 
			
		||||
    `stop_num`         int             NOT NULL DEFAULT '0' COMMENT '执行失败-日志数量',
 | 
			
		||||
    `stop_num`         int             NOT NULL DEFAULT 0 COMMENT '执行失败-日志数量',
 | 
			
		||||
    `stop_reason`      varchar(512)    NOT NULL DEFAULT '' COMMENT '失败原因',
 | 
			
		||||
    `cancel_num`       int             NOT NULL DEFAULT '0' COMMENT '执行失败-日志数量',
 | 
			
		||||
    `cancel_num`       int             NOT NULL DEFAULT 0 COMMENT '执行失败-日志数量',
 | 
			
		||||
    `cancel_reason`    varchar(512)    NOT NULL DEFAULT '' COMMENT '失败原因',
 | 
			
		||||
    `create_dt`        datetime        NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`        datetime        NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
@@ -431,17 +413,17 @@ CREATE TABLE `er_job_summary`
 | 
			
		||||
  AUTO_INCREMENT = 1
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='DashBoard_Job';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_retry_summary`
 | 
			
		||||
CREATE TABLE `sj_retry_summary`
 | 
			
		||||
(
 | 
			
		||||
    `id`            bigint unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`  VARCHAR(64)     NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `group_name`    VARCHAR(64)     NOT NULL DEFAULT '' COMMENT '组名称',
 | 
			
		||||
    `scene_name`    VARCHAR(50)     NOT NULL DEFAULT '' COMMENT '场景名称',
 | 
			
		||||
    `trigger_at`    datetime        NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '统计时间',
 | 
			
		||||
    `running_num`   int             NOT NULL DEFAULT '0' COMMENT '重试中-日志数量',
 | 
			
		||||
    `finish_num`    int             NOT NULL DEFAULT '0' COMMENT '重试完成-日志数量',
 | 
			
		||||
    `max_count_num` int             NOT NULL DEFAULT '0' COMMENT '重试到达最大次数-日志数量',
 | 
			
		||||
    `suspend_num`   int             NOT NULL DEFAULT '0' COMMENT '暂停重试-日志数量',
 | 
			
		||||
    `running_num`   int             NOT NULL DEFAULT 0 COMMENT '重试中-日志数量',
 | 
			
		||||
    `finish_num`    int             NOT NULL DEFAULT 0 COMMENT '重试完成-日志数量',
 | 
			
		||||
    `max_count_num` int             NOT NULL DEFAULT 0 COMMENT '重试到达最大次数-日志数量',
 | 
			
		||||
    `suspend_num`   int             NOT NULL DEFAULT 0 COMMENT '暂停重试-日志数量',
 | 
			
		||||
    `create_dt`     datetime        NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`     datetime        NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
@@ -451,26 +433,26 @@ CREATE TABLE `er_retry_summary`
 | 
			
		||||
  AUTO_INCREMENT = 1
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='DashBoard_Retry';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_workflow`
 | 
			
		||||
CREATE TABLE `sj_workflow`
 | 
			
		||||
(
 | 
			
		||||
    `id`               bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `workflow_name`    varchar(64)         NOT NULL COMMENT '工作流名称',
 | 
			
		||||
    `namespace_id`     varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `group_name`       varchar(64)         NOT NULL COMMENT '组名称',
 | 
			
		||||
    `workflow_status`  tinyint(4)          NOT NULL DEFAULT '1' COMMENT '工作流状态 0、关闭、1、开启',
 | 
			
		||||
    `workflow_status`  tinyint(4)          NOT NULL DEFAULT 1 COMMENT '工作流状态 0、关闭、1、开启',
 | 
			
		||||
    `trigger_type`     tinyint(4)          NOT NULL COMMENT '触发类型 1.CRON 表达式 2. 固定时间',
 | 
			
		||||
    `trigger_interval` varchar(255)        NOT NULL COMMENT '间隔时长',
 | 
			
		||||
    `next_trigger_at`  bigint(13)          NOT NULL COMMENT '下次触发时间',
 | 
			
		||||
    `block_strategy`   tinyint(4)          NOT NULL DEFAULT '1' COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
 | 
			
		||||
    `executor_timeout` int(11)             NOT NULL DEFAULT '0' COMMENT '任务执行超时时间,单位秒',
 | 
			
		||||
    `block_strategy`   tinyint(4)          NOT NULL DEFAULT 1 COMMENT '阻塞策略 1、丢弃 2、覆盖 3、并行',
 | 
			
		||||
    `executor_timeout` int(11)             NOT NULL DEFAULT 0 COMMENT '任务执行超时时间,单位秒',
 | 
			
		||||
    `description`      varchar(256)        NOT NULL DEFAULT '' COMMENT '描述',
 | 
			
		||||
    `flow_info`        text                         DEFAULT NULL COMMENT '流程信息',
 | 
			
		||||
    `bucket_index`     int(11)             NOT NULL DEFAULT '0' COMMENT 'bucket',
 | 
			
		||||
    `bucket_index`     int(11)             NOT NULL DEFAULT 0 COMMENT 'bucket',
 | 
			
		||||
    `version`          int(11)             NOT NULL COMMENT '版本号',
 | 
			
		||||
    `ext_attrs`        varchar(256)        NULL     DEFAULT '' COMMENT '扩展字段',
 | 
			
		||||
    `deleted`          tinyint(4)          NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
 | 
			
		||||
    `create_dt`        datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`        datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    `deleted`          tinyint(4)          NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除',
 | 
			
		||||
    `ext_attrs`        varchar(256)        NULL     default '' COMMENT '扩展字段',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
    KEY `idx_create_dt` (`create_dt`),
 | 
			
		||||
    KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`)
 | 
			
		||||
@@ -478,7 +460,7 @@ CREATE TABLE `er_workflow`
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='工作流';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_workflow_node`
 | 
			
		||||
CREATE TABLE `sj_workflow_node`
 | 
			
		||||
(
 | 
			
		||||
    `id`                   bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`         varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
@@ -493,10 +475,10 @@ CREATE TABLE `er_workflow_node`
 | 
			
		||||
    `priority_level`       int(11)             NOT NULL DEFAULT 1 COMMENT '优先级',
 | 
			
		||||
    `node_info`            text                         DEFAULT NULL COMMENT '节点信息 ',
 | 
			
		||||
    `version`              int(11)             NOT NULL COMMENT '版本号',
 | 
			
		||||
    `ext_attrs`            varchar(256)        NULL     DEFAULT '' COMMENT '扩展字段',
 | 
			
		||||
    `deleted`              tinyint(4)          NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
 | 
			
		||||
    `create_dt`            datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`            datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    `deleted`              tinyint(4)          NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除',
 | 
			
		||||
    `ext_attrs`            varchar(256)        NULL     default '' COMMENT '扩展字段',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
    KEY `idx_create_dt` (`create_dt`),
 | 
			
		||||
    KEY `idx_namespace_id_group_name` (`namespace_id`, `group_name`)
 | 
			
		||||
@@ -504,20 +486,20 @@ CREATE TABLE `er_workflow_node`
 | 
			
		||||
  AUTO_INCREMENT = 0
 | 
			
		||||
  DEFAULT CHARSET = utf8mb4 COMMENT ='工作流节点';
 | 
			
		||||
 | 
			
		||||
CREATE TABLE `er_workflow_task_batch`
 | 
			
		||||
CREATE TABLE `sj_workflow_task_batch`
 | 
			
		||||
(
 | 
			
		||||
    `id`                bigint(20) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
 | 
			
		||||
    `namespace_id`      varchar(64)         NOT NULL DEFAULT '764d604ec6fc45f68cd92514c40e9e1a' COMMENT '命名空间id',
 | 
			
		||||
    `group_name`        varchar(64)         NOT NULL COMMENT '组名称',
 | 
			
		||||
    `workflow_id`       bigint(20)          NOT NULL COMMENT '工作流任务id',
 | 
			
		||||
    `task_batch_status` tinyint(4)          NOT NULL DEFAULT '0' COMMENT '任务批次状态 0、失败 1、成功',
 | 
			
		||||
    `operation_reason`  tinyint(4)          NOT NULL DEFAULT '0' COMMENT '操作原因',
 | 
			
		||||
    `task_batch_status` tinyint(4)          NOT NULL DEFAULT 0 COMMENT '任务批次状态 0、失败 1、成功',
 | 
			
		||||
    `operation_reason`  tinyint(4)          NOT NULL DEFAULT 0 COMMENT '操作原因',
 | 
			
		||||
    `flow_info`         text                         DEFAULT NULL COMMENT '流程信息',
 | 
			
		||||
    `execution_at`      bigint(13)          NOT NULL DEFAULT '0' COMMENT '任务执行时间',
 | 
			
		||||
    `execution_at`      bigint(13)          NOT NULL DEFAULT 0 COMMENT '任务执行时间',
 | 
			
		||||
    `ext_attrs`         varchar(256)        NULL     DEFAULT '' COMMENT '扩展字段',
 | 
			
		||||
    `deleted`           tinyint(4)          NOT NULL DEFAULT 0 COMMENT '逻辑删除 1、删除',
 | 
			
		||||
    `create_dt`         datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
 | 
			
		||||
    `update_dt`         datetime            NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间',
 | 
			
		||||
    `deleted`           tinyint(4)          NOT NULL DEFAULT '0' COMMENT '逻辑删除 1、删除',
 | 
			
		||||
    `ext_attrs`         varchar(256)        NULL     default '' COMMENT '扩展字段',
 | 
			
		||||
    PRIMARY KEY (`id`),
 | 
			
		||||
    KEY `idx_job_id_task_batch_status` (`workflow_id`, `task_batch_status`),
 | 
			
		||||
    KEY `idx_create_dt` (`create_dt`),
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -1692,7 +1692,7 @@ INSERT sys_menu VALUES (117, N'Admin监控', 2, 5, N'Admin', N'monitor/admin/ind
 | 
			
		||||
GO
 | 
			
		||||
INSERT sys_menu VALUES (118, N'文件管理', 1, 10, N'oss', N'system/oss/index', N'', 1, 0, N'C', '0', N'0', N'system:oss:list', N'upload', 103, 1, getdate(), NULL, NULL, N'文件管理菜单');
 | 
			
		||||
GO
 | 
			
		||||
INSERT sys_menu VALUES (120, N'任务调度中心', 2, 5, N'easyretry', N'monitor/easyretry/index', N'', 1, 0, N'C', N'0', N'0', N'monitor:easyretry:list', N'job', 103, 1, getdate(), NULL, NULL, N'easyretry控制台菜单');
 | 
			
		||||
INSERT sys_menu VALUES (120, N'任务调度中心', 2, 5, N'snailjob', N'monitor/snailjob/index', N'', 1, 0, N'C', N'0', N'0', N'monitor:snailjob:list', N'job', 103, 1, getdate(), NULL, NULL, N'SnailJob控制台菜单');
 | 
			
		||||
GO
 | 
			
		||||
INSERT sys_menu VALUES (500, N'操作日志', 108, 1, N'operlog', N'monitor/operlog/index', N'', 1, 0, N'C', N'0', N'0', N'monitor:operlog:list', N'form', 103, 1, getdate(), NULL, NULL, N'操作日志菜单')
 | 
			
		||||
GO
 | 
			
		||||
 
 | 
			
		||||
@@ -6,3 +6,4 @@ ALTER TABLE sys_post ADD (post_category VARCHAR2(100) DEFAULT NULL) COMMENT '岗
 | 
			
		||||
COMMENT ON COLUMN sys_post.post_category IS '岗位类别编码';
 | 
			
		||||
UPDATE sys_post SET dept_id = 100;
 | 
			
		||||
UPDATE sys_post SET dept_id = 103 where post_id = 1;
 | 
			
		||||
UPDATE sys_menu SET path = 'snailjob', component = 'monitor/snailjob/index', perms = 'monitor:snailjob:list', remark = 'SnailJob控制台菜单' WHERE menu_id = 120;
 | 
			
		||||
 
 | 
			
		||||
@@ -6,3 +6,4 @@ ALTER TABLE sys_post ADD COLUMN post_category varchar(100) default null::varchar
 | 
			
		||||
COMMENT ON COLUMN sys_post.post_category IS '岗位类别编码';
 | 
			
		||||
UPDATE sys_post SET dept_id = 100;
 | 
			
		||||
UPDATE sys_post SET dept_id = 103 where post_id = 1;
 | 
			
		||||
UPDATE sys_menu SET path = 'snailjob', component = 'monitor/snailjob/index', perms = 'monitor:snailjob:list', remark = 'SnailJob控制台菜单' WHERE menu_id = 120;
 | 
			
		||||
 
 | 
			
		||||
@@ -1,27 +1,29 @@
 | 
			
		||||
ALTER TABLE sys_dept ADD dept_category nvarchar(100) DEFAULT NULL;
 | 
			
		||||
ALTER TABLE sys_dept ADD dept_category nvarchar(100) DEFAULT NULL
 | 
			
		||||
EXEC sp_addextendedproperty
 | 
			
		||||
    'MS_Description', N'部门类别编码',
 | 
			
		||||
    'SCHEMA', N'dbo',
 | 
			
		||||
    'TABLE', N'sys_dept',
 | 
			
		||||
    'COLUMN', N'dept_category';
 | 
			
		||||
    'COLUMN', N'dept_category'
 | 
			
		||||
GO
 | 
			
		||||
ALTER TABLE sys_post ADD dept_id bigint NOT NULL;
 | 
			
		||||
ALTER TABLE sys_post ADD dept_id bigint NOT NULL
 | 
			
		||||
GO
 | 
			
		||||
ALTER TABLE sys_post ADD post_category nvarchar(100) DEFAULT NULL;
 | 
			
		||||
ALTER TABLE sys_post ADD post_category nvarchar(100) DEFAULT NULL
 | 
			
		||||
GO
 | 
			
		||||
EXEC sp_addextendedproperty
 | 
			
		||||
    'MS_Description', N'部门id',
 | 
			
		||||
    'SCHEMA', N'dbo',
 | 
			
		||||
    'TABLE', N'sys_post',
 | 
			
		||||
    'COLUMN', N'dept_id';
 | 
			
		||||
    'COLUMN', N'dept_id'
 | 
			
		||||
GO
 | 
			
		||||
EXEC sp_addextendedproperty
 | 
			
		||||
    'MS_Description', N'岗位类别编码',
 | 
			
		||||
    'SCHEMA', N'dbo',
 | 
			
		||||
    'TABLE', N'sys_post',
 | 
			
		||||
    'COLUMN', N'post_category';
 | 
			
		||||
    'COLUMN', N'post_category'
 | 
			
		||||
GO
 | 
			
		||||
UPDATE sys_post SET dept_id = 100;
 | 
			
		||||
UPDATE sys_post SET dept_id = 100
 | 
			
		||||
GO
 | 
			
		||||
UPDATE sys_post SET dept_id = 103 where post_id = 1;
 | 
			
		||||
UPDATE sys_post SET dept_id = 103 where post_id = 1
 | 
			
		||||
GO
 | 
			
		||||
UPDATE sys_menu SET path = N'snailjob', component = N'monitor/snailjob/index', perms = N'monitor:snailjob:list', remark = N'SnailJob控制台菜单' WHERE menu_id = 120
 | 
			
		||||
GO
 | 
			
		||||
@@ -2,3 +2,4 @@ ALTER TABLE sys_dept ADD dept_category VARCHAR(100) DEFAULT NULL COMMENT '部门
 | 
			
		||||
ALTER TABLE sys_post ADD dept_id BIGINT(20) NOT NULL COMMENT '部门id', ADD post_category VARCHAR(100) DEFAULT NULL COMMENT '岗位类别编码';
 | 
			
		||||
UPDATE sys_post SET dept_id = 100;
 | 
			
		||||
UPDATE sys_post SET dept_id = 103 where post_id = 1;
 | 
			
		||||
UPDATE sys_menu SET path = 'snailjob', component = 'monitor/snailjob/index', perms = 'monitor:snailjob:list', remark = 'SnailJob控制台菜单' WHERE menu_id = 120;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user