From 18d187869d098a2893d79acdadc7d7a99aad28e6 Mon Sep 17 00:00:00 2001 From: kongdeqiang <123456> Date: 星期一, 24 三月 2025 15:23:37 +0800 Subject: [PATCH] fix: 更新设备项目表和项目子表接口 --- platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceController.java | 84 +++++++++++++++++++++++++++++++++++++---- 1 files changed, 75 insertions(+), 9 deletions(-) diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceController.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceController.java index 8727174..b9943ed 100644 --- a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceController.java +++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceController.java @@ -4,6 +4,8 @@ import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.by4cloud.platformx.admin.api.entity.SysDeptRelation; @@ -11,6 +13,8 @@ import com.by4cloud.platformx.common.log.annotation.SysLog; import com.by4cloud.platformx.common.security.util.SecurityUtils; import com.by4cloud.platformx.device.entity.Device; +import com.by4cloud.platformx.device.entity.DeviceInventory; +import com.by4cloud.platformx.device.service.DeviceInventoryService; import com.by4cloud.platformx.device.service.DeviceService; import org.springframework.security.access.prepost.PreAuthorize; import com.by4cloud.platformx.common.excel.annotation.ResponseExcel; @@ -39,6 +43,7 @@ public class DeviceController { private final DeviceService deviceService; + private final DeviceInventoryService inventoryService; /** * 鍒嗛〉鏌ヨ @@ -54,7 +59,14 @@ wrapper.eq(Device::getReqStatus,1); wrapper.like(StrUtil.isNotBlank(device.getNumber()),Device::getNumber,device.getNumber()); wrapper.like(StrUtil.isNotBlank(device.getName()),Device::getName,device.getName()); - return R.ok(deviceService.page(page, wrapper)); + Page<Device> page1 = deviceService.page(page, wrapper); + for (Device device1 : page1.getRecords()) { + QueryWrapper<DeviceInventory> wrapper1 = new QueryWrapper<>(); + wrapper1.lambda().eq(DeviceInventory::getDeviceId,device1.getId()); + long count = inventoryService.count(wrapper1); + device1.setNum(Integer.parseInt(count+"")); + } + return R.ok(page1); } /** * 鍒嗛〉鏌ヨ @@ -71,6 +83,16 @@ wrapper.like(StrUtil.isNotBlank(device.getNumber()),Device::getNumber,device.getNumber()); wrapper.like(StrUtil.isNotBlank(device.getName()),Device::getName,device.getName()); return R.ok(deviceService.page(page, wrapper)); + } + + @Operation(summary = "鏍规嵁璁惧鍒嗙被鑾峰彇璁惧" , description = "鏍规嵁璁惧鍒嗙被鑾峰彇璁惧" ) + @GetMapping("/getByClassId" ) + public R getByClassId(@ParameterObject Device device) { + LambdaQueryWrapper<Device> wrapper = Wrappers.lambdaQuery(); + wrapper.eq(Device::getReqStatus,1); + wrapper.eq(Device::getClassId,device.getClassId()); + wrapper.like(StrUtil.isNotBlank(device.getName()),Device::getName,device.getName()); + return R.ok(deviceService.list(wrapper)); } @@ -93,20 +115,34 @@ @Operation(summary = "瀹℃壒閫氳繃" , description = "瀹℃壒閫氳繃" ) @PostMapping("/pass" ) public R passById(@RequestBody Device device) { + if(StringUtils.isBlank(device.getNumber())){ + return R.failed("璇峰~鍐欒澶囩紪鍙�"); + } + QueryWrapper<Device> wrapper = new QueryWrapper<>(); + wrapper.lambda().eq(Device::getNumber,device.getNumber()); + List<Device> list = deviceService.list(wrapper); + if(list !=null && list.size()>0){ + Device device1 = list.get(0); + if(!device1.getId().equals(device.getId())){ + return R.failed("宸插瓨鍦ㄨ缂栧彿"); + } + } device.setReqStatus(1); deviceService.updateById(device); return R.ok(); } /** * 瀹℃壒鎷掔粷 - * @param id id * @return R */ @Operation(summary = "瀹℃壒鎷掔粷" , description = "瀹℃壒鎷掔粷" ) - @GetMapping("/kill/{id}" ) - public R killById(@PathVariable("id" ) Long id) { - Device byId = deviceService.getById(id); + @GetMapping("/kill" ) + public R killById(@ParameterObject Device device) { + Device byId = deviceService.getById(device.getId()); byId.setReqStatus(2); + if(StringUtils.isNotBlank(device.getRemark())){ + byId.setRemark(device.getRemark()); + } deviceService.updateById(byId); return R.ok(); } @@ -119,13 +155,34 @@ @Operation(summary = "鏂板鍑虹璁惧娓呭崟琛�" , description = "鏂板鍑虹璁惧娓呭崟琛�" ) @SysLog("鏂板鍑虹璁惧娓呭崟琛�" ) @PostMapping - @PreAuthorize("@pms.hasPermission('platformx_device_add')" ) public R save(@RequestBody Device device) { - if(device.getReqStatus() == 0){ - device.setReqCompId(SecurityUtils.getUser().getDeptId()); + if(device.getReqStatus()==0){ + return R.ok(deviceService.save(device)); } - return R.ok(deviceService.save(device)); + if(StringUtils.isBlank(device.getNumber())){ + return R.failed("璇峰~鍐欒澶囩紪鍙�"); + } + QueryWrapper<Device> wrapper = new QueryWrapper<>(); + wrapper.lambda().eq(Device::getNumber,device.getNumber()); + List<Device> list = deviceService.list(wrapper); + if(list !=null && list.size()>0){ + return R.failed("宸插瓨鍦ㄨ缂栧彿"); + } + return R.ok(deviceService.save(device)); } + + /** + * 涓夌骇鍗曚綅鏂板璁惧娓呭崟 + * @param device 涓夌骇鍗曚綅鏂板璁惧娓呭崟 + * @return R + */ + @Operation(summary = "涓夌骇鍗曚綅鏂板璁惧娓呭崟" , description = "涓夌骇鍗曚綅鏂板璁惧娓呭崟" ) + @SysLog("鏂板鍑虹璁惧娓呭崟琛�" ) + @PostMapping("/childAdd") + public R childAdd(@RequestBody Device device) { + device.setReqStatus(0); + return R.ok(deviceService.save(device)); + } /** * 淇敼鍑虹璁惧娓呭崟琛� @@ -137,6 +194,15 @@ @PutMapping @PreAuthorize("@pms.hasPermission('platformx_device_edit')" ) public R updateById(@RequestBody Device device) { + QueryWrapper<Device> wrapper = new QueryWrapper<>(); + wrapper.lambda().eq(Device::getNumber,device.getNumber()); + List<Device> list = deviceService.list(wrapper); + if(list !=null && list.size()>0){ + Device device1 = list.get(0); + if(!device1.getId().equals(device.getId())){ + return R.failed("宸插瓨鍦ㄨ缂栧彿"); + } + } return R.ok(deviceService.updateById(device)); } -- Gitblit v1.9.1