From 1b0b86833609f1d0a25b0bc84d21796581629f4e Mon Sep 17 00:00:00 2001
From: zhuo <2089219845@qq.com>
Date: 星期四, 10 四月 2025 13:07:21 +0800
Subject: [PATCH] 温湿度报检功能调整

---
 basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java |  349 ++++------------------------------------------------------
 1 files changed, 24 insertions(+), 325 deletions(-)

diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java
index 29c4b90..51bd971 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardTreeServiceImpl.java
@@ -1,38 +1,32 @@
 package com.ruoyi.basic.service.impl;
 
 import cn.hutool.core.collection.CollUtil;
-import cn.hutool.poi.excel.ExcelUtil;
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.basic.dto.SampleDto;
-import com.ruoyi.common.exception.base.BaseException;
 import com.ruoyi.basic.dto.FactoryDto;
 import com.ruoyi.basic.dto.LaboratoryDto;
 import com.ruoyi.basic.dto.SampleTypeDto;
 import com.ruoyi.basic.mapper.StandardProductListMapper;
 import com.ruoyi.basic.mapper.StandardTreeMapper;
 import com.ruoyi.basic.pojo.StandardProductList;
-import com.ruoyi.basic.pojo.StandardTemplate;
 import com.ruoyi.basic.pojo.StandardTree;
 import com.ruoyi.basic.pojo.StructureTestObject;
-import com.ruoyi.basic.service.*;
+import com.ruoyi.basic.service.StandardProductListService;
+import com.ruoyi.basic.service.StandardTreeService;
+import com.ruoyi.basic.service.StructureTestObjectService;
+import com.ruoyi.common.exception.base.BaseException;
 import lombok.AllArgsConstructor;
