| package com.doumee.api.timer; | 
|   | 
| import com.doumee.api.BaseController; | 
| import com.doumee.config.annotation.CloudRequiredPermission; | 
| import com.doumee.core.annotation.pr.PreventRepeat; | 
| import com.doumee.service.business.third.model.ApiResponse; | 
| import com.doumee.service.business.third.model.PageData; | 
| import com.doumee.service.business.third.model.PageWrap; | 
| import com.doumee.core.utils.Constants; | 
| import com.doumee.dao.timer.entity.QuartzJob; | 
| import com.doumee.service.timer.QuartzJobService; | 
| import io.swagger.annotations.Api; | 
| import io.swagger.annotations.ApiOperation; | 
| import org.springframework.beans.factory.annotation.Autowired; | 
| import org.springframework.web.bind.annotation.*; | 
|   | 
| /** | 
|  * @author 江蹄蹄 | 
|  * @since 2024/04/28 16:06 | 
|  */ | 
| @Api(tags = "作业调度平台接口交互记录") | 
| @RestController | 
| @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/quartz") | 
| public class QuartzCloudController extends BaseController { | 
|   | 
|     @Autowired | 
|     private QuartzJobService quartzJobService; | 
|   | 
|     @PreventRepeat | 
|     @ApiOperation("新建") | 
|     @PostMapping("/create") | 
|     @CloudRequiredPermission("business:quartz:create") | 
|     public ApiResponse  create(@RequestBody QuartzJob quartzJob ,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ | 
|           quartzJob.setState(Constants.ONE); | 
|           quartzJobService.insert(quartzJob) ; | 
|           return ApiResponse.success(null); | 
|     } | 
|   | 
|     @ApiOperation("根据ID修改") | 
|     @PostMapping("/updateById") | 
|     @CloudRequiredPermission("business:quartz:update") | 
|     public ApiResponse updateById(@RequestBody QuartzJob quartzJob,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ | 
|         quartzJobService.update(quartzJob); | 
|         return ApiResponse.success(null); | 
|     } | 
|   | 
|     @ApiOperation( "停止任务") | 
|     @GetMapping("/pause/{id}") | 
|     @CloudRequiredPermission("business:quartz:update") | 
|     public ApiResponse pause(@PathVariable("id") Integer id) { | 
|         quartzJobService.pause(id); return ApiResponse.success(null); | 
|     } | 
|   | 
|     @ApiOperation( "恢复任务") | 
|     @GetMapping("/resume/{id}") | 
|     @CloudRequiredPermission("business:quartz:update") | 
|     public ApiResponse resume(@PathVariable("id") Integer id) { | 
|         quartzJobService.resume(id) ; return ApiResponse.success(null); | 
|     } | 
|   | 
|     @ApiOperation( "执行一次") | 
|     @GetMapping("/runOnce/{id}") | 
|     @CloudRequiredPermission("business:quartz:update") | 
|     public ApiResponse runOnce(@PathVariable("id") Integer id) { | 
|         quartzJobService.runOnce(id) ; return ApiResponse.success(null); | 
|     } | 
|     @ApiOperation("分页查询") | 
|     @PostMapping("/page") | 
|     @CloudRequiredPermission("business:quartz:query") | 
|     public ApiResponse<PageData<QuartzJob>> findPage (@RequestBody PageWrap<QuartzJob> pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ | 
|         return ApiResponse.success(quartzJobService.findPage(pageWrap)); | 
|     } | 
|   | 
|     @ApiOperation("根据ID查询") | 
|     @GetMapping("/{id}") | 
|     @CloudRequiredPermission("business:quartz:query") | 
|     public ApiResponse<QuartzJob> findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ | 
|         return ApiResponse.success( quartzJobService.getById(id)); | 
|     } | 
| } |