From 97bb7a8832281eafe0ef947ea095258d355e52f5 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期一, 30 十二月 2024 15:57:51 +0800
Subject: [PATCH] 无源器件的数采+电路模版查询

---
 inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsProductServiceImpl.java |   23 +++++++++++++++++++----
 1 files changed, 19 insertions(+), 4 deletions(-)

diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsProductServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsProductServiceImpl.java
index 8f6d417..d4123f0 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsProductServiceImpl.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsProductServiceImpl.java
@@ -41,11 +41,15 @@
 
     @Override
     public int updateInspected(Integer id, String ids) {
-        InsOrder insOrder = new InsOrder();
-        insOrder.setId(id);
+        InsOrder insOrder = insOrderMapper.selectById(id);
         insOrder.setIsRevocation(1);//闇�瑕佸鏍�
         insOrder.setRevocationInsProductIds(ids);
-        return insOrderMapper.updateById(insOrder);
+        insOrderMapper.updateById(insOrder);
+        //濡傛灉鏄唴閮ㄥ崟鏃犻渶瀹℃牳鎾ら攢
+        if (insOrder.getOrderType().equals("C")) {
+            checkUpdate(id, 1);
+        }
+        return 1;
     }
 
     @Override
@@ -95,13 +99,24 @@
             if (insProducts.stream().map(InsProduct::getId).collect(Collectors.toList()).equals(ids)) {
                 //濡傛灉璇ユ楠屽崟涓嬬殑鎵�鏈夐」鐩叏閮ㄩ兘鎾ら攢,閭d箞杩欎釜鍗曞瓙涔熼渶瑕佹挙閿�
                 insOrder.setState(3);
-            } else {
+            }
+            else {
                 List<InsProduct> products = insProductMapper.selectBatchIds(ids);
                 //棣栧厛鏍规嵁閫夋嫨鐨勯」鐩甶d杩涜鎾ら攢椤圭洰
                 updateBatchById(products.stream().map(insProduct -> {
                     insProduct.setState(0);
                     return insProduct;
                 }).collect(Collectors.toList()));
+                //濡傛灉璇ユ楠屽崟鏌愪釜鏍峰搧涓嬬殑椤圭洰鍏ㄩ儴閮芥挙閿�浜�,閭d箞杩欎釜鏍峰搧涔熼渶瑕佸垹鎺�
+                List<Integer> sampleIds = products.stream().map(InsProduct::getInsSampleId).distinct().collect(Collectors.toList());
+                for (Integer sampleId : sampleIds) {
+                    Long count = insProductMapper.selectCount(Wrappers.<InsProduct>lambdaQuery()
+                            .eq(InsProduct::getInsSampleId, sampleId)
+                            .eq(InsProduct::getState, 1));
+                    if(count<=0){
+                        insSampleMapper.deleteById(sampleId);
+                    }
+                }
             }
             //insProductMapper.updateInspected(id);
         }

--
Gitblit v1.9.3