From 837de6ae103bcb91be2b89e78f87741c021edfd9 Mon Sep 17 00:00:00 2001 From: Bunny <1319900154@qq.com> Date: Mon, 14 Oct 2024 20:54:54 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E6=96=B0=E5=A2=9E):=20=E6=B7=BB=E5=8A=A0Qu?= =?UTF-8?q?arter?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../generator/AdminCodeGenerator.java | 4 +- .../generator/generator/WebGeneratorCode.java | 20 +++---- .../dao/dto/schedulers/SchedulersAddDto.java | 55 ++++++++++++++++++ .../dao/dto/schedulers/SchedulersDto.java | 37 ++++++++++++ .../dto/schedulers/SchedulersUpdateDto.java | 57 +++++++++++++++++++ .../cn/bunny/dao/entity/view/Schedulers.java | 47 +++++++++++++++ .../bunny/dao/vo/schedulers/SchedulersVo.java | 36 ++++++++++++ .../controller/EmailTemplateController.java | 12 ++-- .../controller/SchedulersController.java | 48 ++++++++++++++++ .../services/mapper/SchedulersMapper.java | 18 ++++++ .../services/quartz/QuartzConfiguration.java | 55 ++++++++++++++++++ .../services/quartz/QuartzJobFactory.java | 28 +++++++++ .../services/service/SchedulersService.java | 16 ++++++ .../service/impl/SchedulersServiceImpl.java | 20 +++++++ service/src/main/resources/application.yml | 21 ------- .../resources/mapper/SchedulersMapper.xml | 21 +++++++ service/src/main/resources/quartz.properties | 16 ++++++ 17 files changed, 472 insertions(+), 39 deletions(-) create mode 100644 dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersAddDto.java create mode 100644 dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersDto.java create mode 100644 dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersUpdateDto.java create mode 100644 dao/src/main/java/cn/bunny/dao/entity/view/Schedulers.java create mode 100644 dao/src/main/java/cn/bunny/dao/vo/schedulers/SchedulersVo.java create mode 100644 service/src/main/java/cn/bunny/services/controller/SchedulersController.java create mode 100644 service/src/main/java/cn/bunny/services/mapper/SchedulersMapper.java create mode 100644 service/src/main/java/cn/bunny/services/quartz/QuartzConfiguration.java create mode 100644 service/src/main/java/cn/bunny/services/quartz/QuartzJobFactory.java create mode 100644 service/src/main/java/cn/bunny/services/service/SchedulersService.java create mode 100644 service/src/main/java/cn/bunny/services/service/impl/SchedulersServiceImpl.java create mode 100644 service/src/main/resources/mapper/SchedulersMapper.xml create mode 100644 service/src/main/resources/quartz.properties diff --git a/common/common-generator/src/main/java/cn/bunny/common/generator/generator/AdminCodeGenerator.java b/common/common-generator/src/main/java/cn/bunny/common/generator/generator/AdminCodeGenerator.java index c3de48f..54418e3 100644 --- a/common/common-generator/src/main/java/cn/bunny/common/generator/generator/AdminCodeGenerator.java +++ b/common/common-generator/src/main/java/cn/bunny/common/generator/generator/AdminCodeGenerator.java @@ -20,7 +20,7 @@ public class AdminCodeGenerator { public static final String entity = "Bunny"; public static void main(String[] args) { - Generation("sys_files"); + Generation("v_schedulers"); } /** @@ -51,7 +51,7 @@ public class AdminCodeGenerator { .strategyConfig(builder -> { // 设置要生成的表名 builder.addInclude(tableName) - .addTablePrefix("sys_") + .addTablePrefix("sys_", "v_") .entityBuilder() .enableLombok() .enableChainModel() 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 74c632a..a1587bb 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 @@ -3,11 +3,11 @@ package cn.bunny.common.generator.generator; import cn.bunny.common.generator.entity.BaseField; import cn.bunny.common.generator.entity.BaseResultMap; import cn.bunny.common.generator.utils.GeneratorCodeUtils; -import cn.bunny.dao.dto.system.email.EmailTemplateAddDto; -import cn.bunny.dao.dto.system.email.EmailTemplateDto; -import cn.bunny.dao.dto.system.email.EmailTemplateUpdateDto; -import cn.bunny.dao.entity.system.EmailTemplate; -import cn.bunny.dao.vo.system.email.EmailTemplateVo; +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.view.Schedulers; +import cn.bunny.dao.vo.schedulers.SchedulersVo; import com.baomidou.mybatisplus.annotation.TableName; import com.google.common.base.CaseFormat; import io.swagger.v3.oas.annotations.media.Schema; @@ -51,11 +51,11 @@ public class WebGeneratorCode { public static String resourceMapperPath = "D:\\Project\\web\\PC\\auth\\auth-server-java\\service\\src\\main\\resources\\mapper\\"; public static void main(String[] args) throws Exception { - Class> originalClass = EmailTemplate.class; - Class> dtoClass = EmailTemplateDto.class; - Class> addDtoClass = EmailTemplateAddDto.class; - Class> updateDtoClass = EmailTemplateUpdateDto.class; - Class> voClass = EmailTemplateVo.class; + Class> originalClass = Schedulers.class; + Class> dtoClass = SchedulersDto.class; + Class> addDtoClass = SchedulersAddDto.class; + Class> updateDtoClass = SchedulersUpdateDto.class; + Class> voClass = SchedulersVo.class; // 设置velocity资源加载器 Properties prop = new Properties(); 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 new file mode 100644 index 0000000..f3e31a0 --- /dev/null +++ b/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersAddDto.java @@ -0,0 +1,55 @@ +package cn.bunny.dao.dto.schedulers; + +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Schema(name = "SchedulersAddDto对象", title = "Schedulers添加表单", description = "Schedulers添加表单") +public class SchedulersAddDto { + + @Schema(name = "jobName", title = "任务名称") + @NotBlank(message = "任务名称不能为空") + @NotNull(message = "任务名称不能为空") + private String jobName; + + @Schema(name = "jobGroup", title = "任务分组") + @NotBlank(message = "任务分组不能为空") + @NotNull(message = "任务分组不能为空") + private String jobGroup; + + @Schema(name = "description", title = "任务详情") + @NotBlank(message = "任务详情不能为空") + @NotNull(message = "任务详情不能为空") + private String description; + + @Schema(name = "jobClassName", title = "任务类名称") + @NotBlank(message = "corn表达式不能为空") + @NotNull(message = "corn表达式不能为空") + private String jobClassName; + + @Schema(name = "cronExpression", title = "corn表达式") + @NotBlank(message = "corn表达式不能为空") + @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; + +} + + 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 new file mode 100644 index 0000000..c98e9bb --- /dev/null +++ b/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersDto.java @@ -0,0 +1,37 @@ +package cn.bunny.dao.dto.schedulers; + +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Schema(name = "SchedulersDto对象", title = "Schedulers查询表单", description = "Schedulers查询表单") +public class SchedulersDto { + + @Schema(name = "jobName", title = "任务名称") + private String jobName; + + @Schema(name = "jobGroup", title = "任务分组") + private String jobGroup; + + @Schema(name = "description", title = "任务详情") + private String description; + + @Schema(name = "jobClassName", title = "任务类名称") + @NotNull(message = "corn表达式不能为空") + private String jobClassName; + + @Schema(name = "triggerName", title = "触发器名称") + private String triggerName; + + @Schema(name = "triggerState", title = "triggerState触发器状态") + private String triggerState; + +} + 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 new file mode 100644 index 0000000..28bf90e --- /dev/null +++ b/dao/src/main/java/cn/bunny/dao/dto/schedulers/SchedulersUpdateDto.java @@ -0,0 +1,57 @@ +package cn.bunny.dao.dto.schedulers; + +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@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 = "任务名称不能为空") + private String jobName; + + @Schema(name = "jobGroup", title = "任务分组") + @NotBlank(message = "任务分组不能为空") + @NotNull(message = "任务分组不能为空") + private String jobGroup; + + @Schema(name = "description", title = "任务详情") + @NotBlank(message = "任务详情不能为空") + @NotNull(message = "任务详情不能为空") + private String description; + + @Schema(name = "jobClassName", title = "任务类名称") + @NotBlank(message = "corn表达式不能为空") + @NotNull(message = "corn表达式不能为空") + private String jobClassName; + + @Schema(name = "cronExpression", title = "corn表达式") + @NotBlank(message = "corn表达式不能为空") + @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; + +} \ No newline at end of file diff --git a/dao/src/main/java/cn/bunny/dao/entity/view/Schedulers.java b/dao/src/main/java/cn/bunny/dao/entity/view/Schedulers.java new file mode 100644 index 0000000..ba27697 --- /dev/null +++ b/dao/src/main/java/cn/bunny/dao/entity/view/Schedulers.java @@ -0,0 +1,47 @@ +package cn.bunny.dao.entity.view; + +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Getter; +import lombok.Setter; +import lombok.experimental.Accessors; + +import java.io.Serializable; + +/** + *
+ * VIEW + *
+ * + * @author Bunny + * @since 2024-10-14 + */ +@Getter +@Setter +@Accessors(chain = true) +@TableName("v_schedulers") +@Schema(name = "Schedulers对象", title = "Schedulers视图", description = "Schedulers视图") +public class Schedulers implements Serializable { + + @Schema(name = "jobName", title = "任务名称") + private String jobName; + + @Schema(name = "jobGroup", title = "任务分组") + private String jobGroup; + + @Schema(name = "description", title = "任务详情") + private String description; + + @Schema(name = "jobClassName", title = "任务类名称") + private String jobClassName; + + @Schema(name = "cronExpression", title = "corn表达式") + private String cronExpression; + + @Schema(name = "triggerName", title = "触发器名称") + private String triggerName; + + @Schema(name = "triggerState", title = "triggerState触发器状态") + private String triggerState; + +} \ No newline at end of file diff --git a/dao/src/main/java/cn/bunny/dao/vo/schedulers/SchedulersVo.java b/dao/src/main/java/cn/bunny/dao/vo/schedulers/SchedulersVo.java new file mode 100644 index 0000000..ae12540 --- /dev/null +++ b/dao/src/main/java/cn/bunny/dao/vo/schedulers/SchedulersVo.java @@ -0,0 +1,36 @@ +package cn.bunny.dao.vo.schedulers; + +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.NotNull; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@Builder +@Schema(name = "SchedulersVo对象", title = "Schedulers返回内容", description = "Schedulers返回内容") +public class SchedulersVo { + + @Schema(name = "jobName", title = "任务名称") + private String jobName; + + @Schema(name = "jobGroup", title = "任务分组") + private String jobGroup; + + @Schema(name = "description", title = "任务详情") + private String description; + + @Schema(name = "jobClassName", title = "任务类名称") + @NotNull(message = "corn表达式不能为空") + private String jobClassName; + + @Schema(name = "triggerName", title = "触发器名称") + private String triggerName; + + @Schema(name = "triggerState", title = "triggerState触发器状态") + private String triggerState; + +} \ No newline at end of file diff --git a/service/src/main/java/cn/bunny/services/controller/EmailTemplateController.java b/service/src/main/java/cn/bunny/services/controller/EmailTemplateController.java index 70d2569..b12be0c 100644 --- a/service/src/main/java/cn/bunny/services/controller/EmailTemplateController.java +++ b/service/src/main/java/cn/bunny/services/controller/EmailTemplateController.java @@ -23,7 +23,7 @@ import java.util.Map; /** *- * 邮件模板表表 前端控制器 + * 邮件模板 前端控制器 *
* * @author Bunny @@ -37,7 +37,7 @@ public class EmailTemplateController { @Autowired private EmailTemplateService emailTemplateService; - @Operation(summary = "分页查询邮件模板表", description = "分页查询邮件模板表") + @Operation(summary = "分页查询邮件模板", description = "分页查询邮件模板") @GetMapping("getEmailTemplateList/{page}/{limit}") public Mono