From fc8c86e7a365d5c6bdc37c2b05b9f83115ac2bc3 Mon Sep 17 00:00:00 2001
From: shiyunteng <shiyunteng@example.com>
Date: 星期三, 23 四月 2025 17:30:52 +0800
Subject: [PATCH] 巡检任务  设备维修新增是否生成工单

---
 platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceController.java |   53 +++++++++++++++++++++++++----------------------------
 1 files changed, 25 insertions(+), 28 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 b9943ed..1ffdbd0 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
@@ -12,10 +12,13 @@
 import com.by4cloud.platformx.common.core.util.R;
 import com.by4cloud.platformx.common.log.annotation.SysLog;
 import com.by4cloud.platformx.common.security.util.SecurityUtils;
+import com.by4cloud.platformx.device.constant.MaxSizeContant;
 import com.by4cloud.platformx.device.entity.Device;
 import com.by4cloud.platformx.device.entity.DeviceInventory;
+import com.by4cloud.platformx.device.entity.InvestmentPlan;
 import com.by4cloud.platformx.device.service.DeviceInventoryService;
 import com.by4cloud.platformx.device.service.DeviceService;
+import com.by4cloud.platformx.device.service.JcMaxSizeService;
 import org.springframework.security.access.prepost.PreAuthorize;
 import com.by4cloud.platformx.common.excel.annotation.ResponseExcel;
 import io.swagger.v3.oas.annotations.security.SecurityRequirement;
@@ -26,6 +29,7 @@
 import lombok.RequiredArgsConstructor;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.Date;
 import java.util.List;
 import java.util.Objects;
 
@@ -44,6 +48,7 @@
 
     private final  DeviceService deviceService;
     private final DeviceInventoryService inventoryService;
+    private final JcMaxSizeService maxSizeService;
 
     /**
      * 鍒嗛〉鏌ヨ
@@ -59,10 +64,12 @@
 		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());
+		wrapper.orderByDesc(Device::getCreateTime);
 		Page<Device> page1 = deviceService.page(page, wrapper);
 		for (Device device1 : page1.getRecords()) {
 			QueryWrapper<DeviceInventory> wrapper1 = new QueryWrapper<>();
-			wrapper1.lambda().eq(DeviceInventory::getDeviceId,device1.getId());
+			wrapper1.lambda().eq(DeviceInventory::getDeviceId,device1.getId())
+					.eq(DeviceInventory::getInventoryStatus,1);
 			long count = inventoryService.count(wrapper1);
 			device1.setNum(Integer.parseInt(count+""));
 		}
@@ -118,15 +125,7 @@
 		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.setNumber(maxSizeService.nextNo(MaxSizeContant.DEVICE_NUM));
 		device.setReqStatus(1);
 		deviceService.updateById(device);
 		return R.ok();
@@ -159,15 +158,8 @@
 		if(device.getReqStatus()==0){
 			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("宸插瓨鍦ㄨ缂栧彿");
-		}
+		device.setNumber(maxSizeService.nextNo(MaxSizeContant.DEVICE_NUM));
+		device.setReleaseDate(new Date());
 		return R.ok(deviceService.save(device));
     }
 
@@ -194,16 +186,12 @@
     @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("宸插瓨鍦ㄨ缂栧彿");
-			}
+		Device byId = deviceService.getById(device.getId());
+		if(StringUtils.isNotBlank(byId.getNumber())){
+			byId.setNumber(maxSizeService.nextNo(MaxSizeContant.DEVICE_NUM));
+			byId.setReleaseDate(new Date());
 		}
-        return R.ok(deviceService.updateById(device));
+		return R.ok(deviceService.updateById(device));
     }
 
     /**
@@ -232,4 +220,13 @@
     public List<Device> export(Device device,Long[] ids) {
         return deviceService.list(Wrappers.lambdaQuery(device).in(ArrayUtil.isNotEmpty(ids), Device::getId, ids));
     }
+
+	/**
+	 * 鎵�鏈夎澶囦笅鎷�
+	 * @return
+	 */
+	@GetMapping("/getDropdowmList" )
+	public R getDeviceList() {
+		return R.ok(deviceService.list());
+	}
 }

--
Gitblit v1.9.1