From 2753ad7aee272a5a5a8a0124b1feea5a1e4cc83e Mon Sep 17 00:00:00 2001 From: whyclxw <810412026@qq.com> Date: 星期五, 20 六月 2025 22:40:52 +0800 Subject: [PATCH] 电源告警参数返回 --- src/main/java/com/whyc/service/WorkflowLinkService.java | 64 +++++++++++++++++++++++++++----- 1 files changed, 54 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/whyc/service/WorkflowLinkService.java b/src/main/java/com/whyc/service/WorkflowLinkService.java index 86b2328..d7b1737 100644 --- a/src/main/java/com/whyc/service/WorkflowLinkService.java +++ b/src/main/java/com/whyc/service/WorkflowLinkService.java @@ -6,10 +6,9 @@ import com.whyc.dto.Response; import com.whyc.mapper.*; import com.whyc.pojo.db_user.User; -import com.whyc.pojo.web_site.WorkflowDevice; -import com.whyc.pojo.web_site.WorkflowLink; -import com.whyc.pojo.web_site.WorkflowMain; +import com.whyc.pojo.web_site.*; import com.whyc.util.CommonUtil; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; @@ -31,6 +30,11 @@ @Autowired private WorkflowDeviceService deviceService; + + @Autowired + private DeviceSpareService deviceSpareService; + @Autowired + private DeviceScrapService deviceScrapService; public void addBatch(List<WorkflowLink> links) { @@ -77,6 +81,39 @@ mainInDB.setEndTime(now); mainInDB.setEndReason(link.getDealReason()); mainService.updateById(mainInDB); + + List<WorkflowDevice> deviceListInDB = deviceService.getByMainId(mainInDB.getId()); + //鍏ュ簱 + if(mainInDB.getType() == 2){ + List<DeviceSpare> spareList = new ArrayList<>(); + deviceListInDB.forEach(device -> { + DeviceSpare spare = new DeviceSpare(); + /*spare.setName(device.getName()); + spare.setModel(device.getModel()); + spare.setVersion(device.getVersion()); + spare.setQuantity(device.getQuantity()); + spare.setBrand(device.getBrand()); + spare.setType(device.getType()); + spare.setSupplier(device.getSupplier());*/ + BeanUtils.copyProperties(device,spare); + + spareList.add(spare); + }); + deviceSpareService.addOrUpdate(spareList); + }else{ //杩涘叆鎶ュ簾搴� + List<DeviceScrap> scrapList = new ArrayList<>(); + deviceListInDB.forEach(device -> { + DeviceScrap deviceScrap = new DeviceScrap(); + BeanUtils.copyProperties(device,deviceScrap); + deviceScrap.setApplyUserId(mainInDB.getCreateUserId()); + deviceScrap.setApplyUserName(mainInDB.getCreateUserName()); + deviceScrap.setCreateTime(now); + deviceScrap.setMainId(mainInDB.getId()); + scrapList.add(deviceScrap); + }); + deviceScrapService.add(scrapList); + + } }else if(link.getStatus() == WorkflowEnum.LINK_STATUS_REJECT.getValue().intValue()){ mainInDB.setStatus(WorkflowEnum.MAIN_STATUS_END_REJECT.getValue()); mainInDB.setEndReason(link.getDealRejectReason()); @@ -112,19 +149,26 @@ link.setDealAndClose(1); } }break; - case 4:{ //TODO 鍑哄簱鐢宠 + case 4:{ // 鍑哄簱鐢宠 if(link.getStatus() == WorkflowEnum.LINK_STATUS_PASS.getValue().intValue()){ - mainInDB.setStatus(WorkflowEnum.MAIN_STATUS_WAIT_FOR_DEALING.getValue()); + mainInDB.setStatus(WorkflowEnum.MAIN_STATUS_END_PASS.getValue()); + mainInDB.setEndTime(now); + mainInDB.setEndReason(link.getDealReason()); mainService.updateById(mainInDB); + //鑾峰彇鍑哄簱鐢宠鍗曡澶� + List<WorkflowDevice> deviceListInDB = deviceService.getByMainId(mainInDB.getId()); + List<DeviceSpare> spareList = new ArrayList<>(); + deviceListInDB.forEach(device -> { + DeviceSpare spare = new DeviceSpare(); + BeanUtils.copyProperties(device,spare); + spareList.add(spare); + }); + //鏇存柊搴撳瓨 + deviceSpareService.outBound(spareList); }else if(link.getStatus() == WorkflowEnum.LINK_STATUS_REJECT.getValue().intValue()){ mainInDB.setStatus(WorkflowEnum.MAIN_STATUS_END_REJECT.getValue()); mainInDB.setEndReason(link.getDealRejectReason()); mainInDB.setEndTime(now); - //妫�鏌ユ槸鍚︽湁鍏宠仈宸ュ崟.濡傛灉鏈夊叧鑱斿伐鍗�,鍏宠仈宸ュ崟鐘舵�侀噸缃负瀹岀粨寰呭鐞�,瀹屾垚鏃堕棿閲嶇疆涓虹┖ - if(mainInDB.getRelatedId() != null){ - Integer relatedId = mainInDB.getRelatedId(); - //mainService.resetRepairStatus(relatedId,mainInDB.getQuantity()); - } mainService.updateById(mainInDB); link.setDealAndClose(1); } -- Gitblit v1.9.1