From 5299d63b70c02f3c915975565723930f4fd87e14 Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期六, 01 六月 2024 09:47:26 +0800
Subject: [PATCH] 完成光纤配置进行检验操作

---
 inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java |   73 +++++++++++++++++++++++++++++-------
 1 files changed, 58 insertions(+), 15 deletions(-)

diff --git a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java
index 743cdb3..a3de060 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderServiceImpl.java
@@ -9,10 +9,7 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.yuanchu.mom.common.GetLook;
 import com.yuanchu.mom.common.PrintChina;
-import com.yuanchu.mom.dto.CostStatisticsDto;
-import com.yuanchu.mom.dto.SampleOrderDto;
-import com.yuanchu.mom.dto.SampleProductDto;
-import com.yuanchu.mom.dto.SampleProductDto2;
+import com.yuanchu.mom.dto.*;
 import com.yuanchu.mom.exception.ErrorException;
 import com.yuanchu.mom.mapper.*;
 import com.yuanchu.mom.pojo.*;
@@ -59,6 +56,14 @@
 
     PowerMapper powerMapper;
 
+    private InsBushingMapper insBushingMapper;
+
+    private InsFibersMapper insFibersMapper;
+
+    private InsFiberMapper insFiberMapper;
+
+    CustomMapper customMapper;
+
 
     //鑾峰彇妫�楠屼笅鍗曟暟鎹�
     @Override
@@ -75,7 +80,7 @@
                 sampleOrderDto.setCreateUser(map1.get("userId"));
             }else {
                 //缁勭粐
-                sampleOrderDto.setCompany(user.getCompany());
+                sampleOrderDto.setCompany(customMapper.selectById(user.getCompany()).getCompany());
             }
         }
         Map<String, Object> map = new HashMap<>();
@@ -131,23 +136,61 @@
             }
             insSampleMapper.insert(a);
             if (ObjectUtil.isNotEmpty(a.getInsProduct())) {
-                for (InsProduct product : a.getInsProduct()) {
-                    product.setId(null);
-                    product.setCreateTime(null);
-                    product.setUpdateTime(null);
-                    product.setUpdateTime(null);
-                    product.setUpdateUser(null);
-                    product.setInsSampleId(a.getId());
-                    if (product.getInspectionItemSubclass() == null) {
-                        product.setInspectionItemSubclass("");
+                addInsProductMethod(a.getId(), a.getInsProduct(), null, 0);
+            }
+            if (ObjectUtil.isNotEmpty(a.getBushing())) {
+                for (BushingDto bushingDto : a.getBushing()) {
+                    bushingDto.setInsSampleId(a.getInsOrderId());
+                    insBushingMapper.insert(bushingDto);
+                    if(bushingDto.getFiber().size()!=0){
+                        for (FiberDto fiberDto : bushingDto.getFiber()) {
+                            fiberDto.setInsBushingId(bushingDto.getId());
+                            insFiberMapper.insert(fiberDto);
+                            addInsProductMethod(a.getId(), fiberDto.getProductList(), fiberDto.getId(), 2);
+                        }
+                    }else{
+                        for (FibersDto fibersDto : bushingDto.getFibers()) {
+                            fibersDto.setInsBushingId(bushingDto.getId());
+                            insFibersMapper.insert(fibersDto);
+                            for (FiberDto fiberDto : fibersDto.getFiber()) {
+                                fiberDto.setInsFibersId(fibersDto.getId());
+                                insFiberMapper.insert(fiberDto);
+                                addInsProductMethod(a.getId(), fiberDto.getProductList(), fiberDto.getId(), 2);
+                            }
+                            addInsProductMethod(a.getId(), fibersDto.getProductList(), fibersDto.getId(), 1);
+                        }
                     }
-                    insProductMapper.insert(product);
                 }
             }
         });
         return insOrder.getId();
     }
 
+    private void addInsProductMethod(Integer sampleId, List<InsProduct> productList, Integer id, Integer type) {
+        for (InsProduct product : productList) {
+            if(product.getState()==1){
+                switch (type){
+                    case 1:
+                        product.setInsFibersId(id);
+                        break;
+                    case 2:
+                        product.setInsFiberId(id);
+                        break;
+                }
+                product.setId(null);
+                product.setCreateTime(null);
+                product.setUpdateTime(null);
+                product.setUpdateTime(null);
+                product.setUpdateUser(null);
+                product.setInsSampleId(sampleId);
+                if (product.getInspectionItemSubclass() == null) {
+                    product.setInspectionItemSubclass("");
+                }
+                insProductMapper.insert(product);
+            }
+        }
+    }
+
     @Override
     public Map<String, Object> getInsOrder(Integer id) {
         Map<String, Object> map = new HashMap<>();

--
Gitblit v1.9.3