From 3407536e8545321ac7a903cf2a4dc29a62028dbe Mon Sep 17 00:00:00 2001 From: bunny <1319900154@qq.com> Date: Tue, 15 Oct 2024 16:53:55 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E4=BB=BB=E5=8A=A1=E8=B0=83=E5=BA=A6?= =?UTF-8?q?=E5=99=A8=E5=BE=85=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../generator/generator/WebGeneratorCode.java | 18 +- .../dao/dto/schedulers/SchedulersAddDto.java | 13 +- .../dao/dto/schedulers/SchedulersDto.java | 3 + .../dto/schedulers/SchedulersUpdateDto.java | 17 +- .../{ViewSchedulers.java => Schedulers.java} | 2 +- data/auth_admin-仅结构.sql | 497 ------------------ .../services/controller/DeptController.java | 2 +- .../controller/SchedulersController.java | 33 +- .../services/mapper/SchedulersMapper.java | 17 +- .../services/service/SchedulersService.java | 27 +- .../service/impl/SchedulersServiceImpl.java | 95 ++-- .../resources/mapper/SchedulersMapper.xml | 18 +- 12 files changed, 105 insertions(+), 637 deletions(-) rename dao/src/main/java/cn/bunny/dao/entity/schedulers/{ViewSchedulers.java => Schedulers.java} (95%) delete mode 100644 data/auth_admin-仅结构.sql diff --git a/common/common-generator/src/main/java/cn/bunny/common/generator/generator/WebGeneratorCode.java b/common/common-generator/src/main/java/cn/bunny/common/generator/generator/WebGeneratorCode.java index c0c9bbc..7edb594 100644 --- a/common/common-generator/src/main/java/cn/bunny/common/generator/generator/WebGeneratorCode.java +++ b/common/common-generator/src/main/java/cn/bunny/common/generator/generator/WebGeneratorCode.java @@ -6,7 +6,7 @@ import cn.bunny.common.generator.utils.GeneratorCodeUtils; import cn.bunny.dao.dto.schedulers.SchedulersAddDto; import cn.bunny.dao.dto.schedulers.SchedulersDto; import cn.bunny.dao.dto.schedulers.SchedulersUpdateDto; -import cn.bunny.dao.entity.schedulers.ViewSchedulers; +import cn.bunny.dao.entity.schedulers.Schedulers; import cn.bunny.dao.vo.schedulers.SchedulersVo; import com.baomidou.mybatisplus.annotation.TableName; import com.google.common.base.CaseFormat; @@ -36,7 +36,7 @@ import java.util.stream.Stream; @Service public class WebGeneratorCode { // 公共路径 - public static String commonPath = "D:\\Project\\web\\PC\\auth\\auth-web\\src"; + public static String commonPath = "D:\\MyFolder\\auth-admin\\auth-web\\src"; // 生成API请求路径 public static String apiPath = commonPath + "\\api\\v1\\"; // 生成vue路径 @@ -44,14 +44,14 @@ public class WebGeneratorCode { // 生成仓库路径 public static String storePath = commonPath + "\\store\\monitor\\"; // 后端controller - public static String controllerPath = "D:\\Project\\web\\PC\\auth\\auth-server-java\\service\\src\\main\\java\\cn\\bunny\\services\\controller\\"; - public static String servicePath = "D:\\Project\\web\\PC\\auth\\auth-server-java\\service\\src\\main\\java\\cn\\bunny\\services\\service\\"; - public static String serviceImplPath = "D:\\Project\\web\\PC\\auth\\auth-server-java\\service\\src\\main\\java\\cn\\bunny\\services\\service\\impl\\"; - public static String mapperPath = "D:\\Project\\web\\PC\\auth\\auth-server-java\\service\\src\\main\\java\\cn\\bunny\\services\\mapper\\"; - public static String resourceMapperPath = "D:\\Project\\web\\PC\\auth\\auth-server-java\\service\\src\\main\\resources\\mapper\\"; + public static String controllerPath = "D:\\MyFolder\\auth-admin\\auth-server-java\\service\\src\\main\\java\\cn\\bunny\\services\\controller\\"; + public static String servicePath = "D:\\MyFolder\\auth-admin\\auth-server-java\\service\\src\\main\\java\\cn\\bunny\\services\\service\\"; + public static String serviceImplPath = "D:\\MyFolder\\auth-admin\\auth-server-java\\service\\src\\main\\java\\cn\\bunny\\services\\service\\impl\\"; + public static String mapperPath = "D:\\MyFolder\\auth-admin\\auth-server-java\\service\\src\\main\\java\\cn\\bunny\\services\\mapper\\"; + public static String resourceMapperPath = "D:\\MyFolder\\auth-admin\\auth-server-java\\service\\src\\main\\resources\\mapper\\"; public static void main(String[] args) throws Exception { - Class originalClass = ViewSchedulers.class; + Class originalClass = Schedulers.class; Class dtoClass = SchedulersDto.class; Class addDtoClass = SchedulersAddDto.class; Class updateDtoClass = SchedulersUpdateDto.class; @@ -194,7 +194,7 @@ public class WebGeneratorCode { */ public static void writeFiles(String lowercaseName, String lowerHyphen, String originalName, VelocityContext context) throws IOException { context.put("apiPath", GeneratorCodeUtils.ReplacePathHandle(apiPath) + lowercaseName); - context.put("storePath", GeneratorCodeUtils.ReplacePathHandle(storePath) + lowercaseName + ".ts"); + context.put("storePath", GeneratorCodeUtils.ReplacePathHandle(storePath) + lowercaseName); context.put("typesPath", GeneratorCodeUtils.ReplacePathHandle(vuePath) + lowercaseName + "/utils/types"); context.put("hookPath", GeneratorCodeUtils.ReplacePathHandle(vuePath) + lowercaseName + "/utils/hooks"); context.put("columnsPath", GeneratorCodeUtils.ReplacePathHandle(vuePath) + lowercaseName + "/utils/columns"); diff --git a/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersAddDto.java b/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersAddDto.java index 4d99e5f..964d991 100644 --- a/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersAddDto.java +++ b/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersAddDto.java @@ -40,15 +40,10 @@ public class SchedulersAddDto { @NotNull(message = "corn表达式不能为空") private String cronExpression; - @Schema(name = "triggerName", title = "触发器名称") - @NotBlank(message = "触发器名称不能为空") - @NotNull(message = "触发器名称不能为空") - private String triggerName; - - @Schema(name = "triggerState", title = "triggerState触发器状态") - @NotBlank(message = "triggerState触发器状态不能为空") - @NotNull(message = "triggerState触发器状态不能为空") - private String triggerState; + @Schema(name = "jobMethodName", title = "执行方法") + @NotBlank(message = "执行方法不能为空") + @NotNull(message = "执行方法不能为空") + private String jobMethodName; } diff --git a/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersDto.java b/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersDto.java index c98e9bb..9cf1439 100644 --- a/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersDto.java +++ b/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersDto.java @@ -33,5 +33,8 @@ public class SchedulersDto { @Schema(name = "triggerState", title = "triggerState触发器状态") private String triggerState; + @Schema(name = "jobMethodName", title = "执行方法") + private String jobMethodName; + } diff --git a/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersUpdateDto.java b/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersUpdateDto.java index 28bf90e..e369652 100644 --- a/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersUpdateDto.java +++ b/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersUpdateDto.java @@ -15,10 +15,6 @@ import lombok.NoArgsConstructor; @Schema(name = "SchedulersUpdateDto对象", title = "Schedulers更新表单", description = "Schedulers更新表单") public class SchedulersUpdateDto { - @Schema(name = "id", title = "主键") - @NotNull(message = "id不能为空") - private Long id; - @Schema(name = "jobName", title = "任务名称") @NotBlank(message = "任务名称不能为空") @NotNull(message = "任务名称不能为空") @@ -44,14 +40,9 @@ public class SchedulersUpdateDto { @NotNull(message = "corn表达式不能为空") private String cronExpression; - @Schema(name = "triggerName", title = "触发器名称") - @NotBlank(message = "触发器名称不能为空") - @NotNull(message = "触发器名称不能为空") - private String triggerName; - - @Schema(name = "triggerState", title = "triggerState触发器状态") - @NotBlank(message = "triggerState触发器状态不能为空") - @NotNull(message = "triggerState触发器状态不能为空") - private String triggerState; + @Schema(name = "jobMethodName", title = "执行方法") + @NotBlank(message = "执行方法不能为空") + @NotNull(message = "执行方法不能为空") + private String jobMethodName; } \ No newline at end of file diff --git a/dao/src/main/java/cn/bunny/dao/entity/schedulers/ViewSchedulers.java b/dao/src/main/java/cn/bunny/dao/entity/schedulers/Schedulers.java similarity index 95% rename from dao/src/main/java/cn/bunny/dao/entity/schedulers/ViewSchedulers.java rename to dao/src/main/java/cn/bunny/dao/entity/schedulers/Schedulers.java index 6fe27eb..ae02755 100644 --- a/dao/src/main/java/cn/bunny/dao/entity/schedulers/ViewSchedulers.java +++ b/dao/src/main/java/cn/bunny/dao/entity/schedulers/Schedulers.java @@ -21,7 +21,7 @@ import java.io.Serializable; @Accessors(chain = true) @TableName("qrtz_view_schedulers") @Schema(name = "Schedulers对象", title = "Schedulers视图", description = "Schedulers视图") -public class ViewSchedulers implements Serializable { +public class Schedulers implements Serializable { @Schema(name = "jobName", title = "任务名称") private String jobName; diff --git a/data/auth_admin-仅结构.sql b/data/auth_admin-仅结构.sql deleted file mode 100644 index fe684f6..0000000 --- a/data/auth_admin-仅结构.sql +++ /dev/null @@ -1,497 +0,0 @@ -/* - Navicat Premium Dump SQL - - Source Server : MySQL(自己使用) - Source Server Type : MySQL - Source Server Version : 80033 (8.0.33) - Source Host : 192.168.3.98:3304 - Source Schema : auth_admin - - Target Server Type : MySQL - Target Server Version : 80033 (8.0.33) - File Encoding : 65001 - - Date: 15/10/2024 15:22:47 -*/ - -SET NAMES utf8mb4; -SET FOREIGN_KEY_CHECKS = 0; - --- ---------------------------- --- Table structure for QRTZ_BLOB_TRIGGERS --- ---------------------------- -DROP TABLE IF EXISTS `QRTZ_BLOB_TRIGGERS`; -CREATE TABLE `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` ASC, `TRIGGER_NAME` ASC, `TRIGGER_GROUP` ASC) USING BTREE, - CONSTRAINT `QRTZ_BLOB_TRIGGERS_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `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 QRTZ_CALENDARS --- ---------------------------- -DROP TABLE IF EXISTS `QRTZ_CALENDARS`; -CREATE TABLE `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 QRTZ_CRON_TRIGGERS --- ---------------------------- -DROP TABLE IF EXISTS `QRTZ_CRON_TRIGGERS`; -CREATE TABLE `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 `QRTZ_CRON_TRIGGERS_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `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 QRTZ_FIRED_TRIGGERS --- ---------------------------- -DROP TABLE IF EXISTS `QRTZ_FIRED_TRIGGERS`; -CREATE TABLE `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` ASC, `INSTANCE_NAME` ASC) USING BTREE, - INDEX `IDX_QRTZ_FT_INST_JOB_REQ_RCVRY`(`SCHED_NAME` ASC, `INSTANCE_NAME` ASC, `REQUESTS_RECOVERY` ASC) USING BTREE, - INDEX `IDX_QRTZ_FT_J_G`(`SCHED_NAME` ASC, `JOB_NAME` ASC, `JOB_GROUP` ASC) USING BTREE, - INDEX `IDX_QRTZ_FT_JG`(`SCHED_NAME` ASC, `JOB_GROUP` ASC) USING BTREE, - INDEX `IDX_QRTZ_FT_T_G`(`SCHED_NAME` ASC, `TRIGGER_NAME` ASC, `TRIGGER_GROUP` ASC) USING BTREE, - INDEX `IDX_QRTZ_FT_TG`(`SCHED_NAME` ASC, `TRIGGER_GROUP` ASC) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for QRTZ_JOB_DETAILS --- ---------------------------- -DROP TABLE IF EXISTS `QRTZ_JOB_DETAILS`; -CREATE TABLE `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` ASC, `REQUESTS_RECOVERY` ASC) USING BTREE, - INDEX `IDX_QRTZ_J_GRP`(`SCHED_NAME` ASC, `JOB_GROUP` ASC) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for QRTZ_LOCKS --- ---------------------------- -DROP TABLE IF EXISTS `QRTZ_LOCKS`; -CREATE TABLE `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 QRTZ_PAUSED_TRIGGER_GRPS --- ---------------------------- -DROP TABLE IF EXISTS `QRTZ_PAUSED_TRIGGER_GRPS`; -CREATE TABLE `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 QRTZ_SCHEDULER_STATE --- ---------------------------- -DROP TABLE IF EXISTS `QRTZ_SCHEDULER_STATE`; -CREATE TABLE `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 QRTZ_SIMPLE_TRIGGERS --- ---------------------------- -DROP TABLE IF EXISTS `QRTZ_SIMPLE_TRIGGERS`; -CREATE TABLE `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 `QRTZ_SIMPLE_TRIGGERS_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `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 QRTZ_SIMPROP_TRIGGERS --- ---------------------------- -DROP TABLE IF EXISTS `QRTZ_SIMPROP_TRIGGERS`; -CREATE TABLE `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 `QRTZ_SIMPROP_TRIGGERS_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `TRIGGER_NAME`, `TRIGGER_GROUP`) REFERENCES `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 QRTZ_TRIGGERS --- ---------------------------- -DROP TABLE IF EXISTS `QRTZ_TRIGGERS`; -CREATE TABLE `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` ASC, `JOB_NAME` ASC, `JOB_GROUP` ASC) USING BTREE, - INDEX `IDX_QRTZ_T_JG`(`SCHED_NAME` ASC, `JOB_GROUP` ASC) USING BTREE, - INDEX `IDX_QRTZ_T_C`(`SCHED_NAME` ASC, `CALENDAR_NAME` ASC) USING BTREE, - INDEX `IDX_QRTZ_T_G`(`SCHED_NAME` ASC, `TRIGGER_GROUP` ASC) USING BTREE, - INDEX `IDX_QRTZ_T_STATE`(`SCHED_NAME` ASC, `TRIGGER_STATE` ASC) USING BTREE, - INDEX `IDX_QRTZ_T_N_STATE`(`SCHED_NAME` ASC, `TRIGGER_NAME` ASC, `TRIGGER_GROUP` ASC, `TRIGGER_STATE` ASC) USING BTREE, - INDEX `IDX_QRTZ_T_N_G_STATE`(`SCHED_NAME` ASC, `TRIGGER_GROUP` ASC, `TRIGGER_STATE` ASC) USING BTREE, - INDEX `IDX_QRTZ_T_NEXT_FIRE_TIME`(`SCHED_NAME` ASC, `NEXT_FIRE_TIME` ASC) USING BTREE, - INDEX `IDX_QRTZ_T_NFT_ST`(`SCHED_NAME` ASC, `TRIGGER_STATE` ASC, `NEXT_FIRE_TIME` ASC) USING BTREE, - INDEX `IDX_QRTZ_T_NFT_MISFIRE`(`SCHED_NAME` ASC, `MISFIRE_INSTR` ASC, `NEXT_FIRE_TIME` ASC) USING BTREE, - INDEX `IDX_QRTZ_T_NFT_ST_MISFIRE`(`SCHED_NAME` ASC, `MISFIRE_INSTR` ASC, `NEXT_FIRE_TIME` ASC, `TRIGGER_STATE` ASC) USING BTREE, - INDEX `IDX_QRTZ_T_NFT_ST_MISFIRE_GRP`(`SCHED_NAME` ASC, `MISFIRE_INSTR` ASC, `NEXT_FIRE_TIME` ASC, `TRIGGER_GROUP` ASC, `TRIGGER_STATE` ASC) USING BTREE, - CONSTRAINT `QRTZ_TRIGGERS_ibfk_1` FOREIGN KEY (`SCHED_NAME`, `JOB_NAME`, `JOB_GROUP`) REFERENCES `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 sys_dept --- ---------------------------- -DROP TABLE IF EXISTS `sys_dept`; -CREATE TABLE `sys_dept` ( - `id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '唯一id', - `parent_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '父级id', - `manager` text CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '管理者id', - `dept_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '部门名称', - `summary` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '部门简介', - `create_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `update_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间', - `create_user` bigint NOT NULL COMMENT '创建用户', - `update_user` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '操作用户', - `is_deleted` tinyint(1) UNSIGNED ZEROFILL NOT NULL DEFAULT 0 COMMENT '是否删除', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '部门表' ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for sys_email_template --- ---------------------------- -DROP TABLE IF EXISTS `sys_email_template`; -CREATE TABLE `sys_email_template` ( - `id` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '唯一id', - `template_name` varchar(100) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '模板名称', - `email_user` bigint NULL DEFAULT NULL COMMENT '关联邮件用户配置', - `subject` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '主题', - `body` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '邮件内容', - `type` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮件类型', - `is_default` tinyint(1) NULL DEFAULT 0 COMMENT '是否默认', - `create_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `update_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间', - `create_user` bigint NOT NULL COMMENT '创建用户', - `update_user` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '操作用户', - `is_deleted` tinyint(1) UNSIGNED ZEROFILL NOT NULL DEFAULT 0 COMMENT '是否删除', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '邮件模板表' ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for sys_email_users --- ---------------------------- -DROP TABLE IF EXISTS `sys_email_users`; -CREATE TABLE `sys_email_users` ( - `id` bigint NOT NULL, - `email` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '邮箱', - `password` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '密码', - `host` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT 'Host地址', - `port` int NOT NULL COMMENT '端口号', - `smtp_agreement` varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '邮箱协议', - `is_default` tinyint NULL DEFAULT NULL COMMENT '是否为默认邮件', - `create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', - `create_user` bigint NOT NULL COMMENT '创建用户', - `update_user` bigint NULL DEFAULT NULL COMMENT '更新用户', - `is_deleted` tinyint(1) NULL DEFAULT 0 COMMENT '是否被删除', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '邮箱发送表' ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for sys_files --- ---------------------------- -DROP TABLE IF EXISTS `sys_files`; -CREATE TABLE `sys_files` ( - `id` bigint NOT NULL COMMENT '文件的唯一标识符,自动递增', - `filename` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '文件的名称', - `filepath` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '文件在服务器上的存储路径', - `file_size` int NOT NULL COMMENT '文件的大小,以字节为单位', - `file_type` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '文件的MIME类型', - `download_count` int NULL DEFAULT 0 COMMENT '下载数量', - `create_user` bigint NOT NULL COMMENT '创建用户', - `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录文件最后修改的时间戳', - `update_user` int NULL DEFAULT NULL COMMENT '操作用户', - `create_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `is_deleted` tinyint(1) UNSIGNED ZEROFILL NOT NULL DEFAULT 0 COMMENT '文件是否被删除', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '系统文件表' ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for sys_i18n --- ---------------------------- -DROP TABLE IF EXISTS `sys_i18n`; -CREATE TABLE `sys_i18n` ( - `id` bigint NOT NULL COMMENT '主键id', - `key_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '多语言key', - `translation` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '多语言翻译名称', - `type_name` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '多语言类型', - `create_user` bigint NULL DEFAULT NULL COMMENT '创建用户', - `update_user` int NULL DEFAULT NULL COMMENT '操作用户', - `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录文件最后修改的时间戳', - `create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `is_deleted` tinyint(1) UNSIGNED ZEROFILL NOT NULL DEFAULT 0 COMMENT '文件是否被删除', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '多语言表' ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for sys_i18n_type --- ---------------------------- -DROP TABLE IF EXISTS `sys_i18n_type`; -CREATE TABLE `sys_i18n_type` ( - `id` bigint NOT NULL COMMENT '主键id', - `type_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '多语言类型(比如zh,en)', - `summary` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '名称解释(比如中文,英文)', - `is_default` tinyint NULL DEFAULT NULL COMMENT '是否为默认语言', - `create_user` bigint NULL DEFAULT NULL COMMENT '创建用户', - `update_user` int NULL DEFAULT NULL COMMENT '操作用户', - `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录文件最后修改的时间戳', - `create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `is_deleted` tinyint(1) UNSIGNED ZEROFILL NOT NULL DEFAULT 0 COMMENT '文件是否被删除', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '多语言类型表' ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for sys_menu_icon --- ---------------------------- -DROP TABLE IF EXISTS `sys_menu_icon`; -CREATE TABLE `sys_menu_icon` ( - `id` bigint NOT NULL, - `icon_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'icon类名', - `icon_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'icon 名称', - `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', - `update_time` datetime NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', - `create_user` bigint NOT NULL COMMENT '创建用户', - `update_user` bigint NULL DEFAULT NULL COMMENT '操作用户', - `is_deleted` tinyint 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 sys_power --- ---------------------------- -DROP TABLE IF EXISTS `sys_power`; -CREATE TABLE `sys_power` ( - `id` bigint NOT NULL COMMENT '权限ID', - `parent_id` bigint NULL DEFAULT NULL COMMENT '父级id', - `power_code` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '权限编码', - `power_name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '权限名称', - `request_url` text CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL COMMENT '请求路径', - `create_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `update_time` datetime NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', - `create_user` bigint NULL DEFAULT NULL COMMENT '创建用户', - `update_user` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '更新用户', - `is_deleted` tinyint(1) UNSIGNED ZEROFILL NULL DEFAULT 0 COMMENT '是否删除,0-未删除,1-已删除', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '系统权限表' ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for sys_role --- ---------------------------- -DROP TABLE IF EXISTS `sys_role`; -CREATE TABLE `sys_role` ( - `id` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL, - `role_code` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '角色代码', - `description` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '描述', - `create_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `update_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间', - `create_user` bigint NOT NULL COMMENT '创建用户', - `update_user` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMMENT '操作用户', - `is_deleted` tinyint(1) UNSIGNED ZEROFILL NOT NULL DEFAULT 0 COMMENT '是否删除', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '系统角色表' ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for sys_role_power --- ---------------------------- -DROP TABLE IF EXISTS `sys_role_power`; -CREATE TABLE `sys_role_power` ( - `id` bigint NOT NULL COMMENT 'ID', - `role_id` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '角色id', - `power_id` varchar(50) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NOT NULL COMMENT '权限id', - `create_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `update_time` datetime NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', - `create_user` bigint NULL DEFAULT NULL COMMENT '创建用户', - `update_user` bigint NULL DEFAULT NULL COMMENT '更新用户', - `is_deleted` tinyint(1) UNSIGNED ZEROFILL NULL DEFAULT 0 COMMENT '是否删除,0-未删除,1-已删除', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb3 COLLATE = utf8mb3_general_ci COMMENT = '系统角色权限表' ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for sys_router --- ---------------------------- -DROP TABLE IF EXISTS `sys_router`; -CREATE TABLE `sys_router` ( - `id` bigint NOT NULL COMMENT '主键id', - `parent_id` bigint NULL DEFAULT NULL COMMENT '父级id', - `path` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '在项目中路径', - `component` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '组件位置', - `frame_src` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT 'frame路径', - `route_name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '路由名称', - `title` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '路由title', - `menu_type` int NULL DEFAULT NULL COMMENT '菜单类型', - `icon` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '图标', - `router_rank` int NULL DEFAULT NULL COMMENT '等级', - `visible` tinyint(1) NOT NULL DEFAULT 0 COMMENT '是否显示 返给前端为 showLink', - `create_user` bigint NULL DEFAULT NULL COMMENT '创建用户', - `update_user` int NULL DEFAULT NULL COMMENT '操作用户', - `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '记录文件最后修改的时间戳', - `create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `is_deleted` tinyint(1) UNSIGNED ZEROFILL NOT NULL DEFAULT 0 COMMENT '文件是否被删除', - PRIMARY KEY (`id`) USING BTREE, - INDEX `idx_id_parent_id`(`id` ASC, `parent_id` ASC) USING BTREE, - INDEX `idx_id`(`id` ASC) USING BTREE, - INDEX `idx_parent_id`(`parent_id` ASC) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '系统菜单表' ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for sys_router_role --- ---------------------------- -DROP TABLE IF EXISTS `sys_router_role`; -CREATE TABLE `sys_router_role` ( - `id` bigint NOT NULL COMMENT '主键ID', - `router_id` bigint NOT NULL COMMENT '路由ID', - `role_id` bigint NOT NULL COMMENT '角色ID', - `create_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '最后修改的时间戳', - `create_user` bigint NOT NULL COMMENT '创建用户', - `update_user` int NULL DEFAULT NULL COMMENT '操作用户', - `is_deleted` tinyint(1) UNSIGNED ZEROFILL NOT NULL DEFAULT 0 COMMENT '是否被删除', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci COMMENT = '系统路由角色关系表' ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for sys_user --- ---------------------------- -DROP TABLE IF EXISTS `sys_user`; -CREATE TABLE `sys_user` ( - `id` bigint NOT NULL COMMENT 'ID', - `username` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '用户名', - `nick_name` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '昵称', - `email` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '邮箱', - `phone` varchar(15) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '手机号', - `password` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '密码', - `avatar` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL, - `sex` tinyint NULL DEFAULT 1 COMMENT '0:女 1:男', - `summary` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '个人描述', - `last_login_ip` varchar(15) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '最后登录IP', - `last_login_ip_address` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '最后登录ip归属地', - `status` tinyint NULL DEFAULT 0 COMMENT '1:禁用 0:正常', - `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间', - `update_time` datetime NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', - `create_user` bigint NULL DEFAULT NULL COMMENT '创建用户', - `update_user` bigint NULL DEFAULT NULL COMMENT '操作用户', - `is_deleted` tinyint NULL DEFAULT 0 COMMENT '是否删除', - PRIMARY KEY (`id`) USING BTREE, - UNIQUE INDEX `key_email`(`email` ASC) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '用户信息' ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for sys_user_dept --- ---------------------------- -DROP TABLE IF EXISTS `sys_user_dept`; -CREATE TABLE `sys_user_dept` ( - `id` bigint NOT NULL COMMENT 'ID', - `user_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '用户id', - `dept_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '部门id', - `create_time` datetime NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `update_time` datetime NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', - `create_user` bigint NULL DEFAULT NULL COMMENT '创建用户', - `update_user` bigint NULL DEFAULT NULL COMMENT '更新用户', - `is_deleted` tinyint(1) UNSIGNED ZEROFILL NULL DEFAULT 0 COMMENT '是否删除,0-未删除,1-已删除', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '部门用户关系表' ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- Table structure for sys_user_role --- ---------------------------- -DROP TABLE IF EXISTS `sys_user_role`; -CREATE TABLE `sys_user_role` ( - `id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'ID', - `user_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '用户id', - `role_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '角色id', - `create_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `update_time` timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', - `create_user` bigint NOT NULL COMMENT '创建用户', - `update_user` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '更新用户', - `is_deleted` tinyint(1) UNSIGNED ZEROFILL NULL DEFAULT 0 COMMENT '是否删除,0-未删除,1-已删除', - PRIMARY KEY (`id`) USING BTREE -) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci COMMENT = '系统用户角色关系表' ROW_FORMAT = DYNAMIC; - --- ---------------------------- --- View structure for qrtz_view_schedulers --- ---------------------------- -DROP VIEW IF EXISTS `qrtz_view_schedulers`; -CREATE ALGORITHM = UNDEFINED SQL SECURITY DEFINER VIEW `qrtz_view_schedulers` AS select `job`.`JOB_NAME` AS `job_name`,`job`.`JOB_GROUP` AS `job_group`,`job`.`DESCRIPTION` AS `description`,`job`.`JOB_CLASS_NAME` AS `job_class_name`,`cron`.`CRON_EXPRESSION` AS `cron_expression`,`tri`.`TRIGGER_NAME` AS `trigger_name`,`tri`.`TRIGGER_STATE` AS `trigger_state` from ((`QRTZ_JOB_DETAILS` `job` join `QRTZ_TRIGGERS` `tri` on(((`job`.`JOB_NAME` = `tri`.`JOB_NAME`) and (`job`.`JOB_GROUP` = `tri`.`JOB_GROUP`)))) join `QRTZ_CRON_TRIGGERS` `cron` on(((`cron`.`TRIGGER_NAME` = `tri`.`TRIGGER_NAME`) and (`cron`.`TRIGGER_GROUP` = `tri`.`JOB_GROUP`)))) where (`tri`.`TRIGGER_TYPE` = 'CRON'); - -SET FOREIGN_KEY_CHECKS = 1; diff --git a/service/src/main/java/cn/bunny/services/controller/DeptController.java b/service/src/main/java/cn/bunny/services/controller/DeptController.java index ba3c8e5..ee051e3 100644 --- a/service/src/main/java/cn/bunny/services/controller/DeptController.java +++ b/service/src/main/java/cn/bunny/services/controller/DeptController.java @@ -30,7 +30,7 @@ import java.util.List; */ @Tag(name = "部门", description = "部门相关接口") @RestController -@RequestMapping("admin/dept") +@RequestMapping("/admin/dept") public class DeptController { @Autowired diff --git a/service/src/main/java/cn/bunny/services/controller/SchedulersController.java b/service/src/main/java/cn/bunny/services/controller/SchedulersController.java index f42794f..0331b47 100644 --- a/service/src/main/java/cn/bunny/services/controller/SchedulersController.java +++ b/service/src/main/java/cn/bunny/services/controller/SchedulersController.java @@ -3,8 +3,7 @@ package cn.bunny.services.controller; import cn.bunny.dao.dto.schedulers.SchedulersAddDto; import cn.bunny.dao.dto.schedulers.SchedulersDto; import cn.bunny.dao.dto.schedulers.SchedulersOperationDto; -import cn.bunny.dao.dto.schedulers.SchedulersUpdateDto; -import cn.bunny.dao.entity.schedulers.ViewSchedulers; +import cn.bunny.dao.entity.schedulers.Schedulers; import cn.bunny.dao.pojo.result.PageResult; import cn.bunny.dao.pojo.result.Result; import cn.bunny.dao.pojo.result.ResultCodeEnum; @@ -19,15 +18,13 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import reactor.core.publisher.Mono; -import java.util.List; - /** *

* Schedulers视图表 前端控制器 *

* * @author Bunny - * @since 2024-10-14 20:59:25 + * @since 2024-10-15 16:35:10 */ @Tag(name = "Schedulers视图", description = "Schedulers视图相关接口") @RestController @@ -45,7 +42,7 @@ public class SchedulersController { @Parameter(name = "limit", description = "每页记录数", required = true) @PathVariable("limit") Integer limit, SchedulersDto dto) { - Page pageParams = new Page<>(page, limit); + Page pageParams = new Page<>(page, limit); PageResult pageResult = schedulersService.getSchedulersList(pageParams, dto); return Mono.just(Result.success(pageResult)); } @@ -57,20 +54,6 @@ public class SchedulersController { return Mono.just(Result.success(ResultCodeEnum.ADD_SUCCESS)); } - @Operation(summary = "更新Schedulers视图", description = "更新Schedulers视图") - @PutMapping("updateSchedulers") - public Mono> updateSchedulers(@Valid @RequestBody SchedulersUpdateDto dto) { - schedulersService.updateSchedulers(dto); - return Mono.just(Result.success(ResultCodeEnum.UPDATE_SUCCESS)); - } - - @Operation(summary = "删除Schedulers视图", description = "删除Schedulers视图") - @DeleteMapping("deleteSchedulers") - public Mono> deleteSchedulers(@RequestBody List ids) { - schedulersService.deleteSchedulers(ids); - return Mono.just(Result.success(ResultCodeEnum.DELETE_SUCCESS)); - } - @Operation(summary = "暂停Schedulers任务", description = "暂停任务") @PutMapping("/pauseScheduler") public Result pause(@RequestBody SchedulersOperationDto dto) { @@ -85,10 +68,10 @@ public class SchedulersController { return Result.success(); } - @Operation(summary = "移出Schedulers任务", description = "移出任务") - @DeleteMapping("/removeScheduler") - public Result remove(@RequestBody SchedulersOperationDto dto) { - schedulersService.removeScheduler(dto); - return Result.success(); + @Operation(summary = "删除Schedulers任务", description = "删除任务") + @DeleteMapping("/deleteSchedulers") + public Mono> deleteSchedulers(@RequestBody SchedulersOperationDto dto) { + schedulersService.deleteSchedulers(dto); + return Mono.just(Result.success(ResultCodeEnum.DELETE_SUCCESS)); } } diff --git a/service/src/main/java/cn/bunny/services/mapper/SchedulersMapper.java b/service/src/main/java/cn/bunny/services/mapper/SchedulersMapper.java index bd405d0..664b5e7 100644 --- a/service/src/main/java/cn/bunny/services/mapper/SchedulersMapper.java +++ b/service/src/main/java/cn/bunny/services/mapper/SchedulersMapper.java @@ -1,25 +1,23 @@ package cn.bunny.services.mapper; import cn.bunny.dao.dto.schedulers.SchedulersDto; -import cn.bunny.dao.entity.schedulers.ViewSchedulers; +import cn.bunny.dao.entity.schedulers.Schedulers; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; -import java.util.List; - /** *

* Schedulers视图 Mapper 接口 *

* * @author Bunny - * @since 2024-10-14 20:59:25 + * @since 2024-10-15 16:35:10 */ @Mapper -public interface SchedulersMapper extends BaseMapper { +public interface SchedulersMapper extends BaseMapper { /** * * 分页查询Schedulers视图内容 @@ -28,12 +26,5 @@ public interface SchedulersMapper extends BaseMapper { * @param dto Schedulers视图查询表单 * @return Schedulers视图分页结果 */ - IPage selectListByPage(@Param("page") Page pageParams, @Param("dto") SchedulersDto dto); - - /** - * 物理删除Schedulers视图 - * - * @param ids 删除 id 列表 - */ - void deleteBatchIdsWithPhysics(List ids); + IPage selectListByPage(@Param("page") Page pageParams, @Param("dto") SchedulersDto dto); } diff --git a/service/src/main/java/cn/bunny/services/service/SchedulersService.java b/service/src/main/java/cn/bunny/services/service/SchedulersService.java index 057b037..37d366e 100644 --- a/service/src/main/java/cn/bunny/services/service/SchedulersService.java +++ b/service/src/main/java/cn/bunny/services/service/SchedulersService.java @@ -3,32 +3,29 @@ package cn.bunny.services.service; import cn.bunny.dao.dto.schedulers.SchedulersAddDto; import cn.bunny.dao.dto.schedulers.SchedulersDto; import cn.bunny.dao.dto.schedulers.SchedulersOperationDto; -import cn.bunny.dao.dto.schedulers.SchedulersUpdateDto; -import cn.bunny.dao.entity.schedulers.ViewSchedulers; +import cn.bunny.dao.entity.schedulers.Schedulers; import cn.bunny.dao.pojo.result.PageResult; import cn.bunny.dao.vo.schedulers.SchedulersVo; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import jakarta.validation.Valid; -import java.util.List; - /** *

* Schedulers视图 服务类 *

* * @author Bunny - * @since 2024-10-14 20:59:25 + * @since 2024-10-15 16:35:10 */ -public interface SchedulersService extends IService { +public interface SchedulersService extends IService { /** * * 获取Schedulers视图列表 * * @return Schedulers视图返回列表 */ - PageResult getSchedulersList(Page pageParams, SchedulersDto dto); + PageResult getSchedulersList(Page pageParams, SchedulersDto dto); /** * * 添加Schedulers视图 @@ -37,20 +34,6 @@ public interface SchedulersService extends IService { */ void addSchedulers(@Valid SchedulersAddDto dto); - /** - * * 更新Schedulers视图 - * - * @param dto 更新表单 - */ - void updateSchedulers(@Valid SchedulersUpdateDto dto); - - /** - * * 删除|批量删除Schedulers视图类型 - * - * @param ids 删除id列表 - */ - void deleteSchedulers(List ids); - /** * * 暂停Schedulers任务 * @@ -70,5 +53,5 @@ public interface SchedulersService extends IService { * * @param dto Schedulers公共操作表单 */ - void removeScheduler(SchedulersOperationDto dto); + void deleteSchedulers(SchedulersOperationDto dto); } diff --git a/service/src/main/java/cn/bunny/services/service/impl/SchedulersServiceImpl.java b/service/src/main/java/cn/bunny/services/service/impl/SchedulersServiceImpl.java index c025eab..af017b2 100644 --- a/service/src/main/java/cn/bunny/services/service/impl/SchedulersServiceImpl.java +++ b/service/src/main/java/cn/bunny/services/service/impl/SchedulersServiceImpl.java @@ -1,10 +1,10 @@ package cn.bunny.services.service.impl; +import cn.bunny.common.service.exception.BunnyException; import cn.bunny.dao.dto.schedulers.SchedulersAddDto; import cn.bunny.dao.dto.schedulers.SchedulersDto; import cn.bunny.dao.dto.schedulers.SchedulersOperationDto; -import cn.bunny.dao.dto.schedulers.SchedulersUpdateDto; -import cn.bunny.dao.entity.schedulers.ViewSchedulers; +import cn.bunny.dao.entity.schedulers.Schedulers; import cn.bunny.dao.pojo.result.PageResult; import cn.bunny.dao.vo.schedulers.SchedulersVo; import cn.bunny.services.mapper.SchedulersMapper; @@ -13,9 +13,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import jakarta.validation.Valid; +import org.quartz.*; import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.lang.reflect.Constructor; import java.util.List; /** @@ -24,10 +27,13 @@ import java.util.List; *

* * @author Bunny - * @since 2024-10-14 20:59:25 + * @since 2024-10-15 16:35:10 */ @Service -public class SchedulersServiceImpl extends ServiceImpl implements SchedulersService { +public class SchedulersServiceImpl extends ServiceImpl implements SchedulersService { + + @Autowired + private Scheduler scheduler; /** * * Schedulers视图 服务实现类 @@ -37,9 +43,9 @@ public class SchedulersServiceImpl extends ServiceImpl getSchedulersList(Page pageParams, SchedulersDto dto) { + public PageResult getSchedulersList(Page pageParams, SchedulersDto dto) { // 分页查询菜单图标 - IPage page = baseMapper.selectListByPage(pageParams, dto); + IPage page = baseMapper.selectListByPage(pageParams, dto); List voList = page.getRecords().stream().map(schedulers -> { SchedulersVo schedulersVo = new SchedulersVo(); @@ -60,35 +66,36 @@ public class SchedulersServiceImpl extends ServiceImpl ids) { - baseMapper.deleteBatchIdsWithPhysics(ids); + // 动态创建Class对象 + Class className = Class.forName(jobClassName); + Constructor constructor = className.getConstructor(); // 获取无参构造函数 + constructor.newInstance(); // 创建实例 + + // 创建任务 + JobDetail jobDetail = JobBuilder.newJob((Class) className).withIdentity(jobName, jobGroup) + .withDescription(description).build(); + jobDetail.getJobDataMap().put("jobMethodName", jobMethodName); + + // 执行任务 + CronScheduleBuilder cronScheduleBuilder = CronScheduleBuilder.cronSchedule(cronExpression); + CronTrigger trigger = TriggerBuilder.newTrigger().withIdentity("trigger" + jobName, jobGroup) + .startNow().withSchedule(cronScheduleBuilder).build(); + scheduler.scheduleJob(jobDetail, trigger); + } catch (Exception exception) { + throw new BunnyException(exception.getMessage()); + } } /** @@ -98,7 +105,12 @@ public class SchedulersServiceImpl extends ServiceImpl - + @@ -19,7 +19,7 @@ - select from qrtz_view_schedulers @@ -42,18 +42,10 @@ and trigger_state like CONCAT('%',#{dto.triggerState},'%') + + and job_method_name like CONCAT('%',#{dto.jobMethodName},'%') + order by update_time desc - - - - delete - from qrtz_view_schedulers - where id in - - #{id} - - -