From de0494d7a6f99f50fa33b9487dd2ffefca82e8b6 Mon Sep 17 00:00:00 2001
From: chenrui <1187576398@qq.com>
Date: 星期二, 08 四月 2025 17:44:47 +0800
Subject: [PATCH] 标准库功能修改

---
 basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java |   60 +++++++++++++++++++++++-------------------------------------
 1 files changed, 23 insertions(+), 37 deletions(-)

diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
index 1f2e03a..c564514 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StandardProductListServiceImpl.java
@@ -18,6 +18,7 @@
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.basic.service.StandardProductListService;
 import lombok.AllArgsConstructor;
+import org.aspectj.weaver.ast.Var;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -90,6 +91,15 @@
         if(StandardProductListChcekTypeEnums.CHECK_ING.getCode().equals(list.getCheckStatus())){
             throw new RuntimeException("瀹℃牳涓笉鏀寔淇敼");
         }
+        // 鍒ゆ柇妫�楠岄」鏄惁涓烘槸鍚﹀鎵樿姹� 鏄殑璇濅笉闇�瑕佸仛澶囦唤鍜岀姸鎬佷慨鏀圭洿鎺ユ洿鏂�
+        StructureItemParameter structureItemParameter = structureItemParameterMapper.selectById(standardProductList.getStructureItemParameterId());
+        if(!ObjectUtils.isEmpty(structureItemParameter) && "1".equals(structureItemParameter.getDelegateRequestFlag())){
+            return standardProductListMapper.updateById(list);
+        }
+        // 鍒ゆ柇鏄惁涓虹敓鏁堢殑淇敼濡傛灉鏄笉鍋氬浠�
+        if(null != list.getState()){
+            return standardProductListMapper.updateById(list);
+        }
         // 鏌ヨ鏈�鏂扮殑涓�娆″叧鑱斿浠� 濡傛灉瀛樺湪璇存槑鏈鏍稿畬缁х画淇敼浜嗐�備笉鍋氭暟鎹鐞嗐��
         StandardProductListBackupRel standardProductListBackupRel = standardProductListBackupRelMapper.selectById(list.getId());
         if(ObjectUtils.isEmpty(standardProductListBackupRel)){
@@ -109,45 +119,18 @@
 
     @Override
     public List<StandardProductList> selectStandardProductList(InsSampleReceiveDto insSample) {
-        // 鏄惁娌℃湁浜у搧
-        boolean isNoSample = false;
-//        String[] models = insSample.getModel().split("-(?=[^-]*$)");//鎷嗗垎鏈�鍚庝竴涓��-銆�
         String model = insSample.getModel();
         String modelNum = insSample.getModelNum();
-        List<StandardProductList> list = standardProductListMapper.selectDetail(insSample.getStandardMethodListId(), 1, model, insSample.getIsCableTag());
-        if (list.size() == 0) {
-            if (Objects.equals(insSample.getFactory(), "") || insSample.getFactory() == null) {
-                return null;
-            }
-            String[] split = insSample.getFactory().split(" - ");
-            split[3] = split[3].replace("- ", "");
-            String tree = split[0] + " - " + split[1] + " - " + split[2] + " - " + split[3] + " - null";
-            list = standardProductListMapper.selectDetail2(insSample.getStandardMethodListId(), 1, tree, insSample.getIsCableTag());
-            if (list.size() == 0) {
-                String tree1 = split[0] + " - " + split[1] + " - " + split[2] + " - null - " + split[3];
-                list = standardProductListMapper.selectDetail2(insSample.getStandardMethodListId(), 1, tree1, insSample.getIsCableTag());
-
-                // 鍙湁瀵硅薄鐨勪竴灞�
-                if (list.size() == 0) {
-                    String tree2 = split[0] + " - " + split[1] + " - " + split[2] + " - null - null";
-                    list = standardProductListMapper.selectDetail2(insSample.getStandardMethodListId(), 1, tree2, insSample.getIsCableTag());
-                    // 鏍峰搧鐩存帴璧嬪�兼牱鍝佸垎绫�
-                    list.forEach(standardProductList -> standardProductList.setSample(standardProductList.getSampleType()));
-                    isNoSample = true;
-                }
-            }
+        // 鏌ヨ妫�鏌ラ」鐩�
+        StandardProductListDto standardProductListDto = new StandardProductListDto();
+        standardProductListDto.setTree(insSample.getFactory());
+        standardProductListDto.setStandardMethodListIds(insSample.getStandardMethodListIds());
+        standardProductListDto.setState(insSample.getState());
+        List<StandardProductList> list = new ArrayList<>();
+        if(CollectionUtils.isEmpty(standardProductListDto.getStandardMethodListIds())) {
+            return list;
         }
-        String[] split1 = insSample.getFactory().split(" - ");
-        if (!isNoSample) {
-            //鍒ゆ柇闀垮害
-            if (split1.length > 4) {
-                if (ObjectUtils.isNotEmpty(split1[3])) {
-                    list = list.stream().filter(list1 -> Objects.nonNull(list1.getSample()) && Objects.equals(list1.getSample(), split1[3])).collect(Collectors.toList());
-                } else if (split1[3].equals("")) {
-                    list = list.stream().filter(list1 -> Objects.nonNull(list1.getSampleType()) && Objects.equals(list1.getSampleType(), split1[2])).collect(Collectors.toList());
-                }
-            }
-        }
+        list = standardProductListMapper.standardProductListNoPage(standardProductListDto);
         list = list.stream().filter(a -> {
                     try {
                         if (a.getSection() != null && !Objects.equals(a.getSection(), "")) {
@@ -394,6 +377,8 @@
         StructureItemParameterDto structureItemParameterDto = new StructureItemParameterDto();
         if(standardMethod.getName().equals("濮旀墭瑕佹眰")){
             structureItemParameterDto.setDelegateRequestFlag("1");
+        }else {
+            structureItemParameterDto.setDelegateRequestFlag("0");
         }
         structureItemParameterDto.setTree(checkItemQueryTree.toString());
 
@@ -427,8 +412,9 @@
             // 濡傛灉鏈粦瀹�
             if(!existFlag){
                 BeanUtils.copyProperties(structureItemParameter, addStandProductList);
+                addStandProductList.setTell(structureItemParameter.getAskTell());
                 addStandProductList.setStructureItemParameterId(structureItemParameter.getId());
-
+                addStandProductList.setManHour(Objects.toString(structureItemParameter.getManHour(), ""));
             }
             addStandProductList.setId(addStandProductList.getId() != null ? addStandProductList.getId() : IdWorker.getId());
             batchInsertStandardProductListArray.add(addStandProductList);

--
Gitblit v1.9.3