From 17a6e42c685b7aee80a953f182ab514db2643fe0 Mon Sep 17 00:00:00 2001 From: 潘志宝 <979469083@qq.com> Date: 星期三, 11 十二月 2024 18:07:11 +0800 Subject: [PATCH] Merge branch 'master' of http://dlindusit.com:53929/r/shasteel --- shasteel-biz/src/main/java/com/iailab/module/shasteel/job/controller/admin/ScheduleJobController.java | 94 ++++++++++++++-------------------------------- 1 files changed, 29 insertions(+), 65 deletions(-) diff --git a/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/controller/admin/ScheduleJobController.java b/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/controller/admin/ScheduleJobController.java index 9b647fb..02d59d2 100644 --- a/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/controller/admin/ScheduleJobController.java +++ b/shasteel-biz/src/main/java/com/iailab/module/shasteel/job/controller/admin/ScheduleJobController.java @@ -1,27 +1,14 @@ package com.iailab.module.shasteel.job.controller.admin; -import com.iailab.framework.common.constant.Constant; +import com.iailab.framework.common.page.PageData; import com.iailab.framework.common.pojo.CommonResult; -import com.iailab.framework.common.pojo.PageResult; -import com.iailab.framework.common.util.object.BeanUtils; -import com.iailab.framework.common.util.validation.ValidationUtils; -import com.iailab.framework.common.validation.group.AddGroup; -import com.iailab.framework.common.validation.group.DefaultGroup; -import com.iailab.framework.common.validation.group.UpdateGroup; -import com.iailab.framework.tenant.core.context.TenantContextHolder; import com.iailab.module.shasteel.job.dto.ScheduleJobDTO; -import com.iailab.module.shasteel.job.entity.ScheduleJobEntity; import com.iailab.module.shasteel.job.service.ScheduleJobService; -import com.iailab.module.shasteel.job.vo.ScheduleJobReqVO; -import io.swagger.v3.oas.annotations.Operation; -import io.swagger.v3.oas.annotations.Parameter; -import io.swagger.v3.oas.annotations.Parameters; -import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import javax.annotation.Resource; +import java.util.Map; import static com.iailab.framework.common.pojo.CommonResult.success; @@ -31,97 +18,74 @@ * @author Mark sunlightcs@gmail.com */ @RestController -@RequestMapping("/job/schedule") -@Tag(name = "定时任务") +@RequestMapping("/shasteel/job/schedule") public class ScheduleJobController { - @Resource + @Autowired private ScheduleJobService scheduleJobService; @GetMapping("page") - @Operation(summary = "分页") - @Parameters({ - @Parameter(name = Constant.PAGE, description = "当前页码,从1开始", required = true) , - @Parameter(name = Constant.LIMIT, description = "每页显示记录数", required = true) , - @Parameter(name = Constant.ORDER_FIELD, description = "排序字段") , - @Parameter(name = Constant.ORDER, description = "排序方式,可选值(asc、desc)") , - @Parameter(name = "beanName", description = "beanName") - }) - @PreAuthorize("@ss.hasPermission('data:schedule:query')") - public CommonResult<PageResult<ScheduleJobDTO>> page(@Validated ScheduleJobReqVO reqVO){ - reqVO.setTenantId(TenantContextHolder.getTenantId()); - PageResult<ScheduleJobEntity> page = scheduleJobService.page(reqVO); + @PreAuthorize("@ss.hasPermission('shasteel:job:query')") + public CommonResult<PageData<ScheduleJobDTO>> page(@RequestParam Map<String, Object> params){ + PageData<ScheduleJobDTO> page = scheduleJobService.page(params); - return success(BeanUtils.toBean(page, ScheduleJobDTO.class)); + return success(page); } - @GetMapping("info") - @Operation(summary = "信息") - @PreAuthorize("@ss.hasPermission('data:schedule:query')") - public CommonResult<ScheduleJobDTO> info(@RequestParam("id") Long id){ + @GetMapping("{id}") + @PreAuthorize("@ss.hasPermission('shasteel:job:query')") + public CommonResult<ScheduleJobDTO> info(@PathVariable("id") Long id){ ScheduleJobDTO schedule = scheduleJobService.get(id); - return new CommonResult<ScheduleJobDTO>().setData(schedule); + return success(schedule); } - @PostMapping("/create") - @Operation(summary = "保存") - @PreAuthorize("@ss.hasPermission('data:schedule:create')") + @PostMapping + @PreAuthorize("@ss.hasPermission('shasteel:job:create')") public CommonResult save(@RequestBody ScheduleJobDTO dto){ - ValidationUtils.validate(dto, AddGroup.class, DefaultGroup.class); - scheduleJobService.save(dto); - return new CommonResult(); + return success(); } - @PutMapping("/update") - @Operation(summary = "修改") - @PreAuthorize("@ss.hasPermission('data:schedule:update')") + @PutMapping + @PreAuthorize("@ss.hasPermission('shasteel:job:update')") public CommonResult update(@RequestBody ScheduleJobDTO dto){ - ValidationUtils.validate(dto, UpdateGroup.class, DefaultGroup.class); - scheduleJobService.update(dto); - return new CommonResult(); + return success(); } - @DeleteMapping("/delete") - @Operation(summary = "删除") - @PreAuthorize("@ss.hasPermission('data:schedule:delete')") - public CommonResult delete(@RequestParam("id") Long id){ - scheduleJobService.deleteBatch(id); - - return new CommonResult(); + @DeleteMapping + @PreAuthorize("@ss.hasPermission('shasteel:job:delete')") + public CommonResult delete(@RequestParam Long id){ + scheduleJobService.deleteById(id); + + return success(); } @PutMapping("/run") - @Operation(summary = "立即执行") public CommonResult run(@RequestParam("id") Long id){ - Long[] ids = new Long[1]; - ids[0] = id; - scheduleJobService.run(ids); + scheduleJobService.run(id); - return new CommonResult(); + return success(); } @PutMapping("/pause") - @Operation(summary = "暂停") public CommonResult pause(@RequestParam("id") Long id){ Long[] ids = new Long[1]; ids[0] = id; scheduleJobService.pause(ids); - return new CommonResult(); + return success(); } @PutMapping("/resume") - @Operation(summary = "恢复") public CommonResult resume(@RequestParam("id") Long id){ Long[] ids = new Long[1]; ids[0] = id; scheduleJobService.resume(ids); - return new CommonResult(); + return success(); } } \ No newline at end of file -- Gitblit v1.9.3