/** * Copyright (c) 2016-2019 人人开源 All rights reserved. * * https://www.renren.io * * 版权所有,侵权必究! */ package com.peanut.modules.job.controller; import com.peanut.common.annotation.SysLog; import com.peanut.common.utils.PageUtils; import com.peanut.common.utils.R; import com.peanut.common.validator.ValidatorUtils; import com.peanut.modules.job.entity.ScheduleJobEntity; import com.peanut.modules.job.service.ScheduleJobService; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.Map; /** * 定时任务 * * @author Mark sunlightcs@gmail.com */ @RestController @RequestMapping("/sys/schedule") public class ScheduleJobController { @Autowired private ScheduleJobService scheduleJobService; /** * 定时任务列表 */ @RequestMapping("/list") @RequiresPermissions("sys:schedule:list") public R list(@RequestParam Map params){ PageUtils page = scheduleJobService.queryPage(params); return R.ok().put("page", page); } /** * 定时任务信息 */ @RequestMapping("/info/{jobId}") @RequiresPermissions("sys:schedule:info") public R info(@PathVariable("jobId") Long jobId){ ScheduleJobEntity schedule = scheduleJobService.getById(jobId); return R.ok().put("schedule", schedule); } /** * 保存定时任务 */ @SysLog("保存定时任务") @RequestMapping("/save") @RequiresPermissions("sys:schedule:save") public R save(@RequestBody ScheduleJobEntity scheduleJob){ ValidatorUtils.validateEntity(scheduleJob); scheduleJobService.saveJob(scheduleJob); return R.ok(); } /** * 修改定时任务 */ @SysLog("修改定时任务") @RequestMapping("/update") @RequiresPermissions("sys:schedule:update") public R update(@RequestBody ScheduleJobEntity scheduleJob){ ValidatorUtils.validateEntity(scheduleJob); scheduleJobService.update(scheduleJob); return R.ok(); } /** * 删除定时任务 */ @SysLog("删除定时任务") @RequestMapping("/delete") @RequiresPermissions("sys:schedule:delete") public R delete(@RequestBody Long[] jobIds){ scheduleJobService.deleteBatch(jobIds); return R.ok(); } /** * 立即执行任务 */ @SysLog("立即执行任务") @RequestMapping("/run") @RequiresPermissions("sys:schedule:run") public R run(@RequestBody Long[] jobIds){ scheduleJobService.run(jobIds); return R.ok(); } /** * 暂停定时任务 */ @SysLog("暂停定时任务") @RequestMapping("/pause") @RequiresPermissions("sys:schedule:pause") public R pause(@RequestBody Long[] jobIds){ scheduleJobService.pause(jobIds); return R.ok(); } /** * 恢复定时任务 */ @SysLog("恢复定时任务") @RequestMapping("/resume") @RequiresPermissions("sys:schedule:resume") public R resume(@RequestBody Long[] jobIds){ scheduleJobService.resume(jobIds); return R.ok(); } }