沙钢智慧能源系统后端代码
liriming
2024-12-02 a63c400ff367e3cec30db6425a142d67dbaf158d
shasteel-biz/src/main/java/com/iailab/module/shasteel/job/controller/admin/ScheduleJobController.java
@@ -1,24 +1,14 @@
package com.iailab.module.shasteel.job.controller.admin;
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.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;
@@ -29,89 +19,73 @@
 */
@RestController
@RequestMapping("/shasteel/job/schedule")
@Tag(name = "定时任务")
public class ScheduleJobController {
   @Resource
   @Autowired
   private ScheduleJobService scheduleJobService;
   @GetMapping("page")
   @Operation(summary = "分页")
   @PreAuthorize("@ss.hasPermission('shasteel: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('shasteel: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('shasteel: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('shasteel: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('shasteel: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();
   }
}