From 326468e5ce8f9f69eb461f483cdd3a1c0575ad3c Mon Sep 17 00:00:00 2001 From: whyclxw <810412026@qq.com> Date: 星期四, 19 六月 2025 21:08:45 +0800 Subject: [PATCH] Merge branch 'master' of http://118.89.139.230:10101/r/powerIntelligenceSystem --- src/main/java/com/whyc/service/WorkflowLinkService.java | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 50 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/whyc/service/WorkflowLinkService.java b/src/main/java/com/whyc/service/WorkflowLinkService.java index 6f852f8..86b2328 100644 --- a/src/main/java/com/whyc/service/WorkflowLinkService.java +++ b/src/main/java/com/whyc/service/WorkflowLinkService.java @@ -6,6 +6,7 @@ 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.util.CommonUtil; @@ -27,6 +28,9 @@ @Autowired @Lazy private WorkflowMainService mainService; + + @Autowired + private WorkflowDeviceService deviceService; public void addBatch(List<WorkflowLink> links) { @@ -63,11 +67,52 @@ mainService.updateById(mainInDB); link.setDealAndClose(1); } - } + }break; //璁惧鍏ュ簱鐢宠 case 2: //璁惧鎶ュ簾鐢宠 case 3:{ + if(link.getStatus() == WorkflowEnum.LINK_STATUS_PASS.getValue().intValue()){ + mainInDB.setStatus(WorkflowEnum.MAIN_STATUS_END_PASS.getValue()); + mainInDB.setEndTime(now); + mainInDB.setEndReason(link.getDealReason()); + mainService.updateById(mainInDB); + }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); + //鍏宠仈宸ュ崟鐨勮澶囬檮灞炶〃鏈鐞嗘暟閲忎篃瑕佸洖閫�,绛変簬涓昏〃璁惧鏁伴噺 + List<WorkflowDevice> deviceRelatedListInDB = deviceService.getByMainId(mainInDB.getRelatedId()); + List<WorkflowDevice> deviceListInDB = deviceService.getByMainId(mainInDB.getId()); + for (int i = 0; i < deviceListInDB.size(); i++) { + WorkflowDevice deviceInDB = deviceListInDB.get(i); + for (int j = 0; j < deviceRelatedListInDB.size(); j++) { + WorkflowDevice deviceRelatedInDB = deviceRelatedListInDB.get(j); + if (deviceInDB.getName().equals(deviceRelatedInDB.getName()) + && deviceInDB.getModel().equals(deviceRelatedInDB.getModel()) + && deviceInDB.getVersion().equals(deviceRelatedInDB.getVersion()) + && deviceInDB.getBrand().equals(deviceRelatedInDB.getBrand()) + && deviceInDB.getType().equals(deviceRelatedInDB.getType()) + && deviceInDB.getSupplier().equals(deviceRelatedInDB.getSupplier()) + ) { + deviceRelatedInDB.setQuantityUnprocessed(deviceInDB.getQuantity()); + //鍏宠仈宸ュ崟褰撳墠璁惧闄勫睘鐨勬湭澶勭悊鏁伴噺鍥為��瀹屾垚,涓嬩竴涓� + break; + } + } + } + deviceService.updateQuantityUnprocessedBatch(deviceRelatedListInDB); + } + mainService.updateById(mainInDB); + link.setDealAndClose(1); + } + }break; + case 4:{ //TODO 鍑哄簱鐢宠 if(link.getStatus() == WorkflowEnum.LINK_STATUS_PASS.getValue().intValue()){ mainInDB.setStatus(WorkflowEnum.MAIN_STATUS_WAIT_FOR_DEALING.getValue()); mainService.updateById(mainInDB); @@ -78,12 +123,14 @@ //妫�鏌ユ槸鍚︽湁鍏宠仈宸ュ崟.濡傛灉鏈夊叧鑱斿伐鍗�,鍏宠仈宸ュ崟鐘舵�侀噸缃负瀹岀粨寰呭鐞�,瀹屾垚鏃堕棿閲嶇疆涓虹┖ if(mainInDB.getRelatedId() != null){ Integer relatedId = mainInDB.getRelatedId(); - mainService.resetRepairStatus(relatedId,mainInDB.getQuantity()); + //mainService.resetRepairStatus(relatedId,mainInDB.getQuantity()); } mainService.updateById(mainInDB); link.setDealAndClose(1); } - } + }break; + default: + break; } -- Gitblit v1.9.1