-import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.multipart.MultipartFile;
 
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.*;
-import java.util.concurrent.atomic.AtomicReference;
-import java.util.stream.Collectors;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
 
 /**
  * @author Administrator
@@ -47,13 +41,9 @@
 
     private StandardTreeMapper standardTreeMapper;
 
-    private StandardMethodListService standardMethodListService;
-
     private StandardProductListMapper standardProductListMapper;
 
     private StandardProductListService standardProductListService;
-
-    private StandardTemplateService standardTemplateService;
 
     private StructureTestObjectService structureTestObjectService;
 
@@ -61,28 +51,14 @@
     @Override
     public List<FactoryDto> selectStandardTreeList() {
         List<FactoryDto> factoryDtos = standardTreeMapper.selectStandardTreeList();
-        // 鏀堕泦鎵�鏈� sampleTypeDto 鐨� value
-        Set<String> sampleTypeValues = new HashSet<>();
         for (FactoryDto factoryDto : factoryDtos) {
             for (LaboratoryDto laboratoryDto : factoryDto.getChildren()) {
                 laboratoryDto.getChildren().sort((o1, o2) -> (o1.getSort() == null ? 0 : o1.getSort())
                         - (o2.getSort() == null ? 0 : o2.getSort()));
                 for (SampleTypeDto sampleTypeDto : laboratoryDto.getChildren()) {
-                    sampleTypeValues.add(sampleTypeDto.getValue());
-                }
-            }
-        }
-        // 鎵归噺鏌ヨ鎵�鏈� sampleTypeDto 鐨勬暟鎹�
-        List<SampleDto> standardList = standardTreeMapper.getStandardTree3Batch(sampleTypeValues);
-        Map<String, List<SampleDto>> standardTreeMap = standardList.stream().collect(Collectors.groupingBy(SampleDto::getValue));
-        // 灏嗘煡璇㈢粨鏋滃垎閰嶅埌瀵瑰簲鐨� sampleTypeDto
-        for (FactoryDto factoryDto : factoryDtos) {
-            for (LaboratoryDto laboratoryDto : factoryDto.getChildren()) {
-                for (SampleTypeDto sampleTypeDto : laboratoryDto.getChildren()) {
-                    List<SampleDto> standardTreeList = standardTreeMap.get(sampleTypeDto.getValue());
-                    if (standardTreeList != null) {
-                        sampleTypeDto.getChildren().addAll(standardTreeList);
-                    }
+//                    if (sampleTypeDto.getChildren().size() == 0) {
+                    sampleTypeDto.getChildren().addAll(standardTreeMapper.getStandardTree3(sampleTypeDto.getValue()));
+//                    }
                 }
             }
         }
@@ -149,271 +125,6 @@
     }
 
     @Override
-    public List<StandardTree> getStandTreeBySampleType(String laboratory, String sampleType) {
-        return standardTreeMapper.selectList(Wrappers.<StandardTree>lambdaQuery()
-                .eq(StandardTree::getLaboratory, laboratory)
-                .eq(StandardTree::getSampleType, sampleType)
-                .select(StandardTree::getModel, StandardTree::getSample));
-    }
-
-    /**
-     * 娌冲彛妫�娴嬩腑蹇冨鍏�
-     * @param file
-     */
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public void inExcelOfTree(MultipartFile file) {
-        InputStream inputStream;
-        try {
-            inputStream = file.getInputStream();
-        } catch (IOException e) {
-            throw new RuntimeException(e);
-        }
-        List<StandardProductList> lists = new ArrayList<>();
-        AtomicReference<String> laboratory = new AtomicReference<>();
-        ExcelUtil.readBySax(inputStream, 0, (i, l, list) -> {
-            StandardProductList str = new StandardProductList();
-            if (i == 0 && l == 1) {
-                laboratory.set(standardTreeMapper.getLaboratory(list.get(1) + ""));
-                if (laboratory.get() == null) {
-                    throw new BaseException("妫�楠屽璞′笉瀛樺湪锛�" + list.get(1));
-                }
-            }
-            if (i == 0 && l >= 1) {
-                Integer standardMethodId = standardMethodListService.getStandardMethodId(list.get(0) + "");
-                if (standardMethodId == null) {
-                    throw new BaseException("鏍囧噯缂栧彿涓嶅瓨鍦細" + list.get(0));
-                }
-                str.setStandardMethodListId(standardMethodId);
-                str.setSampleType(list.get(1) + "");
-                if (list.get(2) != null) {
-                    String sample = baseMapper.selSample(list.get(2) + "");
-                    if (sample == null) {
-                        throw new BaseException("鏍峰搧涓嶅瓨鍦細" + list.get(2));
-                    }
-                    str.setSample(list.get(2) + "");
-                } else {
-                    str.setSample(null);
-                }
-                if (list.get(3) != null) {
-                    str.setModel(list.get(3) + "");
-                    Long aLong = standardTreeMapper.selectCount(Wrappers.<StandardTree>lambdaQuery()
-                            .eq(StandardTree::getModel, str.getModel())
-                            .eq(StandardTree::getSampleType, list.get(1) + ""));
-                    if (aLong == 0) {
-                        StandardTree standardTree = new StandardTree();
-                        standardTree.setFactory("涓ぉ绉戞妧妫�娴嬩腑蹇�");
-                        standardTree.setLaboratory(laboratory.get());
-                        standardTree.setSampleType(str.getSampleType());
-                        standardTree.setSample(str.getSample());
-                        standardTree.setModel(str.getModel());
-                        standardTreeMapper.insert(standardTree);
-                    }
-                } else {
-                    str.setModel(null);
-                }
-                str.setInspectionItem(list.get(4) + "");
-                if (list.get(6) == null) {
-                    str.setInspectionItemSubclass("");
-                } else {
-                    str.setInspectionItemSubclass(list.get(6).toString());
-                }
-                StandardProductList db_str;
-                try {
-                    db_str = standardProductListMapper.getOne(str.getStandardMethodListId(), str.getInspectionItem(), str.getSample(), str.getInspectionItemSubclass(), str.getModel(), str.getInspectionItemClass());
-                } catch (Exception e) {
-                    throw new BaseException("閲嶅鏌ヨ锛�" + str.getInspectionItem() + " " + str.getInspectionItemSubclass());
-                }
-                if (ObjectUtils.isNotEmpty(db_str)) {
-                    str.setId(db_str.getId());
-                    str.setStructureItemParameterId(db_str.getStructureItemParameterId());
-                }
-                if (list.get(8) != null) {
-                    str.setMethodS(list.get(8) + "");
-                }
-
-                if (list.get(11) == null) {
-                    str.setTell(null);
-                } else {
-                    str.setTell(list.get(11).toString());
-                }
-
-                if (list.get(12) == null) {
-                    str.setAsk(null);
-                } else {
-                    str.setAsk(list.get(12).toString());
-                }
-
-                if (list.get(13) == null) {
-                    str.setPrice(null);
-                } else {
-                    str.setPrice((list.get(13).toString()));
-                }
-
-                if (list.get(14) == null) {
-                    str.setManHour(null);
-                } else {
-                    str.setManHour(list.get(14).toString());
-                }
-
-                StandardTemplate standTempIdByName = standardTemplateService.getStandTempIdByName(String.valueOf(list.get(21)));
-                if (standTempIdByName != null) {
-                    str.setTemplateId(standTempIdByName.getId());
-                } else {
-                    throw new BaseException("妯℃澘涓嶅瓨鍦細" + list.get(21));
-                }
-                str.setFactory("涓ぉ绉戞妧妫�娴嬩腑蹇�");
-                str.setLaboratory(laboratory.get());
-                str.setState(1);
-                str.setTree(str.getFactory() + " - " + str.getLaboratory() + " - " + str.getSampleType() + " - " + str.getSample() + " - " + (str.getModel() == null ? "" : str.getModel()));
-                try {
-                    str.setStructureItemParameterId(standardTreeMapper.getStructureItemParameterId("\"" + str.getSampleType() + "\"", str.getInspectionItem(), str.getInspectionItemSubclass(), str.getInspectionItemClass()));
-                } catch (Exception e) {
-                    str.setStructureItemParameterId(standardTreeMapper.getStructureItemParameterId("\"" + str.getSampleType() + "\",\"" + str.getSample() + "\"", str.getInspectionItem(), str.getInspectionItemSubclass(), str.getInspectionItemClass()));
-                }
-                if (str.getStructureItemParameterId() == null) {
-                    throw new BaseException("妫�楠岄」鐩笉瀛樺湪锛�" + str.getInspectionItem() + " " + str.getInspectionItemSubclass());
-                }
-                lists.add(str);
-            }
-        });
-        lists.forEach(a -> {
-            if (a.getId() != null) {
-                standardProductListMapper.updateById(a);
-            } else {
-                standardProductListMapper.insert(a);
-            }
-        });
-    }
-
-    @Override
-    public void importWorkstationExcel(MultipartFile file) {
-        InputStream inputStream;
-        try {
-            inputStream = file.getInputStream();
-        } catch (IOException e) {
-            throw new RuntimeException(e);
-        }
-        List<StandardProductList> lists = new ArrayList<>();
-        AtomicReference<String> laboratory = new AtomicReference<>();
-        ExcelUtil.readBySax(inputStream, 0, (i, l, list) -> {
-            StandardProductList str = new StandardProductList();
-            if (i == 0 && l == 1) {
-                laboratory.set(standardTreeMapper.getLaboratory(list.get(1) + ""));
-                if (laboratory.get() == null) {
-                    throw new BaseException("妫�楠屽璞′笉瀛樺湪锛�" + list.get(1));
-                }
-            }
-            if (i == 0 && l >= 1) {
-                Integer standardMethodId = standardMethodListService.getStandardMethodId(list.get(0) + "");
-                if (standardMethodId == null) {
-                    throw new BaseException("鏍囧噯缂栧彿涓嶅瓨鍦細" + list.get(0));
-                }
-                str.setStandardMethodListId(standardMethodId);
-                str.setSampleType(list.get(1) + "");
-                if (list.get(2) != null) {
-                    String sample = baseMapper.selSample(list.get(2) + "");
-                    if (sample == null) {
-                        throw new BaseException("鏍峰搧涓嶅瓨鍦細" + list.get(2));
-                    }
-                    str.setSample(list.get(2) + "");
-                } else {
-                    str.setSample(null);
-                }
-                if (list.get(3) != null) {
-                    str.setModel(list.get(3) + "");
-                    Long aLong = standardTreeMapper.selectCount(Wrappers.<StandardTree>lambdaQuery()
-                            .eq(StandardTree::getModel, str.getModel())
-                            .eq(StandardTree::getSampleType, list.get(1) + ""));
-                    if (aLong == 0) {
-                        StandardTree standardTree = new StandardTree();
-                        standardTree.setFactory("涓ぉ绉戞妧妫�娴嬩腑蹇�");
-                        standardTree.setLaboratory(laboratory.get());
-                        standardTree.setSampleType(str.getSampleType());
-                        standardTree.setSample(str.getSample());
-                        standardTree.setModel(str.getModel());
-                        standardTreeMapper.insert(standardTree);
-                    }
-                } else {
-                    str.setModel(null);
-                }
-                str.setInspectionItemClass(list.get(4).toString());
-                str.setInspectionItemClassEn(list.get(5).toString());
-                // 寮�濮嬪姞2
-                str.setInspectionItem(list.get(6) + "");
-                if (list.get(8) == null) {
-                    str.setInspectionItemSubclass("");
-                } else {
-                    str.setInspectionItemSubclass(list.get(8).toString());
-                }
-                StandardProductList db_str;
-                try {
-                    db_str = standardProductListMapper.getOne(str.getStandardMethodListId(), str.getInspectionItem(), str.getSample(), str.getInspectionItemSubclass(), str.getModel(), str.getInspectionItemClass());
-                } catch (Exception e) {
-                    throw new BaseException("閲嶅鏌ヨ锛�" + str.getInspectionItem() + " " + str.getInspectionItemSubclass());
-                }
-                if (ObjectUtils.isNotEmpty(db_str)) {
-                    str.setId(db_str.getId());
-                    str.setStructureItemParameterId(db_str.getStructureItemParameterId());
-                }
-                if (list.get(10) != null) {
-                    str.setMethodS(list.get(10) + "");
-                }
-                if (list.get(13) == null) {
-                    str.setTell(null);
-                } else {
-                    str.setTell(list.get(13).toString());
-                }
-
-                if (list.get(14) == null) {
-                    str.setAsk(null);
-                } else {
-                    str.setAsk(list.get(14).toString());
-                }
-
-                if (list.get(15) == null) {
-                    str.setPrice(null);
-                } else {
-                    str.setPrice((list.get(15).toString()));
-                }
-
-                if (list.get(16) == null) {
-                    str.setManHour(null);
-                } else {
-                    str.setManHour(list.get(16).toString());
-                }
-
-                StandardTemplate standTempIdByName = standardTemplateService.getStandTempIdByName(String.valueOf(list.get(23)));
-                if (standTempIdByName != null) {
-                    str.setTemplateId(standTempIdByName.getId());
-                } else {
-                    throw new BaseException("妯℃澘涓嶅瓨鍦細" + list.get(23));
-                }
-                str.setFactory("涓ぉ绉戞妧妫�娴嬩腑蹇�");
-                str.setLaboratory(laboratory.get());
-                str.setState(1);
-                str.setTree(str.getFactory() + " - " + str.getLaboratory() + " - " + str.getSampleType() + " - " + str.getSample() + " - " + (str.getModel() == null ? "" : str.getModel()));
-                try {
-                    str.setStructureItemParameterId(standardTreeMapper.getStructureItemParameterId("\"" + str.getSampleType() + "\"", str.getInspectionItem(), str.getInspectionItemSubclass(), str.getInspectionItemClass()));
-                } catch (Exception e) {
-                    str.setStructureItemParameterId(standardTreeMapper.getStructureItemParameterId("\"" + str.getSampleType() + "\",\"" + str.getSample() + "\"", str.getInspectionItem(), str.getInspectionItemSubclass(), str.getInspectionItemClass()));
-                }
-                if (str.getStructureItemParameterId() == null) {
-                    throw new BaseException("妫�楠岄」鐩笉瀛樺湪锛�" + str.getInspectionItem() + " " + str.getInspectionItemSubclass());
-                }
-                lists.add(str);
-            }
-        });
-        lists.forEach(a -> {
-            if (a.getId() != null) {
-                standardProductListMapper.updateById(a);
-            } else {
-                standardProductListMapper.insert(a);
-            }
-        });
-    }
-
-    @Override
     public boolean updateTreeSort(List<FactoryDto> list) {
         List<StructureTestObject> testObjects = new ArrayList<>();
         for (FactoryDto factoryDto : list) {
@@ -445,10 +156,18 @@
         // 淇敼鍚嶇О鍖归厤鐨勬爣鍑嗘爲涓嬬殑妫�楠岄」鐩�
         // 鏌ヨ鎵�鏈夊璞�+鍚嶇О鐨勬爲
 
-        List<StandardProductList> standardProductLists = standardProductListService.list(Wrappers.<StandardProductList>lambdaUpdate()
-                .eq(StandardProductList::getSample, standardTree.getSample())
+        LambdaUpdateWrapper<StandardProductList> updateWrapper = Wrappers.<StandardProductList>lambdaUpdate()
+                .eq(StandardProductList::getFactory, standardTree.getFactory())
+                .eq(StandardProductList::getLaboratory, standardTree.getLaboratory())
                 .eq(StandardProductList::getSampleType, standardTree.getSampleType())
-                .eq(StandardProductList::getModel, standardTree.getOldModel()));
+                .eq(StandardProductList::getModel, standardTree.getOldModel());
+        if (StringUtils.isNotBlank(standardTree.getSample()) && !standardTree.getSample().equals("null")) {
+            updateWrapper.eq(StandardProductList::getSample, standardTree.getSample());
+        } else {
+            updateWrapper.isNull(StandardProductList::getSample);
+        }
+
+        List<StandardProductList> standardProductLists = standardProductListService.list(updateWrapper);
         if (CollectionUtils.isNotEmpty(standardProductLists)) {
             for (StandardProductList standardProductList : standardProductLists) {
                 // 淇敼鏍峰搧鍚嶇О
@@ -471,34 +190,14 @@
                 .eq(StandardTree::getSampleType, standardTree.getSampleType())
                 .eq(StandardTree::getModel, standardTree.getOldModel())
                 .set(StandardTree::getModel, standardTree.getModel());
-        if (StringUtils.isNotBlank(standardTree.getSample())) {
+        if (StringUtils.isNotBlank(standardTree.getSample()) && !standardTree.getSample().equals("null")) {
             wrapper.eq(StandardTree::getSample, standardTree.getSample());
+        } else {
+            wrapper.isNull(StandardTree::getSample);
         }
         return standardTreeMapper.update(null, wrapper);
     }
 
-    @Override
-    public void resetTreeOfPrice(String tree, Integer standardId) {
-        standardProductListMapper.update(null, Wrappers.<StandardProductList>lambdaUpdate().like(StandardProductList::getTree, tree).eq(StandardProductList::getStandardMethodListId, standardId).set(StandardProductList::getPrice, null));
-    }
-
-    @Override
-    public void resetTreeOfHour(String tree, Integer standardId) {
-        standardProductListMapper.update(null, Wrappers.<StandardProductList>lambdaUpdate().like(StandardProductList::getTree, tree).eq(StandardProductList::getStandardMethodListId, standardId).set(StandardProductList::getManHour, null));
-    }
-
-    @Override
-    public void resetTreeOfAsk(String tree, Integer standardId) {
-        standardProductListMapper.update(null, Wrappers.<StandardProductList>lambdaUpdate().like(StandardProductList::getTree, tree).eq(StandardProductList::getStandardMethodListId, standardId)
-                .set(StandardProductList::getAsk, null)
-                .set(StandardProductList::getTell, null)
-                .set(StandardProductList::getSection, null)
-                .set(StandardProductList::getCores, null)
-                .set(StandardProductList::getConductorMaterial, null)
-                .set(StandardProductList::getConductorType, null)
-                .set(StandardProductList::getPrice, null)
-                .set(StandardProductList::getManHour, null));
-    }
 
 }
 

--
Gitblit v1.9.3