From e691b3282287a247f92e7301d778cdbb1fe4eaab Mon Sep 17 00:00:00 2001
From: 罗媛媛 <2454262093@qq.com>
Date: 星期一, 01 四月 2024 17:58:48 +0800
Subject: [PATCH] 功能调整

---
 inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java |   30 ++++++++++++++++++++----------
 1 files changed, 20 insertions(+), 10 deletions(-)

diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
index 4e01879..4c1ad61 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
@@ -14,14 +14,8 @@
 import com.yuanchu.mom.common.PrintChina;
 import com.yuanchu.mom.dto.InsOrderPlanDTO;
 import com.yuanchu.mom.dto.SampleProductDto;
-import com.yuanchu.mom.mapper.InsOrderMapper;
-import com.yuanchu.mom.mapper.InsOrderStateMapper;
-import com.yuanchu.mom.mapper.InsSampleMapper;
-import com.yuanchu.mom.mapper.InsSampleUserMapper;
-import com.yuanchu.mom.pojo.InsOrder;
-import com.yuanchu.mom.pojo.InsOrderState;
-import com.yuanchu.mom.pojo.InsProduct;
-import com.yuanchu.mom.pojo.InsSampleUser;
+import com.yuanchu.mom.mapper.*;
+import com.yuanchu.mom.pojo.*;
 import com.yuanchu.mom.service.InsOrderPlanService;
 import com.yuanchu.mom.service.InsOrderService;
 import com.yuanchu.mom.service.StandardTemplateService;
@@ -32,6 +26,7 @@
 
 import java.time.LocalDateTime;
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * 妫�楠屼换鍔�-涓氬姟瀹炵幇灞�
@@ -53,6 +48,8 @@
     private StandardTemplateService standardTemplateService;
 
     private InsOrderStateMapper insOrderStateMapper;
+
+    private InsProductMapper insProductMapper;
 
     @Override
     public Map<String, Object> selectInsOrderPlanList(Page page, InsOrderPlanDTO insOrderPlanDTO) {
@@ -88,13 +85,14 @@
         if(BeanUtil.isEmpty(order.getInsTime())){
             insOrder.setInsTime(LocalDateTime.now());
             insOrderMapper.updateById(insOrder);
-            insOrderStateMapper.update(null, Wrappers.<InsOrderState>lambdaUpdate().eq(InsOrderState::getInsOrderId, id).eq(InsOrderState::getLaboratory, laboratory).set(InsOrderState::getInsTime, LocalDateTime.now()).set(InsOrderState::getInsState, 1));
         }
-        Map<String, Object> map = insOrderService.getInsOrder(id);
+        insOrderStateMapper.update(null, Wrappers.<InsOrderState>lambdaUpdate().eq(InsOrderState::getInsOrderId, id).eq(InsOrderState::getLaboratory, laboratory).set(InsOrderState::getInsTime, LocalDateTime.now()).set(InsOrderState::getInsState, 1));
+        Map<String, Object> map = insOrderService.getInsOrderAndSample(id, laboratory);
         Set<Integer> set = new HashSet<>();
         Map<Integer, String> map2 = new HashMap<>();
         List<SampleProductDto> list = JSON.parseArray(JSON.toJSONString(map.get("sampleProduct")), SampleProductDto.class);
         for (SampleProductDto samples : list) {
+            if (BeanUtil.isEmpty(samples.getInsProduct())) continue;
             for (InsProduct product : samples.getInsProduct()) {
                 if(set.add(product.getTemplateId())){
                     map2.put(product.getTemplateId(), standardTemplateService.getStandTempThingById(product.getTemplateId()) + "");
@@ -154,4 +152,16 @@
         Integer num = (type==1?5:4);
         return insOrderStateMapper.update(null, Wrappers.<InsOrderState>lambdaUpdate().eq(InsOrderState::getInsOrderId, orderId).eq(InsOrderState::getLaboratory, laboratory).set(InsOrderState::getInsTime, LocalDateTime.now()).set(InsOrderState::getInsState, num).set(InsOrderState::getVerifyTell, tell));
     }
+
+    @Override
+    public int submitPlan(Integer orderId, String laboratory) {
+        List<InsSample> insSamples = insSampleMapper.selectList(Wrappers.<InsSample>lambdaQuery().eq(InsSample::getInsOrderId, orderId).select(InsSample::getId));
+        List<Integer> ids = insSamples.stream().map(a-> a.getId()).collect(Collectors.toList());
+        List<InsProduct> insProducts = insProductMapper.selectList(Wrappers.<InsProduct>lambdaQuery().in(InsProduct::getInsSampleId, ids).eq(InsProduct::getSonLaboratory, laboratory).isNotNull(InsProduct::getInsResult));
+        if(insProducts.size()==0){
+            return 0;
+        }
+        insOrderStateMapper.update(null, Wrappers.<InsOrderState>lambdaUpdate().eq(InsOrderState::getInsOrderId, orderId).eq(InsOrderState::getLaboratory, laboratory).set(InsOrderState::getInsTime, LocalDateTime.now()).set(InsOrderState::getInsState, 3));
+        return 1;
+    }
 }

--
Gitblit v1.9.3