From a25a511894792e0e3c1ae41423f5ce6a906a9a84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=AD=90=E9=BB=98?= <925456043@qq.com> Date: Wed, 25 Feb 2026 14:54:48 +0800 Subject: [PATCH] =?UTF-8?q?chore:=20docker=E6=9E=84=E5=BB=BA=E8=84=9A?= =?UTF-8?q?=E6=9C=AC=E4=BC=98=E5=8C=96=EF=BC=8CSQL=E8=84=9A=E6=9C=AC?= =?UTF-8?q?=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Dockerfile | 36 +- README.md | 6 +- docker-compose.middleware.yml | 125 ++ docker-compose.yml | 4 +- ...2.p2-faq.sql => 05-easyflow-v2.p2-faq.sql} | 0 sql/initdb/00-quartz.sql | 173 +++ sql/initdb/01-easyflow-v2.ddl.sql | 1182 +++++++++++++++++ sql/initdb/02-easyflow-v2.data.sql | 265 ++++ sql/initdb/README.md | 11 + 9 files changed, 1769 insertions(+), 33 deletions(-) create mode 100644 docker-compose.middleware.yml rename sql/{04-easyflow-v2.p2-faq.sql => 05-easyflow-v2.p2-faq.sql} (100%) create mode 100644 sql/initdb/00-quartz.sql create mode 100644 sql/initdb/01-easyflow-v2.ddl.sql create mode 100644 sql/initdb/02-easyflow-v2.data.sql create mode 100644 sql/initdb/README.md diff --git a/Dockerfile b/Dockerfile index 744d098..3cd7478 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,51 +1,27 @@ -# 第一阶段:构建阶段 -FROM maven:3.9-eclipse-temurin-17 AS builder - -WORKDIR /build - -# 复制 pom.xml 并下载依赖(利用 Docker 缓存) -COPY pom.xml . -COPY easyflow-api/pom.xml easyflow-api/ -COPY easyflow-commons/pom.xml easyflow-commons/ -COPY easyflow-modules/pom.xml easyflow-modules/ -COPY easyflow-starter/pom.xml easyflow-starter/ -COPY easyflow-starter/easyflow-starter-all/pom.xml easyflow-starter/easyflow-starter-all/ - -# 注意:这里需要复制所有模块的 pom.xml 才能正确解析依赖 -# 如果模块很多,可能需要更精细的复制,但这里先简单处理 -COPY . . - -# 执行构建 -RUN mvn clean package -DskipTests - -# 第二阶段:运行阶段 FROM eclipse-temurin:17-jre LABEL maintainer="Cennac " ARG VERSION=2.0.4 -ARG SERVICE_NAME=easyflow-starter-all ARG SERVICE_PORT=8080 -ENV VERSION ${VERSION} -ENV SERVICE_NAME ${SERVICE_NAME} -ENV SERVICE_PORT ${SERVICE_PORT} -ENV LANG=C.UTF-8 LC_ALL=C.UTF-8 +ENV VERSION=${VERSION} +ENV SERVICE_PORT=${SERVICE_PORT} +ENV LANG=C.UTF-8 +ENV LC_ALL=C.UTF-8 ENV JAVA_OPTS="" ENV TZ=Asia/Shanghai WORKDIR /app -# 安装必要的字体和工具 RUN apt-get update && \ apt-get install -y --no-install-recommends fonts-dejavu-core fontconfig && \ ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone && \ rm -rf /var/lib/apt/lists/* -# 从构建阶段复制 jar 包 -COPY --from=builder /build/easyflow-starter/easyflow-starter-all/target/${SERVICE_NAME}-*.jar app.jar +COPY easyflow/easyflow-starter/easyflow-starter-all/target/easyflow-starter-all-*.jar /app/app.jar VOLUME /tmp EXPOSE ${SERVICE_PORT} -ENTRYPOINT java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar ./app.jar +ENTRYPOINT ["sh", "-c", "java ${JAVA_OPTS} -Djava.security.egd=file:/dev/./urandom -jar /app/app.jar"] diff --git a/README.md b/README.md index 1f7a7cd..1677ff3 100644 --- a/README.md +++ b/README.md @@ -128,8 +128,12 @@ pnpm run build docker compose up --build -d ``` +说明: +- `easyflow-api` 默认使用根目录 `Dockerfile`,会先在容器中构建并安装 `easy-agents`,再构建 `easyflow` 后端。 +- 由于依赖 `easy-agents` 源码,`docker-compose.yml` 中后端构建上下文为上级目录(包含 `easyflow` 与 `easy-agents` 的同级目录)。 +- ARM 服务器可直接构建(基础镜像支持 `linux/arm64`)。 + 默认端口: - 后端 API:`8080` - Admin:`8081` - UserCenter:`8082` - diff --git a/docker-compose.middleware.yml b/docker-compose.middleware.yml new file mode 100644 index 0000000..84ec6ee --- /dev/null +++ b/docker-compose.middleware.yml @@ -0,0 +1,125 @@ +# 本项目后端所需中间件,开箱即用 +name: easyflow-middleware + +services: + mysql: + image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/mysql:8.0.36-linuxarm64 + container_name: easyflow-mysql + restart: unless-stopped + command: + - --default-authentication-plugin=mysql_native_password + - --character-set-server=utf8mb4 + - --collation-server=utf8mb4_unicode_ci + - --max_connections=500 + - --sql_mode=STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION + environment: + TZ: ${TZ:-Asia/Shanghai} + MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD:-root} + MYSQL_DATABASE: ${MYSQL_DATABASE:-easyflow} + MYSQL_USER: ${MYSQL_USER:-easyflow} + MYSQL_PASSWORD: ${MYSQL_PASSWORD:-123456} + ports: + - "${MYSQL_PORT:-3306}:3306" + volumes: + - ./data/mysql:/var/lib/mysql + - ./easyflow/sql/initdb:/docker-entrypoint-initdb.d:ro + healthcheck: + test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1", "-uroot", "-p${MYSQL_ROOT_PASSWORD:-root}"] + interval: 10s + timeout: 5s + retries: 10 + start_period: 30s + + redis: + image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/kubesphere/redis:7.2.4-alpine-linuxarm64 + container_name: easyflow-redis + restart: unless-stopped + command: ["redis-server", "--appendonly", "yes", "--requirepass", "${REDIS_PASSWORD:-123456}"] + ports: + - "${REDIS_PORT:-6379}:6379" + volumes: + - ./data/redis:/data + healthcheck: + test: ["CMD", "redis-cli", "-a", "${REDIS_PASSWORD:-123456}", "ping"] + interval: 10s + timeout: 5s + retries: 10 + start_period: 10s + + etcd: + image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/quay.io/coreos/etcd:v3.5.5-linuxarm64 + container_name: easyflow-etcd + restart: unless-stopped + environment: + TZ: ${TZ:-Asia/Shanghai} + ETCD_AUTO_COMPACTION_MODE: revision + ETCD_AUTO_COMPACTION_RETENTION: "1000" + ETCD_QUOTA_BACKEND_BYTES: "4294967296" + ETCD_SNAPSHOT_COUNT: "50000" + command: + - /usr/local/bin/etcd + - --advertise-client-urls=http://0.0.0.0:2379 + - --listen-client-urls=http://0.0.0.0:2379 + - --data-dir=/etcd + volumes: + - ./data/etcd:/etcd + + minio: + image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/quay.io/minio/minio:RELEASE.2025-07-23T15-54-02Z-linuxarm64 + container_name: easyflow-minio + restart: unless-stopped + command: server /data --address ":9000" --console-address ":9001" + environment: + TZ: ${TZ:-Asia/Shanghai} + MINIO_ROOT_USER: ${MINIO_ROOT_USER:-easyflowadmin} + MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD:-easyflowadmin123} + ports: + - "${MINIO_PORT:-9000}:9000" + - "${MINIO_CONSOLE_PORT:-9001}:9001" + volumes: + - ./data/minio:/data + + minio-init: + image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/minio/mc:RELEASE.2024-09-16T17-43-14Z-linuxarm64 + container_name: easyflow-minio-init + restart: "no" + depends_on: + - minio + environment: + MINIO_ROOT_USER: ${MINIO_ROOT_USER:-easyflowadmin} + MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD:-easyflowadmin123} + MINIO_ENDPOINT: ${MINIO_ENDPOINT:-http://minio:9000} + MINIO_BUCKETS: ${MINIO_BUCKETS:-easyflow,milvus} + MINIO_PUBLIC_BUCKETS: ${MINIO_PUBLIC_BUCKETS:-easyflow} + MINIO_ALIAS: ${MINIO_ALIAS:-local} + volumes: + - ./scripts/minio/init-minio.sh:/scripts/init-minio.sh:ro + entrypoint: ["/bin/sh", "/scripts/init-minio.sh"] + + milvus: + image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/milvusdb/milvus:v2.3.3-linuxarm64 + container_name: easyflow-milvus + restart: unless-stopped + command: ["milvus", "run", "standalone"] + security_opt: + - seccomp:unconfined + environment: + ETCD_ENDPOINTS: etcd:2379 + COMMON_STORAGETYPE: minio + MINIO_ADDRESS: ${MILVUS_MINIO_ADDRESS:-minio:9000} + MINIO_ACCESS_KEY_ID: ${MINIO_ROOT_USER:-easyflowadmin} + MINIO_SECRET_ACCESS_KEY: ${MINIO_ROOT_PASSWORD:-easyflowadmin123} + MINIO_USE_SSL: "false" + MINIO_BUCKET_NAME: ${MILVUS_MINIO_BUCKET:-milvus} + depends_on: + etcd: + condition: service_started + minio: + condition: service_started + minio-init: + condition: service_completed_successfully + ports: + - "${MILVUS_GRPC_PORT:-19530}:19530" + - "${MILVUS_HTTP_PORT:-9091}:9091" + volumes: + - ./data/milvus:/var/lib/milvus diff --git a/docker-compose.yml b/docker-compose.yml index 9c0f327..14a9ce0 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2,8 +2,8 @@ services: # 后端服务 easyflow-api: build: - context: . - dockerfile: Dockerfile + context: .. + dockerfile: easyflow/Dockerfile ports: - "8080:8080" environment: diff --git a/sql/04-easyflow-v2.p2-faq.sql b/sql/05-easyflow-v2.p2-faq.sql similarity index 100% rename from sql/04-easyflow-v2.p2-faq.sql rename to sql/05-easyflow-v2.p2-faq.sql diff --git a/sql/initdb/00-quartz.sql b/sql/initdb/00-quartz.sql new file mode 100644 index 0000000..5f95b30 --- /dev/null +++ b/sql/initdb/00-quartz.sql @@ -0,0 +1,173 @@ +SET FOREIGN_KEY_CHECKS = 0; + +DROP TABLE IF EXISTS TB_QRTZ_FIRED_TRIGGERS; +DROP TABLE IF EXISTS TB_QRTZ_PAUSED_TRIGGER_GRPS; +DROP TABLE IF EXISTS TB_QRTZ_SCHEDULER_STATE; +DROP TABLE IF EXISTS TB_QRTZ_LOCKS; +DROP TABLE IF EXISTS TB_QRTZ_SIMPLE_TRIGGERS; +DROP TABLE IF EXISTS TB_QRTZ_SIMPROP_TRIGGERS; +DROP TABLE IF EXISTS TB_QRTZ_CRON_TRIGGERS; +DROP TABLE IF EXISTS TB_QRTZ_BLOB_TRIGGERS; +DROP TABLE IF EXISTS TB_QRTZ_TRIGGERS; +DROP TABLE IF EXISTS TB_QRTZ_JOB_DETAILS; +DROP TABLE IF EXISTS TB_QRTZ_CALENDARS; + +CREATE TABLE TB_QRTZ_JOB_DETAILS( +SCHED_NAME VARCHAR(120) NOT NULL, +JOB_NAME VARCHAR(190) NOT NULL, +JOB_GROUP VARCHAR(190) NOT NULL, +DESCRIPTION VARCHAR(250) NULL, +JOB_CLASS_NAME VARCHAR(250) NOT NULL, +IS_DURABLE VARCHAR(1) NOT NULL, +IS_NONCONCURRENT VARCHAR(1) NOT NULL, +IS_UPDATE_DATA VARCHAR(1) NOT NULL, +REQUESTS_RECOVERY VARCHAR(1) NOT NULL, +JOB_DATA BLOB NULL, +PRIMARY KEY (SCHED_NAME,JOB_NAME,JOB_GROUP)) +ENGINE=InnoDB; + +CREATE TABLE TB_QRTZ_TRIGGERS ( +SCHED_NAME VARCHAR(120) NOT NULL, +TRIGGER_NAME VARCHAR(190) NOT NULL, +TRIGGER_GROUP VARCHAR(190) NOT NULL, +JOB_NAME VARCHAR(190) NOT NULL, +JOB_GROUP VARCHAR(190) NOT NULL, +DESCRIPTION VARCHAR(250) NULL, +NEXT_FIRE_TIME BIGINT(13) NULL, +PREV_FIRE_TIME BIGINT(13) NULL, +PRIORITY INTEGER NULL, +TRIGGER_STATE VARCHAR(16) NOT NULL, +TRIGGER_TYPE VARCHAR(8) NOT NULL, +START_TIME BIGINT(13) NOT NULL, +END_TIME BIGINT(13) NULL, +CALENDAR_NAME VARCHAR(190) NULL, +MISFIRE_INSTR SMALLINT(2) NULL, +JOB_DATA BLOB NULL, +PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), +CONSTRAINT FK_TB_QRTZ_TRIGGERS_JOB_DETAILS FOREIGN KEY (SCHED_NAME,JOB_NAME,JOB_GROUP) +REFERENCES TB_QRTZ_JOB_DETAILS(SCHED_NAME,JOB_NAME,JOB_GROUP)) +ENGINE=InnoDB; + +CREATE TABLE TB_QRTZ_SIMPLE_TRIGGERS ( +SCHED_NAME VARCHAR(120) NOT NULL, +TRIGGER_NAME VARCHAR(190) NOT NULL, +TRIGGER_GROUP VARCHAR(190) NOT NULL, +REPEAT_COUNT BIGINT(7) NOT NULL, +REPEAT_INTERVAL BIGINT(12) NOT NULL, +TIMES_TRIGGERED BIGINT(10) NOT NULL, +PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), +CONSTRAINT FK_TB_QRTZ_SIMPLE_TRIGGERS_TRIGGERS FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +REFERENCES TB_QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)) +ENGINE=InnoDB; + +CREATE TABLE TB_QRTZ_CRON_TRIGGERS ( +SCHED_NAME VARCHAR(120) NOT NULL, +TRIGGER_NAME VARCHAR(190) NOT NULL, +TRIGGER_GROUP VARCHAR(190) NOT NULL, +CRON_EXPRESSION VARCHAR(120) NOT NULL, +TIME_ZONE_ID VARCHAR(80), +PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), +CONSTRAINT FK_TB_QRTZ_CRON_TRIGGERS_TRIGGERS FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +REFERENCES TB_QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)) +ENGINE=InnoDB; + +CREATE TABLE TB_QRTZ_SIMPROP_TRIGGERS + ( + SCHED_NAME VARCHAR(120) NOT NULL, + TRIGGER_NAME VARCHAR(190) NOT NULL, + TRIGGER_GROUP VARCHAR(190) NOT NULL, + STR_PROP_1 VARCHAR(512) NULL, + STR_PROP_2 VARCHAR(512) NULL, + STR_PROP_3 VARCHAR(512) NULL, + INT_PROP_1 INT NULL, + INT_PROP_2 INT NULL, + LONG_PROP_1 BIGINT NULL, + LONG_PROP_2 BIGINT NULL, + DEC_PROP_1 NUMERIC(13,4) NULL, + DEC_PROP_2 NUMERIC(13,4) NULL, + BOOL_PROP_1 VARCHAR(1) NULL, + BOOL_PROP_2 VARCHAR(1) NULL, + PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), + CONSTRAINT FK_TB_QRTZ_SIMPROP_TRIGGERS_TRIGGERS FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) + REFERENCES TB_QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)) +ENGINE=InnoDB; + +CREATE TABLE TB_QRTZ_BLOB_TRIGGERS ( +SCHED_NAME VARCHAR(120) NOT NULL, +TRIGGER_NAME VARCHAR(190) NOT NULL, +TRIGGER_GROUP VARCHAR(190) NOT NULL, +BLOB_DATA BLOB NULL, +PRIMARY KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP), +INDEX (SCHED_NAME,TRIGGER_NAME, TRIGGER_GROUP), +CONSTRAINT FK_TB_QRTZ_BLOB_TRIGGERS_TRIGGERS FOREIGN KEY (SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP) +REFERENCES TB_QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP)) +ENGINE=InnoDB; + +CREATE TABLE TB_QRTZ_CALENDARS ( +SCHED_NAME VARCHAR(120) NOT NULL, +CALENDAR_NAME VARCHAR(190) NOT NULL, +CALENDAR BLOB NOT NULL, +PRIMARY KEY (SCHED_NAME,CALENDAR_NAME)) +ENGINE=InnoDB; + +CREATE TABLE TB_QRTZ_PAUSED_TRIGGER_GRPS ( +SCHED_NAME VARCHAR(120) NOT NULL, +TRIGGER_GROUP VARCHAR(190) NOT NULL, +PRIMARY KEY (SCHED_NAME,TRIGGER_GROUP)) +ENGINE=InnoDB; + +CREATE TABLE TB_QRTZ_FIRED_TRIGGERS ( +SCHED_NAME VARCHAR(120) NOT NULL, +ENTRY_ID VARCHAR(95) NOT NULL, +TRIGGER_NAME VARCHAR(190) NOT NULL, +TRIGGER_GROUP VARCHAR(190) NOT NULL, +INSTANCE_NAME VARCHAR(190) NOT NULL, +FIRED_TIME BIGINT(13) NOT NULL, +SCHED_TIME BIGINT(13) NOT NULL, +PRIORITY INTEGER NOT NULL, +STATE VARCHAR(16) NOT NULL, +JOB_NAME VARCHAR(190) NULL, +JOB_GROUP VARCHAR(190) NULL, +IS_NONCONCURRENT VARCHAR(1) NULL, +REQUESTS_RECOVERY VARCHAR(1) NULL, +PRIMARY KEY (SCHED_NAME,ENTRY_ID)) +ENGINE=InnoDB; + +CREATE TABLE TB_QRTZ_SCHEDULER_STATE ( +SCHED_NAME VARCHAR(120) NOT NULL, +INSTANCE_NAME VARCHAR(190) NOT NULL, +LAST_CHECKIN_TIME BIGINT(13) NOT NULL, +CHECKIN_INTERVAL BIGINT(13) NOT NULL, +PRIMARY KEY (SCHED_NAME,INSTANCE_NAME)) +ENGINE=InnoDB; + +CREATE TABLE TB_QRTZ_LOCKS ( +SCHED_NAME VARCHAR(120) NOT NULL, +LOCK_NAME VARCHAR(40) NOT NULL, +PRIMARY KEY (SCHED_NAME,LOCK_NAME)) +ENGINE=InnoDB; + +CREATE INDEX IDX_TB_QRTZ_J_REQ_RECOVERY ON TB_QRTZ_JOB_DETAILS(SCHED_NAME,REQUESTS_RECOVERY); +CREATE INDEX IDX_TB_QRTZ_J_GRP ON TB_QRTZ_JOB_DETAILS(SCHED_NAME,JOB_GROUP); + +CREATE INDEX IDX_TB_QRTZ_T_J ON TB_QRTZ_TRIGGERS(SCHED_NAME,JOB_NAME,JOB_GROUP); +CREATE INDEX IDX_TB_QRTZ_T_JG ON TB_QRTZ_TRIGGERS(SCHED_NAME,JOB_GROUP); +CREATE INDEX IDX_TB_QRTZ_T_C ON TB_QRTZ_TRIGGERS(SCHED_NAME,CALENDAR_NAME); +CREATE INDEX IDX_TB_QRTZ_T_G ON TB_QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_GROUP); +CREATE INDEX IDX_TB_QRTZ_T_STATE ON TB_QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_STATE); +CREATE INDEX IDX_TB_QRTZ_T_N_STATE ON TB_QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP,TRIGGER_STATE); +CREATE INDEX IDX_TB_QRTZ_T_N_G_STATE ON TB_QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_GROUP,TRIGGER_STATE); +CREATE INDEX IDX_TB_QRTZ_T_NEXT_FIRE_TIME ON TB_QRTZ_TRIGGERS(SCHED_NAME,NEXT_FIRE_TIME); +CREATE INDEX IDX_TB_QRTZ_T_NFT_ST ON TB_QRTZ_TRIGGERS(SCHED_NAME,TRIGGER_STATE,NEXT_FIRE_TIME); +CREATE INDEX IDX_TB_QRTZ_T_NFT_MISFIRE ON TB_QRTZ_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME); +CREATE INDEX IDX_TB_QRTZ_T_NFT_ST_MISFIRE ON TB_QRTZ_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_STATE); +CREATE INDEX IDX_TB_QRTZ_T_NFT_ST_MISFIRE_GRP ON TB_QRTZ_TRIGGERS(SCHED_NAME,MISFIRE_INSTR,NEXT_FIRE_TIME,TRIGGER_GROUP,TRIGGER_STATE); + +CREATE INDEX IDX_TB_QRTZ_FT_TRIG_INST_NAME ON TB_QRTZ_FIRED_TRIGGERS(SCHED_NAME,INSTANCE_NAME); +CREATE INDEX IDX_TB_QRTZ_FT_INST_JOB_REQ_RCVRY ON TB_QRTZ_FIRED_TRIGGERS(SCHED_NAME,INSTANCE_NAME,REQUESTS_RECOVERY); +CREATE INDEX IDX_TB_QRTZ_FT_J_G ON TB_QRTZ_FIRED_TRIGGERS(SCHED_NAME,JOB_NAME,JOB_GROUP); +CREATE INDEX IDX_TB_QRTZ_FT_JG ON TB_QRTZ_FIRED_TRIGGERS(SCHED_NAME,JOB_GROUP); +CREATE INDEX IDX_TB_QRTZ_FT_T_G ON TB_QRTZ_FIRED_TRIGGERS(SCHED_NAME,TRIGGER_NAME,TRIGGER_GROUP); +CREATE INDEX IDX_TB_QRTZ_FT_TG ON TB_QRTZ_FIRED_TRIGGERS(SCHED_NAME,TRIGGER_GROUP); + +SET FOREIGN_KEY_CHECKS = 1; diff --git a/sql/initdb/01-easyflow-v2.ddl.sql b/sql/initdb/01-easyflow-v2.ddl.sql new file mode 100644 index 0000000..09880d0 --- /dev/null +++ b/sql/initdb/01-easyflow-v2.ddl.sql @@ -0,0 +1,1182 @@ +SET NAMES utf8mb4; +SET +FOREIGN_KEY_CHECKS = 0; + +-- ---------------------------- +-- Table structure for tb_bot +-- ---------------------------- +DROP TABLE IF EXISTS `tb_bot`; +CREATE TABLE `tb_bot` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键ID', + `alias` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '别名', + `dept_id` bigint UNSIGNED NOT NULL COMMENT '部门ID', + `tenant_id` bigint UNSIGNED NOT NULL COMMENT '租户ID', + `category_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '分类ID', + `title` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '标题', + `description` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '描述', + `icon` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '图标', + `model_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '模型 ID', + `model_options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '模型配置', + `status` int NULL DEFAULT 0 COMMENT '数据状态', + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '选项', + `created` datetime NULL DEFAULT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NULL DEFAULT NULL COMMENT '创建者ID', + `modified` datetime NULL DEFAULT NULL COMMENT '修改时间', + `modified_by` bigint UNSIGNED NULL DEFAULT NULL COMMENT '修改者ID', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `tb_ai_bot_alias_uindex`(`alias`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = 'bot表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_bot_category +-- ---------------------------- +DROP TABLE IF EXISTS `tb_bot_category`; +CREATE TABLE `tb_bot_category` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `category_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '分类名称', + `sort_no` int NULL DEFAULT 0 COMMENT '排序', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `created` datetime NOT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NOT NULL COMMENT '创建者', + `modified` datetime NOT NULL COMMENT '修改时间', + `modified_by` bigint UNSIGNED NOT NULL COMMENT '修改者', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = 'bot分类' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for tb_bot_conversation +-- ---------------------------- +DROP TABLE IF EXISTS `tb_bot_conversation`; +CREATE TABLE `tb_bot_conversation` +( + `id` bigint UNSIGNED NOT NULL COMMENT '会话id', + `title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '会话标题', + `bot_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT 'botid', + `account_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '账户 id', + `created` datetime NULL DEFAULT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NULL DEFAULT NULL, + `modified` datetime NULL DEFAULT NULL, + `modified_by` bigint UNSIGNED NULL DEFAULT NULL, + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'bot对话' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_bot_document_collection +-- ---------------------------- +DROP TABLE IF EXISTS `tb_bot_document_collection`; +CREATE TABLE `tb_bot_document_collection` +( + `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT, + `bot_id` bigint UNSIGNED NULL DEFAULT NULL, + `document_collection_id` bigint UNSIGNED NULL DEFAULT NULL, + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL, + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_bot_document_collection`(`bot_id`, `document_collection_id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 36 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = 'bot绑定的知识库' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_bot_message +-- ---------------------------- +DROP TABLE IF EXISTS `tb_bot_message`; +CREATE TABLE `tb_bot_message` +( + `id` bigint UNSIGNED NOT NULL COMMENT 'ID', + `bot_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT 'botId', + `account_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '关联的账户ID', + `conversation_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '会话ID', + `role` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '角色[user|assistant]', + `content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '内容', + `image` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '图片', + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '选项', + `created` datetime NULL DEFAULT NULL COMMENT '创建时间', + `modified` datetime NULL DEFAULT NULL COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE, + INDEX `bot_id`(`bot_id`) USING BTREE, + INDEX `account_id`(`account_id`) USING BTREE, + INDEX `session_id`(`conversation_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = 'bot消息记录表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_bot_model +-- ---------------------------- +DROP TABLE IF EXISTS `tb_bot_model`; +CREATE TABLE `tb_bot_model` +( + `id` bigint UNSIGNED NOT NULL, + `bot_id` bigint UNSIGNED NULL DEFAULT NULL, + `model_id` bigint UNSIGNED NULL DEFAULT NULL, + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL, + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = 'bot绑定的大模型' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_bot_plugin +-- ---------------------------- +DROP TABLE IF EXISTS `tb_bot_plugin`; +CREATE TABLE `tb_bot_plugin` +( + `id` bigint UNSIGNED NOT NULL, + `bot_id` bigint UNSIGNED NULL DEFAULT NULL, + `plugin_item_id` bigint UNSIGNED NULL DEFAULT NULL, + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL, + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_bot_plugin`(`bot_id`, `plugin_item_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = 'bot绑定的插件' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_bot_recently_used +-- ---------------------------- +DROP TABLE IF EXISTS `tb_bot_recently_used`; +CREATE TABLE `tb_bot_recently_used` +( + `id` bigint(0) UNSIGNED NOT NULL COMMENT '主键', + `bot_id` bigint(0) UNSIGNED NOT NULL COMMENT 'botId', + `created` datetime(0) NOT NULL COMMENT '创建时间', + `created_by` bigint(0) UNSIGNED NOT NULL COMMENT '创建者', + `sort_no` int(0) NULL DEFAULT 0 COMMENT '排序', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_bot_recently_used`(`created_by`, `bot_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '最近使用' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for tb_bot_workflow +-- ---------------------------- +DROP TABLE IF EXISTS `tb_bot_workflow`; +CREATE TABLE `tb_bot_workflow` +( + `id` bigint UNSIGNED NOT NULL, + `bot_id` bigint UNSIGNED NULL DEFAULT NULL, + `workflow_id` bigint UNSIGNED NULL DEFAULT NULL, + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL, + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_bot_workflow`(`bot_id`, `workflow_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = 'bot绑定的工作流' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_datacenter_table +-- ---------------------------- +DROP TABLE IF EXISTS `tb_datacenter_table`; +CREATE TABLE `tb_datacenter_table` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `dept_id` bigint UNSIGNED NOT NULL COMMENT '部门ID', + `tenant_id` bigint UNSIGNED NOT NULL COMMENT '租户ID', + `table_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '数据表名', + `table_desc` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '数据表描述', + `actual_table` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '物理表名', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `created` datetime NOT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NOT NULL COMMENT '创建者', + `modified` datetime NOT NULL COMMENT '修改时间', + `modified_by` bigint UNSIGNED NOT NULL COMMENT '修改者', + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '扩展项', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '数据中枢表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_datacenter_table_field +-- ---------------------------- +DROP TABLE IF EXISTS `tb_datacenter_table_field`; +CREATE TABLE `tb_datacenter_table_field` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `table_id` bigint UNSIGNED NOT NULL COMMENT '数据表ID', + `field_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '字段名称', + `field_desc` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '字段描述', + `field_type` int NOT NULL COMMENT '字段类型', + `required` int NOT NULL DEFAULT 0 COMMENT '是否必填', + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '扩展项', + `created` datetime NOT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NOT NULL COMMENT '创建者', + `modified` datetime NOT NULL COMMENT '修改时间', + `modified_by` bigint UNSIGNED NOT NULL COMMENT '修改者', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '数据中枢字段表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_document +-- ---------------------------- +DROP TABLE IF EXISTS `tb_document`; +CREATE TABLE `tb_document` +( + `id` bigint UNSIGNED NOT NULL, + `collection_id` bigint UNSIGNED NOT NULL COMMENT '知识库ID', + `document_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '文档类型 pdf/word/aieditor 等', + `document_path` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '文档路径', + `title` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '标题', + `content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '内容', + `content_type` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '内容类型', + `slug` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'URL 别名', + `order_no` int NULL DEFAULT NULL COMMENT '排序序号', + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '其他配置项', + `created` datetime NULL DEFAULT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NULL DEFAULT NULL COMMENT '创建人ID', + `modified` datetime NULL DEFAULT NULL COMMENT '最后的修改时间', + `modified_by` bigint UNSIGNED NULL DEFAULT NULL COMMENT '最后的修改人的ID', + PRIMARY KEY (`id`) USING BTREE, + INDEX `knowledge_id`(`collection_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '文档' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_document_chunk +-- ---------------------------- +DROP TABLE IF EXISTS `tb_document_chunk`; +CREATE TABLE `tb_document_chunk` +( + `id` bigint UNSIGNED NOT NULL, + `document_id` bigint UNSIGNED NOT NULL COMMENT '文档ID', + `document_collection_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '知识库ID', + `content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '分块内容', + `sorting` int NULL DEFAULT NULL COMMENT '分割顺序', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '文档分块表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_document_collection +-- ---------------------------- +DROP TABLE IF EXISTS `tb_document_collection`; +CREATE TABLE `tb_document_collection` +( + `id` bigint(0) UNSIGNED NOT NULL COMMENT 'Id', + `collection_type` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT 'DOCUMENT' COMMENT '知识库类型: DOCUMENT/FAQ', + `alias` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '别名', + `dept_id` bigint(0) UNSIGNED NOT NULL COMMENT '部门ID', + `tenant_id` bigint(0) UNSIGNED NOT NULL COMMENT '租户ID', + `icon` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'ICON', + `title` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '标题', + `description` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '描述', + `slug` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'URL 别名', + `vector_store_enable` tinyint(1) NULL DEFAULT NULL COMMENT '是否启用向量存储', + `vector_store_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '向量数据库类型', + `vector_store_collection` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '向量数据库集合', + `vector_store_config` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '向量数据库配置', + `vector_embed_model_id` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT 'Embedding 模型ID', + `dimension_of_vector_model` int(0) NULL DEFAULT NULL COMMENT '向量模型维度', + `created` datetime(0) NULL DEFAULT NULL COMMENT '创建时间', + `created_by` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '创建用户ID', + `modified` datetime(0) NULL DEFAULT NULL COMMENT '最后一次修改时间', + `modified_by` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '最后一次修改用户ID', + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '其他配置', + `rerank_model_id` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '重排模型id', + `search_engine_enable` tinyint(1) NULL DEFAULT NULL COMMENT '是否启用搜索引擎', + `english_name` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '英文名称', + `category_id` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '分类ID', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `tb_ai_knowledge_alias_uindex`(`alias`) USING BTREE, + INDEX `idx_collection_type`(`collection_type`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '知识库' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for tb_document_collection_category +-- ---------------------------- +DROP TABLE IF EXISTS `tb_document_collection_category`; +CREATE TABLE `tb_document_collection_category` +( + `id` bigint(0) UNSIGNED NOT NULL COMMENT '主键', + `category_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '分类名称', + `sort_no` int(0) NULL DEFAULT 0 COMMENT '排序', + `status` int(0) NOT NULL DEFAULT 0 COMMENT '数据状态', + `created` datetime(0) NOT NULL COMMENT '创建时间', + `created_by` bigint(0) UNSIGNED NOT NULL COMMENT '创建者', + `modified` datetime(0) NOT NULL COMMENT '修改时间', + `modified_by` bigint(0) UNSIGNED NOT NULL COMMENT '修改者', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for tb_faq_item +-- ---------------------------- +DROP TABLE IF EXISTS `tb_faq_item`; +CREATE TABLE `tb_faq_item` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `collection_id` bigint UNSIGNED NOT NULL COMMENT '知识库ID', + `question` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '问题', + `answer_html` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '答案HTML', + `answer_text` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '答案纯文本', + `order_no` int NULL DEFAULT 0 COMMENT '排序', + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '扩展项', + `created` datetime NULL DEFAULT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NULL DEFAULT NULL COMMENT '创建人', + `modified` datetime NULL DEFAULT NULL COMMENT '更新时间', + `modified_by` bigint UNSIGNED NULL DEFAULT NULL COMMENT '更新人', + PRIMARY KEY (`id`) USING BTREE, + INDEX `idx_faq_collection_id`(`collection_id`) USING BTREE, + INDEX `idx_faq_collection_order`(`collection_id`, `order_no`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = 'FAQ条目' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for tb_document_history +-- ---------------------------- +DROP TABLE IF EXISTS `tb_document_history`; +CREATE TABLE `tb_document_history` +( + `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT, + `document_id` bigint NULL DEFAULT NULL COMMENT '修改的文档ID', + `old_title` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '旧标题', + `new_title` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '新标题', + `old_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '旧内容', + `new_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '新内容', + `old_document_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '旧的文档类型', + `new_document_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '新的额文档类型', + `created` datetime NULL DEFAULT NULL COMMENT '创建时间', + `created_by` bigint NULL DEFAULT NULL COMMENT '创建人ID', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '文档历史记录' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_model +-- ---------------------------- +DROP TABLE IF EXISTS `tb_model`; +CREATE TABLE `tb_model` +( + `id` bigint(0) UNSIGNED NOT NULL COMMENT 'ID', + `dept_id` bigint(0) UNSIGNED NOT NULL COMMENT '部门ID', + `tenant_id` bigint(0) UNSIGNED NOT NULL COMMENT '租户ID', + `provider_id` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '供应商id', + `title` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '标题或名称', + `icon` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'ICON', + `description` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '描述', + `endpoint` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '大模型请求地址', + `request_path` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '请求路径', + `model_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '大模型名称', + `api_key` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '大模型 API KEY', + `extra_config` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '大模型其他属性配置', + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '其他配置内容', + `group_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '分组名称', + `model_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '模型类型: chatModel/embeddingModel/rerankModel/orc..', + `with_used` tinyint(1) NULL DEFAULT NULL COMMENT '是否使用', + `support_thinking` tinyint(1) NULL DEFAULT NULL COMMENT '是否支持推理', + `support_tool` tinyint(1) NULL DEFAULT NULL COMMENT '是否支持工具', + `support_image` tinyint(1) NULL DEFAULT NULL COMMENT '是否支持图片', + `support_image_b64_only` tinyint(1) NULL DEFAULT NULL COMMENT '仅支持 base64 的图片类型', + `support_video` tinyint(1) NULL DEFAULT NULL COMMENT '是否支持视频', + `support_audio` tinyint(1) NULL DEFAULT NULL COMMENT '是否支持音频', + `support_free` tinyint(1) NULL DEFAULT NULL COMMENT '是否免费', + `support_tool_message` tinyint(1) NULL DEFAULT NULL COMMENT '是否支持tool消息', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '大模型管理' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for tb_model_provider +-- ---------------------------- +DROP TABLE IF EXISTS `tb_model_provider`; +CREATE TABLE `tb_model_provider` +( + `id` bigint UNSIGNED NOT NULL COMMENT 'id', + `provider_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '供应商名称', + `provider_type` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '不同的 client 实现,默认为 openai', + `icon` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '图标', + `api_key` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'apiKey', + `endpoint` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'endPoint', + `chat_path` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '对话地址', + `embed_path` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '向量地址', + `rerank_path` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '重排路径', + `created` datetime NOT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NOT NULL COMMENT '创建者', + `modified` datetime NOT NULL COMMENT '修改时间', + `modified_by` bigint UNSIGNED NOT NULL COMMENT '修改者', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '大模型供应商,比如 Aliyun/Gitee/火山引擎 等' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_plugin +-- ---------------------------- +DROP TABLE IF EXISTS `tb_plugin`; +CREATE TABLE `tb_plugin` +( + `id` bigint UNSIGNED NOT NULL COMMENT '插件id', + `alias` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '别名', + `name` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '名称', + `description` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '描述', + `type` int NULL DEFAULT NULL COMMENT '类型', + `base_url` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '基础URL', + `auth_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '认证方式 【apiKey/none】', + `created` datetime NULL DEFAULT NULL COMMENT '创建时间', + `icon` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '图标地址', + `position` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '认证参数位置 【headers, query】', + `headers` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '请求头', + `token_key` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'token键', + `token_value` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'token值', + `dept_id` bigint NULL DEFAULT NULL COMMENT '部门id', + `tenant_id` bigint NULL DEFAULT NULL COMMENT '租户id', + `created_by` bigint NULL DEFAULT NULL COMMENT '创建人', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `tb_ai_plugin_alias_uindex`(`alias`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '插件表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_plugin_category +-- ---------------------------- +DROP TABLE IF EXISTS `tb_plugin_category`; +CREATE TABLE `tb_plugin_category` +( + `id` bigint UNSIGNED NOT NULL AUTO_INCREMENT, + `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `created_at` datetime NULL DEFAULT NULL, + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB AUTO_INCREMENT = 44 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '插件分类' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_plugin_category_mapping +-- ---------------------------- +DROP TABLE IF EXISTS `tb_plugin_category_mapping`; +CREATE TABLE `tb_plugin_category_mapping` +( + `category_id` bigint UNSIGNED NOT NULL, + `plugin_id` bigint UNSIGNED NOT NULL +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '插件分类关联表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_plugin_item +-- ---------------------------- +DROP TABLE IF EXISTS `tb_plugin_item`; +CREATE TABLE `tb_plugin_item` +( + `id` bigint UNSIGNED NOT NULL COMMENT '插件工具id', + `plugin_id` bigint UNSIGNED NOT NULL COMMENT '插件id', + `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '名称', + `description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '描述', + `base_path` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '基础路径', + `created` datetime NULL DEFAULT NULL COMMENT '创建时间', + `status` int NULL DEFAULT 0 COMMENT '是否启用', + `input_data` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '输入参数', + `output_data` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '输出参数', + `request_method` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '请求方式【Post, Get, Put, Delete】', + `service_status` int NULL DEFAULT NULL COMMENT '服务状态[0 下线 1 上线]', + `debug_status` int NULL DEFAULT NULL COMMENT '调试状态【0失败 1成功】', + `english_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '英文名称', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '插件工具表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_qrtz_blob_triggers +-- ---------------------------- +DROP TABLE IF EXISTS `tb_qrtz_blob_triggers`; +CREATE TABLE `tb_qrtz_blob_triggers` +( + `SCHED_NAME` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TRIGGER_NAME` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TRIGGER_GROUP` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `BLOB_DATA` blob NULL, + PRIMARY KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) USING BTREE, + INDEX `SCHED_NAME`(`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) USING BTREE, + CONSTRAINT `TB_QRTZ_BLOB_TRIGGERS_IBFK_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `tb_qrtz_triggers` (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) ON DELETE RESTRICT ON UPDATE RESTRICT +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_qrtz_calendars +-- ---------------------------- +DROP TABLE IF EXISTS `tb_qrtz_calendars`; +CREATE TABLE `tb_qrtz_calendars` +( + `SCHED_NAME` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `CALENDAR_NAME` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `CALENDAR` blob NOT NULL, + PRIMARY KEY (`SCHED_NAME`, `CALENDAR_NAME`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_qrtz_cron_triggers +-- ---------------------------- +DROP TABLE IF EXISTS `tb_qrtz_cron_triggers`; +CREATE TABLE `tb_qrtz_cron_triggers` +( + `SCHED_NAME` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TRIGGER_NAME` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TRIGGER_GROUP` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `CRON_EXPRESSION` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TIME_ZONE_ID` varchar(80) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + PRIMARY KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) USING BTREE, + CONSTRAINT `TB_QRTZ_CRON_TRIGGERS_IBFK_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `tb_qrtz_triggers` (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) ON DELETE RESTRICT ON UPDATE RESTRICT +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_qrtz_fired_triggers +-- ---------------------------- +DROP TABLE IF EXISTS `tb_qrtz_fired_triggers`; +CREATE TABLE `tb_qrtz_fired_triggers` +( + `SCHED_NAME` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `ENTRY_ID` varchar(95) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TRIGGER_NAME` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TRIGGER_GROUP` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `INSTANCE_NAME` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `FIRED_TIME` bigint NOT NULL, + `SCHED_TIME` bigint NOT NULL, + `PRIORITY` int NOT NULL, + `STATE` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `JOB_NAME` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `JOB_GROUP` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `IS_NONCONCURRENT` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `REQUESTS_RECOVERY` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + PRIMARY KEY (`SCHED_NAME`, `ENTRY_ID`) USING BTREE, + INDEX `IDX_QRTZ_FT_TRIG_INST_NAME`(`SCHED_NAME`, `INSTANCE_NAME`) USING BTREE, + INDEX `IDX_QRTZ_FT_INST_JOB_REQ_RCVRY`(`SCHED_NAME`, `INSTANCE_NAME`, `REQUESTS_RECOVERY`) USING BTREE, + INDEX `IDX_QRTZ_FT_J_G`(`SCHED_NAME`, `JOB_NAME`, `JOB_GROUP`) USING BTREE, + INDEX `IDX_QRTZ_FT_JG`(`SCHED_NAME`, `JOB_GROUP`) USING BTREE, + INDEX `IDX_QRTZ_FT_T_G`(`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) USING BTREE, + INDEX `IDX_QRTZ_FT_TG`(`SCHED_NAME`, `TRIGGER_GROUP`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_qrtz_job_details +-- ---------------------------- +DROP TABLE IF EXISTS `tb_qrtz_job_details`; +CREATE TABLE `tb_qrtz_job_details` +( + `SCHED_NAME` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `JOB_NAME` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `JOB_GROUP` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `DESCRIPTION` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `JOB_CLASS_NAME` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `IS_DURABLE` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `IS_NONCONCURRENT` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `IS_UPDATE_DATA` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `REQUESTS_RECOVERY` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `JOB_DATA` blob NULL, + PRIMARY KEY (`SCHED_NAME`, `JOB_NAME`, `JOB_GROUP`) USING BTREE, + INDEX `IDX_QRTZ_J_REQ_RECOVERY`(`SCHED_NAME`, `REQUESTS_RECOVERY`) USING BTREE, + INDEX `IDX_QRTZ_J_GRP`(`SCHED_NAME`, `JOB_GROUP`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_qrtz_locks +-- ---------------------------- +DROP TABLE IF EXISTS `tb_qrtz_locks`; +CREATE TABLE `tb_qrtz_locks` +( + `SCHED_NAME` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `LOCK_NAME` varchar(40) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + PRIMARY KEY (`SCHED_NAME`, `LOCK_NAME`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_qrtz_paused_trigger_grps +-- ---------------------------- +DROP TABLE IF EXISTS `tb_qrtz_paused_trigger_grps`; +CREATE TABLE `tb_qrtz_paused_trigger_grps` +( + `SCHED_NAME` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TRIGGER_GROUP` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + PRIMARY KEY (`SCHED_NAME`, `TRIGGER_GROUP`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_qrtz_scheduler_state +-- ---------------------------- +DROP TABLE IF EXISTS `tb_qrtz_scheduler_state`; +CREATE TABLE `tb_qrtz_scheduler_state` +( + `SCHED_NAME` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `INSTANCE_NAME` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `LAST_CHECKIN_TIME` bigint NOT NULL, + `CHECKIN_INTERVAL` bigint NOT NULL, + PRIMARY KEY (`SCHED_NAME`, `INSTANCE_NAME`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_qrtz_simple_triggers +-- ---------------------------- +DROP TABLE IF EXISTS `tb_qrtz_simple_triggers`; +CREATE TABLE `tb_qrtz_simple_triggers` +( + `SCHED_NAME` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TRIGGER_NAME` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TRIGGER_GROUP` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `REPEAT_COUNT` bigint NOT NULL, + `REPEAT_INTERVAL` bigint NOT NULL, + `TIMES_TRIGGERED` bigint NOT NULL, + PRIMARY KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) USING BTREE, + CONSTRAINT `TB_QRTZ_SIMPLE_TRIGGERS_IBFK_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `tb_qrtz_triggers` (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) ON DELETE RESTRICT ON UPDATE RESTRICT +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_qrtz_simprop_triggers +-- ---------------------------- +DROP TABLE IF EXISTS `tb_qrtz_simprop_triggers`; +CREATE TABLE `tb_qrtz_simprop_triggers` +( + `SCHED_NAME` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TRIGGER_NAME` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TRIGGER_GROUP` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `STR_PROP_1` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `STR_PROP_2` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `STR_PROP_3` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `INT_PROP_1` int NULL DEFAULT NULL, + `INT_PROP_2` int NULL DEFAULT NULL, + `LONG_PROP_1` bigint NULL DEFAULT NULL, + `LONG_PROP_2` bigint NULL DEFAULT NULL, + `DEC_PROP_1` decimal(13, 4) NULL DEFAULT NULL, + `DEC_PROP_2` decimal(13, 4) NULL DEFAULT NULL, + `BOOL_PROP_1` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `BOOL_PROP_2` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + PRIMARY KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) USING BTREE, + CONSTRAINT `TB_QRTZ_SIMPROP_TRIGGERS_IBFK_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `tb_qrtz_triggers` (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) ON DELETE RESTRICT ON UPDATE RESTRICT +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_qrtz_triggers +-- ---------------------------- +DROP TABLE IF EXISTS `tb_qrtz_triggers`; +CREATE TABLE `tb_qrtz_triggers` +( + `SCHED_NAME` varchar(120) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TRIGGER_NAME` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TRIGGER_GROUP` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `JOB_NAME` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `JOB_GROUP` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `DESCRIPTION` varchar(250) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `NEXT_FIRE_TIME` bigint NULL DEFAULT NULL, + `PREV_FIRE_TIME` bigint NULL DEFAULT NULL, + `PRIORITY` int NULL DEFAULT NULL, + `TRIGGER_STATE` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `TRIGGER_TYPE` varchar(8) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL, + `START_TIME` bigint NOT NULL, + `END_TIME` bigint NULL DEFAULT NULL, + `CALENDAR_NAME` varchar(190) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, + `MISFIRE_INSTR` smallint NULL DEFAULT NULL, + `JOB_DATA` blob NULL, + PRIMARY KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) USING BTREE, + INDEX `IDX_QRTZ_T_J`(`SCHED_NAME`, `JOB_NAME`, `JOB_GROUP`) USING BTREE, + INDEX `IDX_QRTZ_T_JG`(`SCHED_NAME`, `JOB_GROUP`) USING BTREE, + INDEX `IDX_QRTZ_T_C`(`SCHED_NAME`, `CALENDAR_NAME`) USING BTREE, + INDEX `IDX_QRTZ_T_G`(`SCHED_NAME`, `TRIGGER_GROUP`) USING BTREE, + INDEX `IDX_QRTZ_T_STATE`(`SCHED_NAME`, `TRIGGER_STATE`) USING BTREE, + INDEX `IDX_QRTZ_T_N_STATE`(`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`, `TRIGGER_STATE`) USING BTREE, + INDEX `IDX_QRTZ_T_N_G_STATE`(`SCHED_NAME`, `TRIGGER_GROUP`, `TRIGGER_STATE`) USING BTREE, + INDEX `IDX_QRTZ_T_NEXT_FIRE_TIME`(`SCHED_NAME`, `NEXT_FIRE_TIME`) USING BTREE, + INDEX `IDX_QRTZ_T_NFT_ST`(`SCHED_NAME`, `TRIGGER_STATE`, `NEXT_FIRE_TIME`) USING BTREE, + INDEX `IDX_QRTZ_T_NFT_MISFIRE`(`SCHED_NAME`, `MISFIRE_INSTR`, `NEXT_FIRE_TIME`) USING BTREE, + INDEX `IDX_QRTZ_T_NFT_ST_MISFIRE`(`SCHED_NAME`, `MISFIRE_INSTR`, `NEXT_FIRE_TIME`, `TRIGGER_STATE`) USING BTREE, + INDEX `IDX_QRTZ_T_NFT_ST_MISFIRE_GRP`(`SCHED_NAME`, `MISFIRE_INSTR`, `NEXT_FIRE_TIME`, `TRIGGER_GROUP`, `TRIGGER_STATE`) USING BTREE, + CONSTRAINT `TB_QRTZ_TRIGGERS_IBFK_1` FOREIGN KEY (`SCHED_NAME`, `JOB_NAME`, `JOB_GROUP`) REFERENCES `tb_qrtz_job_details` (`SCHED_NAME`, `JOB_NAME`, `JOB_GROUP`) ON DELETE RESTRICT ON UPDATE RESTRICT +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_resource +-- ---------------------------- +DROP TABLE IF EXISTS `tb_resource`; +CREATE TABLE `tb_resource` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `dept_id` bigint UNSIGNED NOT NULL COMMENT '部门ID', + `tenant_id` bigint UNSIGNED NOT NULL COMMENT '租户ID', + `resource_type` int NOT NULL COMMENT '素材类型', + `resource_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '素材名称', + `suffix` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '后缀', + `resource_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '素材地址', + `origin` int NOT NULL DEFAULT 0 COMMENT '素材来源', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `created` datetime NOT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NOT NULL COMMENT '创建者', + `modified` datetime NOT NULL COMMENT '修改时间', + `modified_by` bigint UNSIGNED NOT NULL COMMENT '修改者', + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '扩展项', + `file_size` bigint UNSIGNED NULL DEFAULT NULL COMMENT '文件大小', + `category_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '分类ID', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '素材库' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_resource_category +-- ---------------------------- +DROP TABLE IF EXISTS `tb_resource_category`; +CREATE TABLE `tb_resource_category` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `category_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '分类名称', + `sort_no` int NULL DEFAULT 0 COMMENT '排序', + `created` datetime NOT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NOT NULL COMMENT '创建者', + `modified` datetime NOT NULL COMMENT '修改时间', + `modified_by` bigint UNSIGNED NOT NULL COMMENT '修改者', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '素材分类' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for tb_sys_account +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_account`; +CREATE TABLE `tb_sys_account` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `dept_id` bigint UNSIGNED NOT NULL COMMENT '部门ID', + `tenant_id` bigint UNSIGNED NOT NULL COMMENT '租户ID', + `login_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '登录账号', + `password` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '密码', + `account_type` tinyint NOT NULL DEFAULT 0 COMMENT '账户类型', + `nickname` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '昵称', + `mobile` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '手机电话', + `email` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '邮件', + `avatar` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '账户头像', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `created` datetime NOT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NOT NULL COMMENT '创建者', + `modified` datetime NOT NULL COMMENT '修改时间', + `modified_by` bigint UNSIGNED NOT NULL COMMENT '修改者', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '备注', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_login_name`(`login_name`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_account_position +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_account_position`; +CREATE TABLE `tb_sys_account_position` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `account_id` bigint UNSIGNED NOT NULL COMMENT '用户ID', + `position_id` bigint UNSIGNED NOT NULL COMMENT '职位ID', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_account_position`(`account_id`, `position_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户-职位表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_account_role +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_account_role`; +CREATE TABLE `tb_sys_account_role` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `account_id` bigint UNSIGNED NOT NULL COMMENT '用户ID', + `role_id` bigint UNSIGNED NOT NULL COMMENT '角色ID', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_account_role`(`account_id`, `role_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户-角色表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_api_key +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_api_key`; +CREATE TABLE `tb_sys_api_key` +( + `id` bigint UNSIGNED NOT NULL COMMENT 'id', + `api_key` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'apiKey', + `created` datetime NULL DEFAULT NULL COMMENT '创建时间', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `dept_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '部门id', + `tenant_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '租户id', + `expired_at` datetime NULL DEFAULT NULL COMMENT '失效时间', + `created_by` bigint UNSIGNED NULL DEFAULT NULL COMMENT '创建人', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_api_key`(`api_key`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = 'apikey表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_api_key_resource +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_api_key_resource`; +CREATE TABLE `tb_sys_api_key_resource` +( + `id` bigint UNSIGNED NOT NULL COMMENT 'id', + `request_interface` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求接口', + `title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '标题', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE KEY `uni_api` (`request_interface`) +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '请求接口表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for tb_sys_api_key_resource_mapping +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_api_key_resource_mapping`; +CREATE TABLE `tb_sys_api_key_resource_mapping` +( + `id` bigint UNSIGNED NOT NULL COMMENT 'id', + `api_key_id` bigint UNSIGNED NOT NULL COMMENT 'api_key_id', + `api_key_resource_id` bigint UNSIGNED NOT NULL COMMENT '请求接口资源访问id', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_api_key_resource`(`api_key_id`, `api_key_resource_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = 'apikey-请求接口表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for tb_sys_dept +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_dept`; +CREATE TABLE `tb_sys_dept` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `tenant_id` bigint UNSIGNED NOT NULL COMMENT '租户ID', + `parent_id` bigint UNSIGNED NOT NULL COMMENT '父级ID', + `ancestors` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '父级部门ID集合', + `dept_name` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '部门名称', + `dept_code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '部门编码', + `sort_no` int NULL DEFAULT 0 COMMENT '排序', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `created` datetime NOT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NOT NULL COMMENT '创建者', + `modified` datetime NOT NULL COMMENT '修改时间', + `modified_by` bigint UNSIGNED NOT NULL COMMENT '修改者', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '备注', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '部门表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_dict +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_dict`; +CREATE TABLE `tb_sys_dict` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `name` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '数据字典名称', + `code` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '' COMMENT '字典编码', + `description` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '字典描述或备注', + `dict_type` tinyint NULL DEFAULT NULL COMMENT '字典类型 1 自定义字典、2 数据表字典、 3 枚举类字典、 4 系统字典(自定义 DictLoader)', + `sort_no` int NULL DEFAULT NULL COMMENT '排序编号', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '扩展字典 存放 json', + `created` datetime NULL DEFAULT NULL COMMENT '创建时间', + `modified` datetime NULL DEFAULT NULL COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `key`(`code`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '系统字典表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_dict_item +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_dict_item`; +CREATE TABLE `tb_sys_dict_item` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `dict_id` bigint UNSIGNED NOT NULL COMMENT '归属哪个字典', + `text` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '' COMMENT '名称或内容', + `value` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL DEFAULT '' COMMENT '值', + `description` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '描述', + `sort_no` int NOT NULL DEFAULT 0 COMMENT '排序', + `css_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT 'css样式内容', + `css_class` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'css样式类名', + `remark` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `created` datetime NULL DEFAULT NULL COMMENT '创建时间', + `modified` datetime NULL DEFAULT NULL COMMENT '修改时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '数据字典内容' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_job +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_job`; +CREATE TABLE `tb_sys_job` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `dept_id` bigint UNSIGNED NOT NULL COMMENT '部门ID', + `tenant_id` bigint UNSIGNED NOT NULL COMMENT '租户ID', + `job_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '任务名称', + `job_type` int NOT NULL COMMENT '任务类型', + `job_params` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '任务参数', + `cron_expression` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'cron表达式', + `allow_concurrent` int NOT NULL DEFAULT 0 COMMENT '是否并发执行', + `misfire_policy` int NOT NULL DEFAULT 3 COMMENT '错过策略', + `options` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '其他配置', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `created` datetime NOT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NOT NULL COMMENT '创建者', + `modified` datetime NOT NULL COMMENT '修改时间', + `modified_by` bigint UNSIGNED NOT NULL COMMENT '修改者', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '备注', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '系统任务表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_job_log +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_job_log`; +CREATE TABLE `tb_sys_job_log` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `job_id` bigint UNSIGNED NOT NULL COMMENT '任务ID', + `job_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '任务名称', + `job_params` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '任务参数', + `job_result` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '执行结果', + `error_info` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '错误信息', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `start_time` datetime NOT NULL COMMENT '开始时间', + `end_time` datetime NOT NULL COMMENT '结束时间', + `created` datetime NOT NULL COMMENT '创建时间', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '备注', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '系统任务日志' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_log +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_log`; +CREATE TABLE `tb_sys_log` +( + `id` bigint UNSIGNED NOT NULL COMMENT 'ID', + `account_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '操作人', + `action_name` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '操作名称', + `action_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '操作的类型', + `action_class` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '操作涉及的类', + `action_method` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '操作涉及的方法', + `action_url` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '操作涉及的 URL 地址', + `action_ip` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '操作涉及的用户 IP 地址', + `action_params` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '操作请求参数', + `action_body` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '操作请求body', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `created` datetime NULL DEFAULT NULL COMMENT '操作时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '操作日志表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_menu +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_menu`; +CREATE TABLE `tb_sys_menu` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `parent_id` bigint UNSIGNED NOT NULL COMMENT '父菜单id', + `menu_type` int NOT NULL COMMENT '菜单类型', + `menu_title` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '菜单标题', + `menu_url` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '菜单url', + `component` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '组件路径', + `menu_icon` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '图标/图片地址', + `is_show` int NOT NULL DEFAULT 1 COMMENT '是否显示', + `permission_tag` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '权限标识', + `sort_no` int NULL DEFAULT 0 COMMENT '排序', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `created` datetime NOT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NOT NULL COMMENT '创建者', + `modified` datetime NOT NULL COMMENT '修改时间', + `modified_by` bigint UNSIGNED NOT NULL COMMENT '修改者', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '备注', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '菜单表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_option +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_option`; +CREATE TABLE `tb_sys_option` +( + `tenant_id` bigint UNSIGNED NOT NULL COMMENT '租户ID', + `key` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '配置KEY', + `value` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '配置内容', + UNIQUE INDEX `uni_key`(`tenant_id`, `key`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '系统配置信息表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_position +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_position`; +CREATE TABLE `tb_sys_position` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `tenant_id` bigint UNSIGNED NOT NULL COMMENT '租户ID', + `dept_id` bigint UNSIGNED NOT NULL COMMENT '部门ID', + `position_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '岗位名称', + `position_code` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '岗位编码', + `sort_no` int NULL DEFAULT 0 COMMENT '排序', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `created` datetime NOT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NOT NULL COMMENT '创建者', + `modified` datetime NOT NULL COMMENT '修改时间', + `modified_by` bigint UNSIGNED NOT NULL COMMENT '修改者', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '备注', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '职位表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_role +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_role`; +CREATE TABLE `tb_sys_role` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `tenant_id` bigint UNSIGNED NOT NULL COMMENT '租户ID', + `role_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '角色名称', + `role_key` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '角色标识', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `created` datetime NOT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NOT NULL COMMENT '创建者', + `modified` datetime NOT NULL COMMENT '修改时间', + `modified_by` bigint UNSIGNED NOT NULL COMMENT '修改者', + `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT '' COMMENT '备注', + `data_scope` int NULL DEFAULT 1 COMMENT '数据权限(EnumDataScope)', + `menu_check_strictly` tinyint(1) NULL DEFAULT 1 COMMENT '菜单树选择项是否关联显示', + `dept_check_strictly` tinyint(1) NULL DEFAULT 1 COMMENT '部门树选择项是否关联显示', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_tenant_role`(`tenant_id`, `role_key`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '系统角色' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_role_dept +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_role_dept`; +CREATE TABLE `tb_sys_role_dept` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `role_id` bigint UNSIGNED NOT NULL COMMENT '角色ID', + `dept_id` bigint UNSIGNED NOT NULL COMMENT '部门ID', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_role_dept`(`role_id`, `dept_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '角色-部门表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_role_menu +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_role_menu`; +CREATE TABLE `tb_sys_role_menu` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `role_id` bigint UNSIGNED NOT NULL COMMENT '角色ID', + `menu_id` bigint UNSIGNED NOT NULL COMMENT '菜单ID', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_role_menu`(`role_id`, `menu_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '角色-菜单表' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_workflow +-- ---------------------------- +DROP TABLE IF EXISTS `tb_workflow`; +CREATE TABLE `tb_workflow` +( + `id` bigint UNSIGNED NOT NULL COMMENT 'ID 主键', + `alias` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '别名', + `dept_id` bigint UNSIGNED NOT NULL COMMENT '部门ID', + `tenant_id` bigint UNSIGNED NOT NULL COMMENT '租户ID', + `title` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '标题', + `description` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '描述', + `icon` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'ICON', + `content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '工作流设计的 JSON 内容', + `created` datetime NULL DEFAULT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NULL DEFAULT NULL COMMENT '创建人', + `modified` datetime NULL DEFAULT NULL COMMENT '最后修改时间', + `modified_by` bigint UNSIGNED NULL DEFAULT NULL COMMENT '最后修改的人', + `english_name` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '英文名称', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `category_id` bigint UNSIGNED NULL DEFAULT NULL COMMENT '分类ID', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `tb_ai_workflow_alias_uindex`(`alias`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '工作流' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_workflow_category +-- ---------------------------- +DROP TABLE IF EXISTS `tb_workflow_category`; +CREATE TABLE `tb_workflow_category` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `category_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '分类名称', + `sort_no` int NULL DEFAULT 0 COMMENT '排序', + `created` datetime NOT NULL COMMENT '创建时间', + `created_by` bigint UNSIGNED NOT NULL COMMENT '创建者', + `modified` datetime NOT NULL COMMENT '修改时间', + `modified_by` bigint UNSIGNED NOT NULL COMMENT '修改者', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '工作流分类' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for tb_workflow_exec_result +-- ---------------------------- +DROP TABLE IF EXISTS `tb_workflow_exec_result`; +CREATE TABLE `tb_workflow_exec_result` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `exec_key` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '执行标识', + `workflow_id` bigint UNSIGNED NOT NULL COMMENT '工作流ID', + `title` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '标题', + `description` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '描述', + `input` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '输入', + `output` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '输出', + `workflow_json` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '工作流执行时的配置', + `start_time` datetime(3) NOT NULL COMMENT '开始时间', + `end_time` datetime(3) NULL DEFAULT NULL COMMENT '结束时间', + `tokens` bigint UNSIGNED NULL DEFAULT NULL COMMENT '消耗总token', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `created_key` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '执行人标识[有可能是用户|外部|定时任务等情况]', + `created_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '执行人', + `error_info` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '错误信息', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_exec_key`(`exec_key`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '工作流执行记录' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_workflow_exec_step +-- ---------------------------- +DROP TABLE IF EXISTS `tb_workflow_exec_step`; +CREATE TABLE `tb_workflow_exec_step` +( + `id` bigint UNSIGNED NOT NULL COMMENT '主键', + `record_id` bigint UNSIGNED NOT NULL COMMENT '执行记录ID', + `exec_key` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '执行标识', + `node_id` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '节点ID', + `node_name` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '节点名称', + `input` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '输入', + `output` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '输出', + `node_data` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '节点信息', + `start_time` datetime(3) NOT NULL COMMENT '开始时间', + `end_time` datetime(3) NULL DEFAULT NULL COMMENT '结束时间', + `tokens` bigint UNSIGNED NULL DEFAULT NULL COMMENT '消耗总token', + `status` int NOT NULL DEFAULT 0 COMMENT '数据状态', + `error_info` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '错误信息', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_exec`(`exec_key`) USING BTREE, + INDEX `idx_record_id`(`record_id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '执行记录步骤' ROW_FORMAT = DYNAMIC; + +-- ---------------------------- +-- Table structure for tb_sys_user_feedback +-- ---------------------------- +DROP TABLE IF EXISTS `tb_sys_user_feedback`; +CREATE TABLE `tb_sys_user_feedback` +( + `id` bigint(0) UNSIGNED NOT NULL COMMENT '主键id', + `feedback_content` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '问题摘要', + `feedback_type` int(0) NOT NULL COMMENT '问题类型(1-功能故障 2-优化建议 3-账号问题 4-其他)', + `contact_info` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '联系方式【手机号/邮箱】', + `attachment_url` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '附件url', + `status` int(0) NULL DEFAULT NULL COMMENT '反馈处理状态(0-未查看 1-已查看 2-已处理)', + `handler_id` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '处理人id', + `handle_time` datetime(0) NULL DEFAULT NULL COMMENT '处理时间', + `dept_id` bigint(0) UNSIGNED NOT NULL COMMENT '部门ID', + `tenant_id` bigint(0) UNSIGNED NOT NULL COMMENT '租户ID', + `created` datetime(0) NOT NULL COMMENT '创建时间', + `created_by` bigint(0) UNSIGNED NOT NULL COMMENT '创建人', + `modified` datetime(0) NULL DEFAULT NULL COMMENT '最后修改时间', + `modified_by` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '最后修改的人', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for tb_mcp +-- ---------------------------- +DROP TABLE IF EXISTS `tb_mcp`; +CREATE TABLE `tb_mcp` +( + `id` bigint(0) UNSIGNED NOT NULL COMMENT 'id', + `title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '标题', + `description` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '描述', + `config_json` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '完整MCP配置JSON', + `dept_id` bigint(0) UNSIGNED NOT NULL COMMENT '部门ID', + `tenant_id` bigint(0) UNSIGNED NOT NULL COMMENT '租户ID', + `created` datetime(0) NULL DEFAULT NULL COMMENT '创建时间', + `created_by` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '创建者ID', + `modified` datetime(0) NULL DEFAULT NULL COMMENT '修改时间', + `modified_by` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT '修改者ID', + `status` tinyint(1) NULL DEFAULT 0 COMMENT '是否启用', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = 'mcp表' ROW_FORMAT = Dynamic; + +-- ---------------------------- +-- Table structure for tb_bot_mcp +-- ---------------------------- +DROP TABLE IF EXISTS `tb_bot_mcp`; +CREATE TABLE `tb_bot_mcp` +( + `id` bigint(0) UNSIGNED NOT NULL COMMENT 'id', + `bot_id` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT 'botId', + `mcp_id` bigint(0) UNSIGNED NULL DEFAULT NULL COMMENT 'mcpId', + `mcp_tool_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'mcp工具名称', + `mcp_tool_description` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'mcp工具描述', + PRIMARY KEY (`id`) USING BTREE, + UNIQUE INDEX `uni_bot_mcp`(`bot_id`, `mcp_id`, `mcp_tool_name`) USING BTREE +) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic; + +SET +FOREIGN_KEY_CHECKS = 1; diff --git a/sql/initdb/02-easyflow-v2.data.sql b/sql/initdb/02-easyflow-v2.data.sql new file mode 100644 index 0000000..22a759b --- /dev/null +++ b/sql/initdb/02-easyflow-v2.data.sql @@ -0,0 +1,265 @@ +SET NAMES utf8mb4; + +-- ---------------------------- +-- Records of tb_sys_account +-- ---------------------------- +INSERT INTO `tb_sys_account` (`id`, `dept_id`, `tenant_id`, `login_name`, `password`, `account_type`, `nickname`, `mobile`, `email`, `avatar`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (1, 1, 1000000, 'admin', '$2a$10$mni2UdHMUwomVzvZtdECAOwYJevZ2z48ApO.JSVhyEaQ/AOKr4VP2', 99, '超级管理员', '15555555555', 'bbb@qq.com', 'https://static.agentscenter.cn/public/1/2025/12/17/684ea528-8e42-489c-b254-4e52e0679431/b.jpeg', 1, '2025-06-06 11:32:21', 1, '2025-12-17 17:51:16', 1, ''); + +-- ---------------------------- +-- Records of tb_sys_account_role +-- ---------------------------- +INSERT INTO `tb_sys_account_role` (`id`, `account_id`, `role_id`) VALUES (302654483522224128, 1, 1); + +-- ---------------------------- +-- Records of tb_sys_dept +-- ---------------------------- +INSERT INTO `tb_sys_dept` (`id`, `tenant_id`, `parent_id`, `ancestors`, `dept_name`, `dept_code`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (1, 1000000, 0, '0', '总公司', 'root_dept', 0, 1, '2025-03-17 09:09:57', 1, '2025-03-17 09:10:00', 1, ''); + +-- ---------------------------- +-- Records of tb_sys_menu +-- ---------------------------- +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (183724390000000001, 258052082618335232, 0, 'menus.system.sysPosition', '/sys/sysPosition', '/system/sysPosition/SysPositionList', 'svg:position', 1, '', 300, 1, '2026-01-05 09:07:06', 0, '2026-01-05 09:12:37', 1, '岗位管理菜单'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (183724390000000002, 183724390000000001, 1, '查询', '', '', '', 0, '/api/v1/sysPosition/query', 100, 1, '2026-01-05 09:07:06', 0, '2026-01-05 09:07:06', 0, '岗位管理-查询'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (183724390000000003, 183724390000000001, 1, '保存', '', '', '', 0, '/api/v1/sysPosition/save', 101, 1, '2026-01-05 09:07:06', 0, '2026-01-05 09:07:06', 0, '岗位管理-保存'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (183724390000000004, 183724390000000001, 1, '删除', '', '', '', 0, '/api/v1/sysPosition/remove', 102, 1, '2026-01-05 09:07:06', 0, '2026-01-05 09:07:06', 0, '岗位管理-删除'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (258052082618335232, 0, 0, 'menus.system.title', '/sys', '', 'ant-design:appstore-outlined', 1, '', 200, 0, '2025-03-14 15:07:51', 1, '2025-12-02 13:39:37', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (258052774330368000, 258052082618335232, 0, 'menus.system.sysAccount', '/sys/sysAccount', '/system/sysAccount/SysAccountList', 'svg:account', 1, '', 100, 0, '2025-03-14 15:10:36', 1, '2025-12-25 16:49:03', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (258075705244676096, 258052082618335232, 0, 'menus.system.sysRole', '/sys/sysRole', '/system/sysRole/SysRoleList', 'svg:role', 1, '', 400, 0, '2025-03-14 16:41:43', 1, '2025-12-25 16:49:10', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (258075850434703360, 258052082618335232, 0, 'menus.system.sysMenu', '/sys/sysMenu', '/system/sysMenu/SysMenuList', 'svg:menu', 1, '', 500, 0, '2025-03-14 16:42:18', 1, '2025-12-25 16:49:23', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (259048038847483904, 258052082618335232, 0, 'menus.system.sysDept', '/sys/sysDept', '/system/sysDept/SysDeptList', 'svg:department', 1, '', 200, 0, '2025-03-17 09:05:25', 1, '2025-12-25 16:49:41', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (259168916721754112, 258052082618335232, 0, 'menus.settings.settingsConfig', '/sys/settings', '/config/settings/Settings', 'svg:setting', 1, '', 1000, 0, '2025-03-17 17:05:45', 1, '2025-12-26 11:17:36', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (259169318720626688, 258052082618335232, 0, 'menus.system.sysLog', '/sys/logs', '/system/sysLog/SysLogList', 'svg:log', 1, '', 600, 0, '2025-03-17 17:07:21', 1, '2025-12-25 16:49:59', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (259169837824466944, 259169540360232960, 0, 'menus.ai.bots', '/ai/bots', '/ai/bots/index', 'svg:talk', 1, '', 11, 0, '2025-03-17 17:09:24', 1, '2026-01-06 10:46:41', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (259169982154661888, 0, 0, 'menus.ai.plugin', '/ai/plugin', '/ai/plugin/Plugin', 'svg:plugin', 1, '', 21, 0, '2025-03-17 17:09:59', 1, '2025-12-26 11:14:29', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (259170117110587392, 0, 0, 'menus.ai.workflow', '/ai/workflow', '/ai/workflow/WorkflowList', 'svg:workflow', 1, '', 31, 0, '2025-03-17 17:10:31', 1, '2025-12-26 11:35:41', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (259170422338478080, 0, 0, 'menus.ai.documentCollection', '/ai/documentCollection', '/ai/documentCollection/DocumentCollection', 'svg:knowledge', 1, '', 51, 0, '2025-03-17 17:11:44', 1, '2025-12-26 11:14:42', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (259170538264846336, 0, 0, 'menus.ai.model', '/ai/model', '/ai/model/Model', 'svg:llm', 1, '', 61, 0, '2025-03-17 17:12:11', 1, '2025-12-26 11:15:16', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (270761213536096256, 258052082618335232, 0, 'menus.settings.apiKey', '/sys/sysApiKey', '/config/apikey/SysApiKey', 'svg:api', 1, '', 800, 0, '2025-04-18 16:49:24', 1, '2025-12-26 11:17:49', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (282254669269082112, 258052082618335232, 0, 'menus.system.sysJob', '/sys/sysJob', '/system/sysJob/SysJobList', 'svg:time', 1, '', 700, 0, '2025-05-20 10:00:17', 1, '2025-12-25 16:49:50', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243919118950400, 258052774330368000, 1, '查询', '', '', '', 0, '/api/v1/sysAccount/query', 1, 0, '2025-07-03 12:55:51', 1, '2025-07-03 12:55:51', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243919727124480, 258052774330368000, 1, '保存', '', '', '', 0, '/api/v1/sysAccount/save', 1, 0, '2025-07-03 12:55:51', 1, '2025-07-03 12:55:51', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243920205275136, 258052774330368000, 1, '删除', '', '', '', 0, '/api/v1/sysAccount/remove', 1, 0, '2025-07-03 12:55:51', 1, '2025-07-03 12:55:51', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243920679231488, 258075705244676096, 1, '查询', '', '', '', 0, '/api/v1/sysRole/query', 1, 0, '2025-07-03 12:55:52', 1, '2025-07-03 12:55:52', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243921161576448, 258075705244676096, 1, '保存', '', '', '', 0, '/api/v1/sysRole/save', 1, 0, '2025-07-03 12:55:52', 1, '2025-07-03 12:55:52', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243921639727104, 258075705244676096, 1, '删除', '', '', '', 0, '/api/v1/sysRole/remove', 1, 0, '2025-07-03 12:55:52', 1, '2025-07-03 12:55:52', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243922155626496, 258075850434703360, 1, '查询', '', '', '', 0, '/api/v1/sysMenu/query', 1, 0, '2025-07-03 12:55:52', 1, '2025-07-03 12:55:52', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243922637971456, 258075850434703360, 1, '保存', '', '', '', 0, '/api/v1/sysMenu/save', 1, 0, '2025-07-03 12:55:52', 1, '2025-07-03 12:55:52', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243923116122112, 258075850434703360, 1, '删除', '', '', '', 0, '/api/v1/sysMenu/remove', 1, 0, '2025-07-03 12:55:52', 1, '2025-07-03 12:55:52', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243923627827200, 259048038847483904, 1, '查询', '', '', '', 0, '/api/v1/sysDept/query', 1, 0, '2025-07-03 12:55:52', 1, '2025-07-03 12:55:52', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243924105977856, 259048038847483904, 1, '保存', '', '', '', 0, '/api/v1/sysDept/save', 1, 0, '2025-07-03 12:55:52', 1, '2025-07-03 12:55:52', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243924571545600, 259048038847483904, 1, '删除', '', '', '', 0, '/api/v1/sysDept/remove', 1, 0, '2025-07-03 12:55:52', 1, '2025-07-03 12:55:52', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243926450593792, 259168916721754112, 1, '查询', '', '', '', 0, '/api/v1/sysOption/query', 1, 0, '2025-07-03 12:55:53', 1, '2025-07-03 12:55:53', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243926920355840, 259168916721754112, 1, '保存', '', '', '', 0, '/api/v1/sysOption/save', 1, 0, '2025-07-03 12:55:53', 1, '2025-07-03 12:55:53', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243927385923584, 259168916721754112, 1, '删除', '', '', '', 0, '/api/v1/sysOption/remove', 1, 0, '2025-07-03 12:55:53', 1, '2025-07-03 12:55:53', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243929294331904, 259169318720626688, 1, '查询', '', '', '', 0, '/api/v1/sysLog/query', 1, 0, '2025-07-03 12:55:54', 1, '2025-07-03 12:55:54', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243929755705344, 259169318720626688, 1, '保存', '', '', '', 0, '/api/v1/sysLog/save', 1, 0, '2025-07-03 12:55:54', 1, '2025-07-03 12:55:54', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243930225467392, 259169318720626688, 1, '删除', '', '', '', 0, '/api/v1/sysLog/remove', 1, 0, '2025-07-03 12:55:54', 1, '2025-07-03 12:55:54', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243932104515584, 259169837824466944, 1, '查询', '', '', '', 0, '/api/v1/bot/query', 1, 0, '2025-07-03 12:55:55', 1, '2025-11-20 16:10:04', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243932607832064, 259169837824466944, 1, '保存', '', '', '', 0, '/api/v1/bot/save', 1, 0, '2025-07-03 12:55:55', 1, '2025-07-03 12:55:55', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243933077594112, 259169837824466944, 1, '删除', '', '', '', 0, '/api/v1/bot/remove', 1, 0, '2025-07-03 12:55:55', 1, '2025-07-03 12:55:55', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243933547356160, 259169982154661888, 1, '查询', '', '', '', 0, '/api/v1/plugin/query', 1, 0, '2025-07-03 12:55:55', 1, '2025-07-03 12:55:55', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243934025506816, 259169982154661888, 1, '保存', '', '', '', 0, '/api/v1/plugin/save', 1, 0, '2025-07-03 12:55:55', 1, '2025-07-03 12:55:55', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243934495268864, 259169982154661888, 1, '删除', '', '', '', 0, '/api/v1/plugin/remove', 1, 0, '2025-07-03 12:55:55', 1, '2025-07-03 12:55:55', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243934960836608, 259170117110587392, 1, '查询', '', '', '', 0, '/api/v1/workflow/query', 1, 0, '2025-07-03 12:55:55', 1, '2025-07-03 12:55:55', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243935430598656, 259170117110587392, 1, '保存', '', '', '', 0, '/api/v1/workflow/save', 1, 0, '2025-07-03 12:55:55', 1, '2025-07-03 12:55:55', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243935904555008, 259170117110587392, 1, '删除', '', '', '', 0, '/api/v1/workflow/remove', 1, 0, '2025-07-03 12:55:55', 1, '2025-07-03 12:55:55', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243936374317056, 259170422338478080, 1, '查询', '', '', '', 0, '/api/v1/documentCollection/query', 1, 0, '2025-07-03 12:55:56', 1, '2025-07-03 12:55:56', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243936848273408, 259170422338478080, 1, '保存', '', '', '', 0, '/api/v1/documentCollection/save', 1, 0, '2025-07-03 12:55:56', 1, '2025-07-03 12:55:56', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243937313841152, 259170422338478080, 1, '删除', '', '', '', 0, '/api/v1/documentCollection/remove', 1, 0, '2025-07-03 12:55:56', 1, '2025-07-03 12:55:56', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243937783603200, 259170538264846336, 1, '查询', '', '', '', 0, '/api/v1/model/query', 1, 0, '2025-07-03 12:55:56', 1, '2025-07-03 12:55:56', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243938240782336, 259170538264846336, 1, '保存', '', '', '', 0, '/api/v1/model/save', 1, 0, '2025-07-03 12:55:56', 1, '2025-07-03 12:55:56', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243938706350080, 259170538264846336, 1, '删除', '', '', '', 0, '/api/v1/model/remove', 1, 0, '2025-07-03 12:55:56', 1, '2025-07-03 12:55:56', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243939180306432, 270761213536096256, 1, '查询', '', '', '', 0, '/api/v1/sysApiKey/query', 1, 0, '2025-07-03 12:55:56', 1, '2025-07-03 12:55:56', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243939650068480, 270761213536096256, 1, '保存', '', '', '', 0, '/api/v1/sysApiKey/save', 1, 0, '2025-07-03 12:55:56', 1, '2025-07-03 12:55:56', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243940115636224, 270761213536096256, 1, '删除', '', '', '', 0, '/api/v1/sysApiKey/remove', 1, 0, '2025-07-03 12:55:56', 1, '2025-07-03 12:55:56', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243940614758400, 282254669269082112, 1, '查询', '', '', '', 0, '/api/v1/sysJob/query', 1, 0, '2025-07-03 12:55:57', 1, '2025-07-03 12:55:57', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243941080326144, 282254669269082112, 1, '保存', '', '', '', 0, '/api/v1/sysJob/save', 1, 0, '2025-07-03 12:55:57', 1, '2025-07-03 12:55:57', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (298243941545893888, 282254669269082112, 1, '删除', '', '', '', 0, '/api/v1/sysJob/remove', 1, 0, '2025-07-03 12:55:57', 1, '2025-07-03 12:55:57', 1, 'gen'); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (300008008381800448, 0, 0, 'menus.ai.resources', '/ai/resource', '/ai/resource/ResourceList', 'svg:resource', 1, '', 52, 0, '2025-07-08 09:45:43', 1, '2025-12-26 11:37:42', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (300008359986110464, 300008008381800448, 1, '查询', '', '', '', 0, '/api/v1/resource/query', 0, 0, '2025-07-08 09:47:07', 1, '2025-07-08 09:47:07', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (300012644643815424, 300008008381800448, 1, '保存', '', '', '', 0, '/api/v1/resource/save', 0, 0, '2025-07-08 10:04:08', 1, '2025-07-08 10:04:08', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (300013092268326912, 300008008381800448, 1, '删除', '', '', '', 1, '/api/v1/resource/remove', 0, 0, '2025-07-08 10:05:55', 1, '2025-07-08 10:05:55', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (300817858217091072, 0, 0, 'menus.ai.datacenter', '/datacenter/table', '/datacenter/DatacenterTableList', 'svg:data-center', 1, '', 53, 0, '2025-07-10 15:23:46', 1, '2025-12-26 11:15:08', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (300818298270883840, 300817858217091072, 1, '查询', '', '', '', 1, '/api/v1/datacenterTable/query', 0, 0, '2025-07-10 15:25:31', 1, '2025-07-10 15:25:31', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (300818387710222336, 300817858217091072, 1, '保存', '', '', '', 1, '/api/v1/datacenterTable/save', 0, 0, '2025-07-10 15:25:53', 1, '2025-07-10 15:25:53', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (300818488214134784, 300817858217091072, 1, '删除', '', '', '', 1, '/api/v1/datacenterTable/remove', 0, 0, '2025-07-10 15:26:17', 1, '2025-07-10 15:26:17', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (363168956276838400, 258052082618335232, 0, 'menus.system.sysFeedback', '/sys/sysFeedback', '/system/sysFeedback/sysFeedbackList', 'svg:user-feedback', 1, '', 900, 0, '2025-12-29 16:44:47', 1, '2025-12-29 16:45:39', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (363435797225017344, 363168956276838400, 1, '删除', '', '', '', 0, '/api/v1/sysUserFeedback/remove', 3, 0, '2025-12-30 10:25:06', 1, '2025-12-30 10:26:15', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (363435949415337984, 363168956276838400, 1, '保存', '', '', '', 0, '/api/v1/sysUserFeedback/save', 2, 0, '2025-12-30 10:25:43', 1, '2025-12-30 10:26:10', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (363533849449447424, 363168956276838400, 1, '查询', '', '', '', 0, '/api/v1/sysUserFeedback/query', 1, 0, '2025-12-30 16:54:44', 1, '2025-12-30 16:54:44', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (365312682481553408, 0, 0, 'menus.ai.mcp', '/ai/mcp', '/ai/mcp/Mcp', 'svg:mcp', 1, '', 62, 0, '2026-01-04 14:43:11', 1, '2026-01-06 10:03:08', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (365314158356467712, 365312682481553408, 1, '查询', '', '', '', 0, '/api/v1/mcp/query', 1, 0, '2026-01-04 14:49:03', 1, '2026-01-04 14:49:03', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (365314258952654848, 365312682481553408, 1, '保存', '', '', '', 0, '/api/v1/mcp/save', 2, 0, '2026-01-04 14:49:27', 1, '2026-01-04 14:49:27', 1, ''); +INSERT INTO `tb_sys_menu` (`id`, `parent_id`, `menu_type`, `menu_title`, `menu_url`, `component`, `menu_icon`, `is_show`, `permission_tag`, `sort_no`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`) VALUES (365314364238073856, 365312682481553408, 1, '删除', '', '', '', 0, '/api/v1/mcp/remove', 3, 0, '2026-01-04 14:49:52', 1, '2026-01-04 14:49:52', 1, ''); + +-- ---------------------------- +-- Records of tb_sys_role +-- ---------------------------- +INSERT INTO `tb_sys_role` (`id`, `tenant_id`, `role_name`, `role_key`, `status`, `created`, `created_by`, `modified`, `modified_by`, `remark`, `data_scope`, `menu_check_strictly`, `dept_check_strictly`) VALUES (1, 1000000, '超级管理员', 'super_admin', 1, '2025-03-14 14:52:37', 1, '2025-03-14 14:52:37', 1, '', 1, 0, 0); + +-- ---------------------------- +-- Records of tb_sys_role_menu +-- ---------------------------- +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (183724390000000005, 1, 183724390000000001); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (183724390000000006, 1, 183724390000000002); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (183724390000000007, 1, 183724390000000003); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (183724390000000008, 1, 183724390000000004); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (259111372649250817, 1, 258052774330368000); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (259111372649250818, 1, 258075705244676096); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (259111372649250819, 1, 258075850434703360); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (259111372649250822, 1, 259048038847483904); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (259111372649250825, 1, 258052082618335232); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (259168916826611712, 1, 259168916721754112); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (259169318829678592, 1, 259169318720626688); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (259169837941907456, 1, 259169837824466944); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (259169982280491008, 1, 259169982154661888); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (259170117223833600, 1, 259170117110587392); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (259170422447529984, 1, 259170422338478080); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (259170538378092544, 1, 259170538264846336); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (270761213603205120, 1, 270761213536096256); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (282254669390716928, 1, 282254669269082112); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243919488049152, 1, 298243919118950400); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243919966199808, 1, 298243919727124480); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243920444350464, 1, 298243920205275136); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243920926695424, 1, 298243920679231488); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243921404846080, 1, 298243921161576448); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243921908162560, 1, 298243921639727104); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243922398896128, 1, 298243922155626496); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243922877046784, 1, 298243922637971456); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243923367780352, 1, 298243923116122112); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243923866902528, 1, 298243923627827200); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243924336664576, 1, 298243924105977856); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243924810620928, 1, 298243924571545600); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243926689669120, 1, 298243926450593792); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243927155236864, 1, 298243926920355840); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243927620804608, 1, 298243927385923584); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243929525018624, 1, 298243929294331904); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243929990586368, 1, 298243929755705344); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243930460348416, 1, 298243930225467392); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243932368756736, 1, 298243932104515584); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243932846907392, 1, 298243932607832064); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243933312475136, 1, 298243933077594112); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243933786431488, 1, 298243933547356160); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243934260387840, 1, 298243934025506816); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243934730149888, 1, 298243934495268864); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243935199911936, 1, 298243934960836608); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243935669673984, 1, 298243935430598656); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243936139436032, 1, 298243935904555008); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243936621780992, 1, 298243936374317056); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243937083154432, 1, 298243936848273408); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243937552916480, 1, 298243937313841152); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243938010095616, 1, 298243937783603200); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243938475663360, 1, 298243938240782336); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243938949619712, 1, 298243938706350080); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243939415187456, 1, 298243939180306432); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243939884949504, 1, 298243939650068480); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243940358905856, 1, 298243940115636224); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243940845445120, 1, 298243940614758400); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243941315207168, 1, 298243941080326144); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (298243941780774912, 1, 298243941545893888); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (300008008490852352, 1, 300008008381800448); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (300008360078385152, 1, 300008359986110464); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (300012644702535680, 1, 300012644643815424); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (300013092310269952, 1, 300013092268326912); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (300817858284199936, 1, 300817858217091072); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (300818298325409792, 1, 300818298270883840); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (300818387789914112, 1, 300818387710222336); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (300818488344158208, 1, 300818488214134784); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (363168956335558656, 1, 363168956276838400); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (363533849537527808, 1, 363533849449447424); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (365312682603188224, 1, 365312682481553408); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (365314158469713920, 1, 365314158356467712); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (365314259057512448, 1, 365314258952654848); +INSERT INTO `tb_sys_role_menu` (`id`, `role_id`, `menu_id`) VALUES (365314364334542848, 1, 365314364238073856); + + +-- ---------------------------- +-- Records of tb_model_provider +-- ---------------------------- +INSERT INTO `tb_model_provider` (`id`, `provider_name`, `provider_type`, `icon`, `api_key`, `endpoint`, `chat_path`, `embed_path`, `rerank_path`, `created`, `created_by`, `modified`, `modified_by`) VALUES (358906187162456064, 'Gitee', 'gitee', '', '', 'https://ai.gitee.com', '/v1/chat/completions', '/v1/embeddings', '/v1/rerank', '2025-12-17 22:26:03', 1, '2025-12-17 22:26:03', 1); +INSERT INTO `tb_model_provider` (`id`, `provider_name`, `provider_type`, `icon`, `api_key`, `endpoint`, `chat_path`, `embed_path`, `rerank_path`, `created`, `created_by`, `modified`, `modified_by`) VALUES (359109019710914560, '百度千帆', 'baidu', '', '', 'https://qianfan.baidubce.com', '/v2/chat/completions', '/v2/embeddings', '', '2025-12-18 11:52:02', 1, '2025-12-18 11:52:02', 1); +INSERT INTO `tb_model_provider` (`id`, `provider_name`, `provider_type`, `icon`, `api_key`, `endpoint`, `chat_path`, `embed_path`, `rerank_path`, `created`, `created_by`, `modified`, `modified_by`) VALUES (359110565693620224, '火山引擎', 'volcengine', '', '', 'https://ark.cn-beijing.volces.com', '/api/v3/chat/completions', '/api/v3/embeddings', '', '2025-12-18 11:58:11', 1, '2025-12-18 11:58:11', 1); +INSERT INTO `tb_model_provider` (`id`, `provider_name`, `provider_type`, `icon`, `api_key`, `endpoint`, `chat_path`, `embed_path`, `rerank_path`, `created`, `created_by`, `modified`, `modified_by`) VALUES (359110640402563072, '星火大模型', 'spark', '', '', 'https://spark-api-open.xf-yun.com', '/v1/chat/completions', NULL, '', '2025-12-18 11:58:29', 1, '2025-12-18 11:58:29', 1); +INSERT INTO `tb_model_provider` (`id`, `provider_name`, `provider_type`, `icon`, `api_key`, `endpoint`, `chat_path`, `embed_path`, `rerank_path`, `created`, `created_by`, `modified`, `modified_by`) VALUES (359110667376132096, '硅基流动', 'siliconlow', '', '', 'https://api.siliconflow.cn', '/v1/chat/completions', '/v1/embeddings', '/v1/rerank', '2025-12-18 11:58:35', 1, '2025-12-18 11:58:35', 1); +INSERT INTO `tb_model_provider` (`id`, `provider_name`, `provider_type`, `icon`, `api_key`, `endpoint`, `chat_path`, `embed_path`, `rerank_path`, `created`, `created_by`, `modified`, `modified_by`) VALUES (359110690079899648, 'Ollama', 'ollama', '', '', NULL, NULL, NULL, '', '2025-12-18 11:58:40', 1, '2025-12-18 11:58:40', 1); +INSERT INTO `tb_model_provider` (`id`, `provider_name`, `provider_type`, `icon`, `api_key`, `endpoint`, `chat_path`, `embed_path`, `rerank_path`, `created`, `created_by`, `modified`, `modified_by`) VALUES (359111120310632448, 'DeepSeek', 'deepseek', '', '', 'https://api.deepseek.com', '/compatible-mode/v1/chat/completions', '/compatible-mode/v1/embeddings', '', '2025-12-18 12:00:23', 1, '2025-12-18 12:00:23', 1); +INSERT INTO `tb_model_provider` (`id`, `provider_name`, `provider_type`, `icon`, `api_key`, `endpoint`, `chat_path`, `embed_path`, `rerank_path`, `created`, `created_by`, `modified`, `modified_by`) VALUES (359111228158771200, 'Open AI', 'openai', '', '', 'https://api.openai.com', '/v1/chat/completions', '/v1/embeddings', '', '2025-12-18 12:00:49', 1, '2025-12-18 12:00:49', 1); +INSERT INTO `tb_model_provider` (`id`, `provider_name`, `provider_type`, `icon`, `api_key`, `endpoint`, `chat_path`, `embed_path`, `rerank_path`, `created`, `created_by`, `modified`, `modified_by`) VALUES (359111448204541952, '阿里百炼', 'aliyun', '', '', 'https://dashscope.aliyuncs.com', '/compatible-mode/v1/chat/completions', '/compatible-mode/v1/embeddings', '', '2025-12-18 12:01:41', 1, '2025-12-18 12:01:41', 1); + +-- ---------------------------- +-- Records of tb_model +-- ---------------------------- +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359159030960295936, 1, 1000000, 358906187162456064, 'DeepSeek-V3', NULL, NULL, NULL, NULL, 'DeepSeek-V3', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'DeepSeek', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359188398742933504, 1, 1000000, 358906187162456064, 'kimi-k2-instruct', NULL, NULL, NULL, NULL, 'kimi-k2-instruct', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', '文心ERNIE', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359188487121113088, 1, 1000000, 358906187162456064, 'ERNIE-X1-Turbo', NULL, NULL, NULL, NULL, 'ERNIE-X1-Turbo', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', '文心ERNIE', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359188591383121920, 1, 1000000, 358906187162456064, 'ERNIE-4.5-Turbo', NULL, NULL, NULL, NULL, 'ERNIE-4.5-Turbo', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', '文心ERNIE', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359188717564563456, 1, 1000000, 358906187162456064, 'DeepSeek-R1', NULL, NULL, NULL, NULL, 'DeepSeek-R1', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'DeepSeek', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359188823290384384, 1, 1000000, 358906187162456064, 'Qwen3-235B-A22B', NULL, NULL, NULL, NULL, 'Qwen3-235B-A22B', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Qwen', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359188894316728320, 1, 1000000, 358906187162456064, 'Qwen3-30B-A3B', NULL, NULL, NULL, NULL, 'Qwen3-30B-A3B', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Qwen', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359189040752463872, 1, 1000000, 358906187162456064, 'Qwen3-32B', NULL, NULL, NULL, NULL, 'Qwen3-32B', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Qwen', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359189205492142080, 1, 1000000, 358906187162456064, 'ERNIE-4.5-Turbo-VL', NULL, NULL, NULL, NULL, 'ERNIE-4.5-Turbo-VL', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', '文心ERNIE', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359189277827108864, 1, 1000000, 358906187162456064, 'Qwen2.5-VL-32B-Instruct', NULL, NULL, NULL, NULL, 'Qwen2.5-VL-32B-Instruct', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Qwen', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359189415073124352, 1, 1000000, 358906187162456064, 'InternVL3-78B', NULL, NULL, NULL, NULL, 'InternVL3-78B', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'InternVL3', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359189479254364160, 1, 1000000, 358906187162456064, 'InternVL3-38B', NULL, NULL, NULL, NULL, 'InternVL3-38B', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'InternVL3', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359189562309971968, 1, 1000000, 358906187162456064, 'Qwen3-Embedding-8B', NULL, NULL, NULL, NULL, 'Qwen3-Embedding-8B', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Qwen', 'embeddingModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359189617381183488, 1, 1000000, 358906187162456064, 'Qwen3-Embedding-4B', NULL, NULL, NULL, NULL, 'Qwen3-Embedding-4B', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Qwen', 'embeddingModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359190580372410368, 1, 1000000, 359111120310632448, 'deepseek-chat', NULL, NULL, NULL, NULL, 'deepseek-chat', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'DeepSeek', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359250814495248384, 1, 1000000, 359111228158771200, 'o4-mini', NULL, NULL, NULL, NULL, 'o4-mini', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'O系列', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359250916064514048, 1, 1000000, 359111228158771200, 'o3', NULL, NULL, NULL, NULL, 'o3', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'O系列', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359250975883677696, 1, 1000000, 359111228158771200, 'o3-pro', NULL, NULL, NULL, NULL, 'o3-pro', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'O系列', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359251041788776448, 1, 1000000, 359111228158771200, 'o3-mini', NULL, NULL, NULL, NULL, 'o3-mini', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'O系列', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359251651388919808, 1, 1000000, 359111228158771200, 'GPT-4.1', NULL, NULL, NULL, NULL, 'GPT-4.1', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'GPT系列', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359251703859662848, 1, 1000000, 359111228158771200, 'GPT-4o', NULL, NULL, NULL, NULL, 'GPT-4o', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'GPT系列', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359251899029016576, 1, 1000000, 359111228158771200, 'text-embedding-3-small', NULL, NULL, NULL, NULL, 'text-embedding-3-small', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Embedding', 'embeddingModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359251948844765184, 1, 1000000, 359111228158771200, 'text-embedding-3-large', NULL, NULL, NULL, NULL, 'text-embedding-3-large', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Embedding', 'embeddingModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359252007019761664, 1, 1000000, 359111228158771200, 'text-embedding-ada-002', NULL, NULL, NULL, NULL, 'text-embedding-ada-002', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Embedding', 'embeddingModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359252333504385024, 1, 1000000, 359110667376132096, 'DeepSeek-R1', NULL, NULL, NULL, NULL, 'deepseek-ai/DeepSeek-R1', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'DeepSeek', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359252410297896960, 1, 1000000, 359110667376132096, 'DeepSeek-V3', NULL, NULL, NULL, NULL, 'deepseek-ai/DeepSeek-V3', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'DeepSeek', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359252901950017536, 1, 1000000, 359110667376132096, 'QwenLong-L1-32B', NULL, NULL, NULL, NULL, 'Tongyi-Zhiwen/QwenLong-L1-32B', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Qwen', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359253108129419264, 1, 1000000, 359110667376132096, 'Qwen3-30B-A3B', NULL, NULL, NULL, NULL, 'Qwen/Qwen3-30B-A3B', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Qwen', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359253178463703040, 1, 1000000, 359110667376132096, 'Qwen3-32B', NULL, NULL, NULL, NULL, 'Qwen/Qwen3-32B', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Qwen', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359253290258681856, 1, 1000000, 359110667376132096, 'Qwen2.5-VL-32B-Instruct', NULL, NULL, NULL, NULL, 'Qwen/Qwen2.5-VL-32B-Instruct', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Qwen', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359253356990058496, 1, 1000000, 359110667376132096, 'Qwen2.5-VL-72B-Instruct', NULL, NULL, NULL, NULL, 'Qwen/Qwen2.5-VL-72B-Instruct', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Qwen', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359253448664961024, 1, 1000000, 359110667376132096, 'deepseek-vl2', NULL, NULL, NULL, NULL, 'deepseek-ai/deepseek-vl2', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'DeepSeek', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359253538523729920, 1, 1000000, 359110667376132096, 'Qwen3-Embedding-8B', NULL, NULL, NULL, NULL, 'Qwen/Qwen3-Embedding-8B', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Qwen', 'embeddingModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359253610657370112, 1, 1000000, 359110667376132096, 'Qwen3-Embedding-4B', NULL, NULL, NULL, NULL, 'Qwen/Qwen3-Embedding-4B', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Qwen', 'embeddingModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359253918280208384, 1, 1000000, 359110667376132096, 'bge-m3', NULL, NULL, NULL, NULL, 'BAAI/bge-m3', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'BAAI', 'embeddingModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359254052095283200, 1, 1000000, 359110667376132096, 'bce-embedding-base_v1', NULL, NULL, NULL, NULL, 'netease-youdao/bce-embedding-base_v1', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Netease-youdao', 'embeddingModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359254268492009472, 1, 1000000, 359110565693620224, 'doubao-seed-1.6', NULL, NULL, NULL, NULL, 'doubao-seed-1-6-250615', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Doubao', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359254341498064896, 1, 1000000, 359110565693620224, 'doubao-seed-1.6-flash', NULL, NULL, NULL, NULL, 'doubao-seed-1-6-flash-250615', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Doubao', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359254465049677824, 1, 1000000, 359110565693620224, 'doubao-seed-1.6-thinking', NULL, NULL, NULL, NULL, 'doubao-seed-1-6-thinking-250715', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Doubao', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359254550235992064, 1, 1000000, 359110565693620224, 'deepseek-r1', NULL, NULL, NULL, NULL, 'deepseek-r1-250528', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'DeepSeek', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359255963729022976, 1, 1000000, 359110640402563072, 'Spark Max', NULL, NULL, NULL, NULL, 'generalv3.5', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Spark', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359256036009463808, 1, 1000000, 359110640402563072, 'Spark4.0 Ultra', NULL, NULL, NULL, NULL, '4.0Ultra', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Spark', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359256272148779008, 1, 1000000, 359110640402563072, 'Max-32K', NULL, NULL, NULL, NULL, 'max-32k', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Spark', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359256472095444992, 1, 1000000, 359110640402563072, 'Spark Pro', NULL, NULL, NULL, NULL, 'generalv3', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Spark', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359256641138479104, 1, 1000000, 359110640402563072, 'Spark Pro-128k', NULL, NULL, NULL, NULL, 'pro-128k', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Spark', 'chatModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359498072033816576, 1, 1000000, 359111448204541952, 'text-embedding-v3', NULL, NULL, NULL, NULL, 'text-embedding-v3', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Embedding', 'embeddingModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); +INSERT INTO `tb_model` (`id`, `dept_id`, `tenant_id`, `provider_id`, `title`, `icon`, `description`, `endpoint`, `request_path`, `model_name`, `api_key`, `extra_config`, `options`, `group_name`, `model_type`, `with_used`, `support_thinking`, `support_tool`, `support_image`, `support_image_b64_only`, `support_video`, `support_audio`, `support_free`) VALUES (359536003377258496, 1, 1000000, 358906187162456064, 'Qwen3-Reranker-8B', NULL, NULL, NULL, NULL, 'Qwen3-Reranker-8B', NULL, NULL, '{\"rerankPath\":\"\",\"chatPath\":\"\",\"llmEndpoint\":\"\",\"embedPath\":\"\"}', 'Qwen', 'rerankModel', 1, 0, 0, NULL, NULL, NULL, NULL, 0); + +-- ---------------------------- +-- Records of tb_sys_option +-- ---------------------------- + +INSERT INTO `tb_mcp` (`id`, `title`, `description`, `config_json`, `dept_id`, `tenant_id`, `created`, `created_by`, `modified`, `modified_by`, `status`) VALUES (365597368948781056, '测试everything', 'MCP测试功能', '{ + \"mcpServers\": { + \"everything\": { + \"command\": \"npx\", + \"args\": [ + \"-y\", + \"@modelcontextprotocol/server-everything\" + ] + } + } +}', 1, 1000000, '2026-01-06 09:57:07', 1, '2026-01-06 09:57:07', 1, 0); +INSERT INTO `tb_mcp` (`id`, `title`, `description`, `config_json`, `dept_id`, `tenant_id`, `created`, `created_by`, `modified`, `modified_by`, `status`) VALUES (365956218142994432, '12306购票综合查询', '12306购票综合查询', '{ + \"mcpServers\": { + \"12306-mcp\": { + \"command\": \"npx\", + \"args\": [ + \"-y\", + \"12306-mcp\" + ] + } + } +}', 1, 1000000, '2026-01-06 09:56:44', 1, '2026-01-06 09:56:44', 1, 0); diff --git a/sql/initdb/README.md b/sql/initdb/README.md new file mode 100644 index 0000000..3a0a925 --- /dev/null +++ b/sql/initdb/README.md @@ -0,0 +1,11 @@ +# EasyFlow Init SQL + +This directory is for **fresh database initialization only**. + +Included scripts: + +1. `00-quartz.sql` +2. `01-easyflow-v2.ddl.sql` +3. `02-easyflow-v2.data.sql` + +Do not put incremental upgrade scripts here (such as `03/04/05`), otherwise first-time init may fail due to duplicated columns/indexes.