package com.sandu.ximon.admin.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.github.pagehelper.PageHelper; import com.sandu.common.domain.ResponseVO; import com.sandu.common.object.BaseConditionVO; import com.sandu.common.util.ResponseUtil; import com.sandu.ximon.admin.param.IpVolumeMissionParam; import com.sandu.ximon.admin.security.SecurityUtils; import com.sandu.ximon.admin.service.IpVolumeMissionService; import com.sandu.ximon.dao.domain.IpVolumeMission; import lombok.AllArgsConstructor; import org.springframework.web.bind.annotation.*; /** * @Author liuhaonan * @Date 2021/12/16 10:03 * @Version 1.0 音柱任务 */ @RestController @AllArgsConstructor @RequestMapping("/v1/volumeMission") public class IpVolumeMissionController { private final IpVolumeMissionService ipVolumeMissionService; /** * @param missionParam * @return */ @PostMapping("/add") public ResponseVO addMission(@RequestBody IpVolumeMissionParam missionParam) { return ResponseUtil.success(ipVolumeMissionService.addMission(missionParam)); } /* @PostMapping("/add1") public ResponseVO add1() { return ResponseUtil.success(ipVolumeMissionService.add1()); }*/ /** * @param taskId * @param missionParam * @return 0:成功 1:服务器无该任务 2:任务正在执行,无法修改 3:服务器修改失败 * 4:任务名称不可为空 5:文件列表不可为空 6:终端列表不可为空 */ @PostMapping("/update/{taskId}") public ResponseVO updateMission(@PathVariable Integer taskId, @RequestBody IpVolumeMissionParam missionParam) { Integer result = ipVolumeMissionService.updateMission(taskId, missionParam); if (result == 0) { return ResponseUtil.success("修改成功"); } else if (result == 1) { return ResponseUtil.fail("服务器无该任务"); } else if (result == 2) { return ResponseUtil.fail("任务正在执行,无法修改"); } else if (result == 3) { return ResponseUtil.fail("服务器修改失败"); } else if (result == 4) { return ResponseUtil.fail("任务名称不可为空"); } else if (result == 5) { return ResponseUtil.fail("文件列表不可为空"); } else if (result == 6) { return ResponseUtil.fail("终端列表不可为空"); } else { return ResponseUtil.fail("未知错误"); } } @PostMapping("/delete/{taskId}") public ResponseVO deleteMission(@PathVariable Integer taskId) { // 0:成功 1:任务不处于空闲状态 2:服务器删除失败 Integer result = ipVolumeMissionService.deleteMission(taskId); if (result == 0) { return ResponseUtil.success("删除成功"); } else if (result == 1) { return ResponseUtil.fail("任务正在执行中"); } else if (result == 2) { return ResponseUtil.fail("服务器删除失败"); } else if (result == -1) { return ResponseUtil.success("服务器删除成功,数据库未找到该任务"); } else { return ResponseUtil.fail("未知错误"); } } // @AnonymousAccess @GetMapping("/list") public ResponseVO listMission(BaseConditionVO baseConditionVO, @RequestParam(value = "keyword", required = false) String keyword) { PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());// todo // return ResponseUtil.successPage(ipVolumeMissionService.missionList(baseConditionVO,keyword)); if (SecurityUtils.getClientId() == null) { LambdaQueryWrapper like = Wrappers.lambdaQuery(IpVolumeMission.class).like(IpVolumeMission::getMissionName, keyword); return ResponseUtil.successPage(ipVolumeMissionService.list(like)); } return ResponseUtil.successPage(ipVolumeMissionService.missionList(baseConditionVO, keyword)); } //获取任务详情 @GetMapping("/getByTaskId/{taskId}") public ResponseVO getByTaskId(@PathVariable Integer taskId) { return ResponseUtil.success(ipVolumeMissionService.getByTaskId(taskId)); } @GetMapping("/playTask/{taskId}") public ResponseVO playTask(@PathVariable Integer taskId) { return ResponseUtil.success(ipVolumeMissionService.playTask(taskId)); } @GetMapping("/stopTask/{taskId}") public ResponseVO stopTask(@PathVariable Integer taskId) { return ResponseUtil.success(ipVolumeMissionService.stopTask(taskId)); } }