package com.sandu.ximon.admin.controller;
|
|
import com.sandu.common.domain.ResponseVO;
|
import com.sandu.common.execption.BusinessException;
|
import com.sandu.common.object.BaseConditionVO;
|
import com.sandu.common.util.ResponseUtil;
|
import com.sandu.ximon.admin.dto.LightTaskDto;
|
import com.sandu.ximon.admin.dto.PlcTaskDto;
|
import com.sandu.ximon.admin.param.*;
|
import com.sandu.ximon.admin.security.PermissionConfig;
|
import com.sandu.ximon.admin.service.LightEnergyDataService;
|
import com.sandu.ximon.admin.service.LightTaskService;
|
import com.sandu.ximon.admin.service.PlcTaskService;
|
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;
|
|
/**
|
* Plc任务相关控制类
|
*
|
* @author van
|
*/
|
@RestController
|
@AllArgsConstructor
|
@RequestMapping("/plc/task")
|
public class PlcTaskController {
|
|
private final PlcTaskService plcTaskService;
|
private PermissionConfig permissionConfig;
|
|
@PostMapping("/add")
|
public ResponseVO<Object> addPlcTask(@RequestBody @Validated PlcTaskParam param) {
|
if (!permissionConfig.check(MenuEnum.PLC_TASK_ADD.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
return ResponseUtil.success(plcTaskService.AddPlcTask(param));
|
}
|
|
|
@GetMapping("/list")
|
public ResponseVO<Object> listPlcTask(BaseConditionVO conditionVO,
|
@RequestParam(value = "keyword", required = false) String keyword,
|
@RequestParam(value = "order", required = false) Integer order,
|
@RequestParam(value = "seq", required = false) Integer seq) {
|
if (!permissionConfig.check(MenuEnum.PLC_TASK_LIST.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
List<PlcTaskDto> taskList = plcTaskService.listPlcTask(conditionVO, keyword, order, seq);
|
return ResponseUtil.successPage(taskList);
|
}
|
|
@PostMapping("/del")
|
public ResponseVO<Object> delPlcTask(@RequestBody @Validated PlcTaskDelParam param) {
|
if (!permissionConfig.check(MenuEnum.PLC_TASK_DELETE.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
String result = plcTaskService.delPlcTask(param.getTaskId());
|
return ResponseUtil.success(result);
|
|
}
|
|
@PostMapping("/update/{taskId}")
|
public ResponseVO<Object> updatePlcTask(@PathVariable Long taskId, @RequestBody @Validated PlcTaskParam param) {
|
if (!permissionConfig.check(MenuEnum.PLC_TASK_UPDATE.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
String result = plcTaskService.newUpdatePlcTask(taskId, param);
|
return ResponseUtil.success(result);
|
|
}
|
|
//
|
// /**
|
// * 清除任务
|
// *
|
// * @param
|
// * @return
|
// */
|
//// @PostMapping("/clear")
|
//// public ResponseVO<Object> clearLightTask(@RequestBody List<Long> poleIds) {
|
//// if (!permissionConfig.check(MenuEnum.PLC_TASK_UPDATE.getCode())) {
|
//// return ResponseUtil.fail("缺少对应用户权限");
|
//// }
|
//// boolean result = plcTaskService.clearLightTask(poleIds);
|
//// return ResponseUtil.success(result);
|
//// }
|
@GetMapping("/{taskId}")
|
public ResponseVO<Object> detailPlcTask(@PathVariable Long taskId) {
|
if (!permissionConfig.check(MenuEnum.PLC_TASK_DETAIL.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
|
return ResponseUtil.success(plcTaskService.detailPlcTask(taskId));
|
}
|
|
/**
|
* 单灯下发
|
*
|
* @param param
|
* @return
|
*/
|
@PostMapping("/issue")
|
public ResponseVO<Object> issueLightTask(@RequestBody @Validated PlcTaskIssueParam param) {
|
if (!permissionConfig.check(MenuEnum.PLC_TASK_ISSUE.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
boolean result = plcTaskService.issuePlcTask(param);
|
if (result) {
|
return ResponseUtil.success("下发成功");
|
} else {
|
return ResponseUtil.fail("下发失败");
|
}
|
}
|
//
|
//
|
// @PostMapping("/energy")
|
// public ResponseVO<Object> energy() {
|
//
|
//
|
// plcTaskService.energy();
|
// return ResponseUtil.success("lightEnergyDataService.energy(0)");
|
// }
|
//
|
//
|
@PostMapping("/check")
|
public ResponseVO<Object> checkTask(@RequestBody PlcTaskParam param) {
|
if (!permissionConfig.check(MenuEnum.PLC_TASK_UPDATE.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
if (!"0001".equals(param.getPlcAddress())
|
&& !"0002".equals(param.getPlcAddress())
|
&& !"0003".equals(param.getPlcAddress())) {
|
throw new BusinessException("灯头地址格式不正确");
|
}
|
return ResponseUtil.success(plcTaskService.checkTask(param));
|
|
}
|
|
}
|