package com.doumee.api.timer;
|
|
import com.doumee.core.annotation.pr.PreventRepeat;
|
import com.doumee.core.model.ApiResponse;
|
import com.doumee.core.model.PageData;
|
import com.doumee.core.model.PageWrap;
|
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.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.annotation.Resource;
|
|
@RestController
|
@RequestMapping( "/business/quartz")
|
@Api(tags = "定时任务接口")
|
public class QuartzController {
|
|
@Autowired
|
private QuartzJobService quartzJobService;
|
|
@PreventRepeat
|
@ApiOperation("新建")
|
@PostMapping("/create")
|
@RequiresPermissions("business:quartz:create")
|
public ApiResponse create(@RequestBody QuartzJob quartzJob ){
|
quartzJobService.insert(quartzJob) ;
|
return ApiResponse.success(null);
|
}
|
|
@ApiOperation("根据ID修改")
|
@PostMapping("/updateById")
|
@RequiresPermissions("business:quartz:update")
|
public ApiResponse updateById(@RequestBody QuartzJob quartzJob ){
|
quartzJobService.update(quartzJob);
|
return ApiResponse.success(null);
|
}
|
|
@ApiOperation( "停止任务")
|
@GetMapping("/pause/{id}")
|
@RequiresPermissions("business:quartz:update")
|
public ApiResponse pause(@PathVariable("id") Integer id) {
|
quartzJobService.pause(id); return ApiResponse.success(null);
|
}
|
|
@ApiOperation( "恢复任务")
|
@GetMapping("/resume/{id}")
|
@RequiresPermissions("business:quartz:update")
|
public ApiResponse resume(@PathVariable("id") Integer id) {
|
quartzJobService.resume(id) ; return ApiResponse.success(null);
|
}
|
|
@ApiOperation( "执行一次")
|
@GetMapping("RequiresPermissions")
|
@RequiresPermissions("business:quartz:update")
|
public ApiResponse runOnce(@PathVariable("id") Integer id) {
|
quartzJobService.runOnce(id) ; return ApiResponse.success(null);
|
}
|
@ApiOperation("分页查询")
|
@PostMapping("/page")
|
@RequiresPermissions("business:quartz:query")
|
public ApiResponse<PageData<QuartzJob>> findPage (@RequestBody PageWrap<QuartzJob> pageWrap ){
|
return ApiResponse.success(quartzJobService.findPage(pageWrap));
|
}
|
|
@ApiOperation("根据ID查询")
|
@GetMapping("/{id}")
|
@RequiresPermissions("business:quartz:query")
|
public ApiResponse<QuartzJob> findById(@PathVariable Integer id ){
|
return ApiResponse.success( quartzJobService.getById(id));
|
}
|
}
|