package com.sandu.ximon.admin.controller; import com.sandu.common.domain.ResponseVO; import com.sandu.common.object.BaseConditionVO; import com.sandu.common.util.ResponseUtil; import com.sandu.ximon.admin.dto.LightTaskDto; import com.sandu.ximon.admin.param.LightTaskDelParam; import com.sandu.ximon.admin.param.LightTaskIssueParam; import com.sandu.ximon.admin.param.LightTaskParam; import com.sandu.ximon.admin.security.PermissionConfig; import com.sandu.ximon.admin.service.LightTaskService; import com.sandu.ximon.dao.domain.LightTask; import com.sandu.ximon.dao.enums.MenuEnum; import lombok.AllArgsConstructor; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Map; /** * 路灯任务相关控制类 * * @author chenjiantian */ @RestController @AllArgsConstructor @RequestMapping("/v1/light/task") public class LightTaskController { private final LightTaskService lightTaskService; private PermissionConfig permissionConfig; @PostMapping("/add") public ResponseVO addLightTask(@RequestBody @Validated LightTaskParam param) { if (!permissionConfig.check(MenuEnum.LIGHT_TASK_ADD.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } boolean result = lightTaskService.addLightTask(param); if (result) { return ResponseUtil.success("新增成功"); } else { return ResponseUtil.fail("新增失败"); } } @GetMapping("/list") public ResponseVO listLightTask(BaseConditionVO conditionVO, @RequestParam(required = false) String keyword) { if (!permissionConfig.check(MenuEnum.LIGHT_TASK_LIST.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } List taskList = lightTaskService.listLightTask(conditionVO, keyword); return ResponseUtil.successPage(taskList); } @PostMapping("/del") public ResponseVO delLightTask(@RequestBody @Validated LightTaskDelParam param) { if (!permissionConfig.check(MenuEnum.LIGHT_TASK_DELETE.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } boolean result = lightTaskService.delLightTask(param.getTaskIdList()); if (result) { return ResponseUtil.success("删除成功"); } else { return ResponseUtil.fail("删除失败"); } } @PostMapping("/update/{taskId}") public ResponseVO updateLightTask(@PathVariable Long taskId, @RequestBody @Validated LightTaskParam param) { if (!permissionConfig.check(MenuEnum.LIGHT_TASK_UPDATE.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } boolean result = lightTaskService.updateLightTask(taskId, param); if (result) { return ResponseUtil.success("编辑成功"); } else { return ResponseUtil.fail("编辑失败"); } } @GetMapping("/{taskId}") public ResponseVO detailLightTask(@PathVariable Long taskId) { if (!permissionConfig.check(MenuEnum.LIGHT_TASK_DETAIL.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } Map objectObjectMap = lightTaskService.detailLightTask(taskId); return ResponseUtil.success(objectObjectMap); } @PostMapping("/issue") public ResponseVO issueLightTask(@RequestBody @Validated LightTaskIssueParam param) { if (!permissionConfig.check(MenuEnum.LIGHT_TASK_ISSUE.getCode())) { return ResponseUtil.fail("缺少对应用户权限"); } boolean result = lightTaskService.issueLightTask(param); if (result) { return ResponseUtil.success("下发成功"); } else { return ResponseUtil.fail("下发失败"); } } }