package com.sandu.ximon.admin.controller;
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.extension.api.ApiController;
|
import com.baomidou.mybatisplus.extension.api.R;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.sandu.common.domain.CommonPage;
|
import com.sandu.common.domain.ResponseVO;
|
import com.sandu.common.object.BaseConditionVO;
|
import com.sandu.common.util.ResponseUtil;
|
import com.sandu.ximon.admin.param.LightControlParam;
|
import com.sandu.ximon.admin.param.LightRemarkParam;
|
import com.sandu.ximon.admin.param.PlcControlParam;
|
import com.sandu.ximon.admin.param.PlcRemarkParam;
|
import com.sandu.ximon.admin.security.PermissionConfig;
|
import com.sandu.ximon.admin.service.PlcReportDataService;
|
import com.sandu.ximon.admin.service.PlcReportErrorService;
|
import com.sandu.ximon.admin.service.PlcService;
|
import com.sandu.ximon.dao.bo.*;
|
import com.sandu.ximon.dao.domain.LightReportData;
|
import com.sandu.ximon.dao.domain.Plc;
|
import com.sandu.ximon.dao.domain.PlcReportData;
|
import com.sandu.ximon.dao.domain.PlcReportError;
|
import com.sandu.ximon.dao.enums.MenuEnum;
|
import lombok.AllArgsConstructor;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.annotation.Resource;
|
import java.io.Serializable;
|
import java.util.ArrayList;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* plc路灯表(Plc)表控制层
|
*
|
* @author van
|
* @since 2022-12-15 14:45:18
|
*/
|
@AllArgsConstructor
|
@RestController
|
@RequestMapping("plc")
|
public class PlcController {
|
|
private final PlcService plcService;
|
|
private final PlcReportDataService plcReportDataService;
|
|
private final PlcReportErrorService plcReportErrorService;
|
private final PermissionConfig permissionConfig;
|
|
@GetMapping("list")
|
public ResponseVO<Object> selectAll(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_LIST.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
List<PlcBo> plcBos = plcService.listPlc(conditionVO.getPageNo(), conditionVO.getPageSize(), keyword, order, seq);
|
|
return ResponseUtil.successPage(plcBos);
|
}
|
|
@PostMapping("/remark")
|
public ResponseVO<Object> addRemark(@RequestBody @Validated PlcRemarkParam param) {
|
if (!permissionConfig.check(MenuEnum.PLC_REMARK.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
boolean result = plcService.addRemark(param);
|
if (result) {
|
return ResponseUtil.success("添加成功");
|
} else {
|
return ResponseUtil.fail("添加失败");
|
}
|
}
|
|
/**
|
* 获取上报数据
|
*
|
* @param conditionVO
|
* @return
|
*/
|
@GetMapping("/report/list")
|
public ResponseVO<Object> listReportData(BaseConditionVO conditionVO
|
, @RequestParam(value = "keyword", required = false) String keyword
|
, @RequestParam(value = "deviceCode", required = false) String deviceCode
|
, @RequestParam(value = "order", required = false) Integer order
|
,@RequestParam(value = "seq", required = false) Integer seq) {
|
if (!permissionConfig.check(MenuEnum.PLC_DATA.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
CommonPage commonPage = plcReportDataService.listReportData(conditionVO.getPageNo(), conditionVO.getPageSize(), keyword, deviceCode,order,seq);
|
List<PlcReportDataBo> plcReportDataBos = (List<PlcReportDataBo>) commonPage.getList();
|
|
if (plcReportDataBos == null) {
|
return ResponseUtil.success(CommonPage.restPage(new ArrayList<>()));
|
}
|
CommonPage commonPage1 = CommonPage.restPage(plcReportDataBos);
|
commonPage1.setTotal(commonPage.getTotal());
|
commonPage1.setTotalPage(commonPage.getTotalPage());
|
|
return ResponseUtil.success(commonPage1);
|
}
|
|
@GetMapping("/error/list")
|
public ResponseVO<Object> listReportError(BaseConditionVO conditionVO, @RequestParam(value = "keyword", required = false) String keyword
|
, @RequestParam(value = "errorCode", required = false) Long errorCode) {
|
if (!permissionConfig.check(MenuEnum.PLC_ERROR_LIST.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
List<PlcReportErrorBo> list = plcReportErrorService.listReportError(conditionVO.getPageNo(), conditionVO.getPageSize(), keyword, errorCode);
|
return ResponseUtil.success(list);
|
}
|
|
@GetMapping("/data/list")
|
public ResponseVO<Object> listData(BaseConditionVO conditionVO, @RequestParam(value = "deviceCode", required = false) String deviceCode) {
|
if (!permissionConfig.check(MenuEnum.PLC_DATA.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
List<PlcReportData> reportDataList = plcReportDataService.getReportDataList(conditionVO, deviceCode);
|
|
return ResponseUtil.success(reportDataList);
|
}
|
// 亮度控制
|
@PostMapping("/control")
|
public ResponseVO<Object> controlBrightness(@RequestBody @Validated List<PlcControlParam> paramList) {
|
if (!permissionConfig.check(MenuEnum.PLC_CONTROL.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
List<Map<String, Object>> list = plcService.controlBrightness(paramList);
|
return ResponseUtil.success(list);
|
}
|
|
// 设置心跳时间
|
@PostMapping("/setHeartBeatTime")
|
public ResponseVO<Object> setHeartBeatTime(@RequestBody @Validated List<PlcControlParam> paramList) {
|
if (!permissionConfig.check(MenuEnum.PLC_HEARTBEAT_PACKAGE_SET_TIME.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
List<Map<String, Object>> list = plcService.setHeartBeatTime(paramList);
|
return ResponseUtil.success(list);
|
}
|
|
// 查询心跳时间
|
@PostMapping("/queryHeartBeatTime")
|
public ResponseVO<Object> queryHeartBeatTime(@RequestBody @Validated List<PlcControlParam> paramList) {
|
if (!permissionConfig.check(MenuEnum.PLC_HEARTBEAT_PACKAGE_QUERY_TIME.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
List<Map<String, Object>> list = plcService.queryHeartBeatTime(paramList);
|
return ResponseUtil.success(list);
|
}
|
|
// 查询心跳
|
@PostMapping("/queryHeartBeatData")
|
public ResponseVO<Object> queryHeartBeatData(@RequestBody @Validated List<PlcControlParam> paramList) {
|
if (!permissionConfig.check(MenuEnum.PLC_HEARTBEAT_PACKAGE.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
List<Map<String, Object>> list = plcService.queryHeartBeatData(paramList);
|
return ResponseUtil.success(list);
|
}
|
|
// 查询心跳
|
@PostMapping("/queryVersion")
|
public ResponseVO<Object> queryVersion(@RequestBody @Validated List<PlcControlParam> paramList) {
|
if (!permissionConfig.check(MenuEnum.PLC_VERSION_QUERY.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
List<Map<String, Object>> list = plcService.queryVersion(paramList);
|
return ResponseUtil.success(list);
|
}
|
|
// 重启
|
@PostMapping("/reboot")
|
public ResponseVO<Object> reboot(@RequestBody @Validated List<PlcControlParam> paramList) {
|
if (!permissionConfig.check(MenuEnum.PLC_REBOOT.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
List<Map<String, Object>> list = plcService.reboot(paramList);
|
return ResponseUtil.success(list);
|
}
|
|
// 恢复出厂设置
|
@PostMapping("/reset")
|
public ResponseVO<Object> reset(@RequestBody @Validated List<PlcControlParam> paramList) {
|
if (!permissionConfig.check(MenuEnum.PLC_RESET.getCode())) {
|
return ResponseUtil.fail("缺少对应用户权限");
|
}
|
List<Map<String, Object>> list = plcService.reset(paramList);
|
return ResponseUtil.success(list);
|
}
|
|
|
|
}
|