package org.jeecg.modules.dnc.controller; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.jeecg.common.api.vo.Result; import org.jeecg.common.aspect.annotation.AutoLog; import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.modules.dnc.entity.DeviceInfo; import org.jeecg.modules.dnc.response.*; import org.jeecg.modules.dnc.service.IDeviceInfoService; import org.jeecg.modules.dnc.service.IDevicePermissionService; import org.jeecg.modules.mdc.model.MdcEquipmentTree; import org.jeecg.modules.system.entity.SysUser; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.Collections; import java.util.List; @Slf4j @Api(tags = "设备表") @RestController @RequestMapping("/nc/device") public class DeviceInfoController extends JeecgController { @Autowired private IDeviceInfoService deviceInfoService; @Autowired private IDevicePermissionService devicePermissionService; @AutoLog(value = "设备表-新增设备") @ApiOperation(value = "设备表-新增设备", notes = "设备表-新增设备") @PostMapping("/add") public ResponseResult addDeviceInfo(@RequestBody DeviceInfo deviceInfo) { boolean b = deviceInfoService.addDeviceInfo(deviceInfo); if(b) { return new ResponseResult(CommonCode.SUCCESS); } return new ResponseResult(CommonCode.FAIL); } @AutoLog(value = "设备表-编辑设备信息") @ApiOperation(value = "设备表-编辑设备信息", notes = "设备表-编辑设备信息") @PutMapping("/edit/{id}") public ResponseResult editDeviceInfo(@PathVariable("id") String id, @RequestBody DeviceInfo deviceInfo) { boolean b = deviceInfoService.editDeviceInfo(id, deviceInfo); if(b) { return new ResponseResult(CommonCode.SUCCESS); } return new ResponseResult(CommonCode.FAIL); } @AutoLog(value = "设备表-删除设备") @ApiOperation(value = "设备表-删除设备", notes = "设备表-删除设备") @DeleteMapping("/delete") public ResponseResult deleteDeviceInfo(@RequestParam("id") String id) { boolean b = deviceInfoService.deleteDeviceInfo(id); if(b) { return new ResponseResult(CommonCode.SUCCESS); } return new ResponseResult(CommonCode.FAIL); } @AutoLog(value = "设备表-根据用户权限获取树") @ApiOperation(value = "设备表-根据用户权限获取树", notes = "设备表-根据用户权限获取树") @GetMapping("/load/tree") public QueryListResponseResult loadTree() { List list = deviceInfoService.loadTree(); if(list == null) list = Collections.emptyList(); return new QueryListResponseResult(CommonCode.SUCCESS, list); } @AutoLog(value = "设备表-获取节点已分配的用户") @ApiOperation(value = "设备表-获取节点已分配的用户", notes = "设备表-获取节点已分配的用户") @GetMapping("/get/perm/user/{nodeType}/{paramId}") public QueryListResponseResult getUserPermsList(@PathVariable("nodeType") Integer nodeType, @PathVariable("paramId") String paramId) { List list = deviceInfoService.getUserPermsList(nodeType, paramId); if(list == null) list = Collections.emptyList(); return new QueryListResponseResult(CommonCode.SUCCESS, list); } @AutoLog(value = "设备表-获取节点未分配的用户") @ApiOperation(value = "设备表-获取节点未分配的用户", notes = "设备表-获取节点未分配的用户") @GetMapping("/get/non/perm/user/{nodeType}/{paramId}") public QueryListResponseResult getUserNonPermsList(@PathVariable("nodeType") Integer nodeType, @PathVariable("paramId") String paramId) { List list = deviceInfoService.getUserNonPermsList(nodeType, paramId); if(list == null) list = Collections.emptyList(); return new QueryListResponseResult(CommonCode.SUCCESS, list); } /** * 检查用户是否有该设备的权限 * @param nodeType 1 设备分组 2 设备 * @param paramId * @return */ @AutoLog(value = "设备表-检查用户是否有该设备的权限 1 设备分组 2 设备") @ApiOperation(value = "设备表-检查用户是否有该设备的权限 1 设备分组 2 设备", notes = "设备表-检查用户是否有该设备的权限 1 设备分组 2 设备") @GetMapping("/check/{nodeType}/{paramId}") public ResponseResult checkDevicePerm(@PathVariable("nodeType") Integer nodeType,@PathVariable("paramId") String paramId) { boolean b = deviceInfoService.checkDevicePerm(nodeType, paramId); if(b) { return new ResponseResult(CommonCode.SUCCESS); } return new ResponseResult(CommonCode.UNAUTHORISE); } @AutoLog(value = "设备表-增加设备树节点的用户权限") @ApiOperation(value = "设备表-增加设备树节点的用户权限", notes = "设备表-增加设备树节点的用户权限") @PostMapping("/assign/add/user/{nodeType}/{paramId}/{relativeFlag}") public ResponseResult assignAddUser(@PathVariable("nodeType") Integer nodeType, @PathVariable("paramId") String paramId, @PathVariable("relativeFlag") Integer relativeFlag, @RequestBody String[] userIds) { boolean b = deviceInfoService.assignAddUser(nodeType, paramId, relativeFlag, userIds); if(b) { return new ResponseResult(CommonCode.SUCCESS); } return new ResponseResult(CommonCode.FAIL); } @AutoLog(value = "设备表-删除设备树节点的用户权限") @ApiOperation(value = "设备表-删除设备树节点的用户权限", notes = "设备表-删除设备树节点的用户权限") @PostMapping("/assign/remove/user/{nodeType}/{paramId}/{relativeFlag}") public ResponseResult assignRemoveUser(@PathVariable("nodeType") Integer nodeType, @PathVariable("paramId") String paramId, @PathVariable("relativeFlag") Integer relativeFlag, @RequestBody String[] userIds) { boolean b = deviceInfoService.assignRemoveUser(nodeType, paramId, relativeFlag, userIds); if(b) { return new ResponseResult(CommonCode.SUCCESS); } return new ResponseResult(CommonCode.FAIL); } @AutoLog(value = "设备表-全部设备列表") @ApiOperation(value = "设备表-全部设备列表", notes = "设备表-全部设备列表") @GetMapping("/list/all") public QueryListResponseResult findListAll() { List list = deviceInfoService.list(); if(list == null) list = Collections.emptyList(); return new QueryListResponseResult(CommonCode.SUCCESS, list); } @AutoLog(value = "设备表-指派到设备 设备树") @ApiOperation(value = "设备表-指派到设备 设备树", notes = "设备表-指派到设备 设备树") @GetMapping("/load/depart/tree/{nodeType}/{paramId}") public QueryListResponseResult loadDepartTree(@PathVariable("nodeType") Integer nodeType,@PathVariable("paramId") String paramId) { List list = deviceInfoService.loadDepartTree(nodeType, paramId); if(list == null) list = Collections.emptyList(); return new QueryListResponseResult(CommonCode.SUCCESS, list); } @AutoLog(value = "设备表-获取唯一 设备编号") @ApiOperation(value = "设备表-获取唯一 设备编号", notes = "设备表-获取唯一 设备编号") @GetMapping("/valid/device") public ResponseResult validateDeviceNo(String deviceNo) { DeviceInfo byDeviceNo = deviceInfoService.getByDeviceNo(deviceNo); if(byDeviceNo == null) { return new ResponseResult(DeviceCode.DEVICE_NOT_EXIST); } return new ResponseResult(CommonCode.SUCCESS); } /** * 加载产线设备树 */ @AutoLog(value = "设备表-加载产线设备树") @ApiOperation(value = "设备表-加载产线设备树", notes = "设备表-加载产线设备树") @GetMapping(value = "/queryTreeListByProduction") public Result> queryTreeListByProduction() { Result> result = new Result<>(); try { List mdcEquipmentTreeList = devicePermissionService.DncLoadTreeListByProduction(); result.setSuccess(true); result.setResult(mdcEquipmentTreeList); } catch (Exception e) { return Result.error("加载产线设备树失败!" + e.getMessage()); } return result; } }