From 30ca7a8dc82a7cfadadb37d8e9e6b8e68be06f27 Mon Sep 17 00:00:00 2001
From: zhuo <2089219845@qq.com>
Date: 星期四, 08 五月 2025 13:06:51 +0800
Subject: [PATCH] 检验项添加抽样类型绑定

---
 basic-server/src/main/java/com/ruoyi/basic/mapper/StructureItemParameterMapper.java            |    8 
 basic-server/src/main/java/com/ruoyi/basic/pojo/StructureItemParameter.java                    |    3 
 basic-server/src/main/java/com/ruoyi/basic/controller/CapacityScopeController.java             |  244 ------------------------
 basic-server/src/main/java/com/ruoyi/basic/service/impl/StructureItemParameterServiceImpl.java |  272 +++++++++++++++++++++++++++
 basic-server/src/main/resources/mapper/StructureItemParameterMapper.xml                        |   16 +
 basic-server/src/main/java/com/ruoyi/basic/service/StructureItemParameterService.java          |   10 
 6 files changed, 301 insertions(+), 252 deletions(-)

diff --git a/basic-server/src/main/java/com/ruoyi/basic/controller/CapacityScopeController.java b/basic-server/src/main/java/com/ruoyi/basic/controller/CapacityScopeController.java
index e927343..2f5df2e 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/controller/CapacityScopeController.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/controller/CapacityScopeController.java
@@ -1,41 +1,26 @@
 package com.ruoyi.basic.controller;
 
-import cn.hutool.core.util.ObjectUtil;
-import cn.hutool.poi.excel.ExcelUtil;
 import com.alibaba.excel.EasyExcel;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.ruoyi.common.core.domain.Result;
-import com.ruoyi.common.core.domain.entity.SysDictData;
-import com.ruoyi.system.service.ISysDictTypeService;
 import com.ruoyi.basic.dto.PageTestObjectDto;
 import com.ruoyi.basic.dto.ProductDTO1;
 import com.ruoyi.basic.excel.StructureTestObjectData;
 import com.ruoyi.basic.excel.StructureTestObjectListener;
 import com.ruoyi.basic.pojo.Product;
-import com.ruoyi.basic.pojo.StandardTemplate;
 import com.ruoyi.basic.pojo.StructureItemParameter;
 import com.ruoyi.basic.pojo.StructureTestObject;
 import com.ruoyi.basic.service.CapacityScopeService;
 import com.ruoyi.basic.service.ProductService;
-import com.ruoyi.basic.service.StandardTemplateService;
 import com.ruoyi.basic.service.StructureItemParameterService;
+import com.ruoyi.common.core.domain.Result;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
-import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.List;
-import java.util.concurrent.atomic.AtomicReference;
-import java.util.stream.Collectors;
 
 /**
  * 妫�楠岄」鐩弬鏁�(StructureItemParameter)琛ㄦ帶鍒跺眰
@@ -55,9 +40,6 @@
 
     private StructureItemParameterService structureItemParameterService;
 
-    private ISysDictTypeService dictTypeService;
-
-    private StandardTemplateService standardTemplateService;
 
     @ApiOperation(value = "鑾峰彇椤圭洰妫�楠屽弬鏁板垪琛�")
     @GetMapping("/selectItemParameterList")
@@ -154,229 +136,7 @@
     @PostMapping("/importEquipData")
     @Transactional
     public Result importEquipData(@RequestParam("file") MultipartFile file) throws Exception {
-        InputStream inputStream = file.getInputStream();
-        List<StructureItemParameter> lists = new ArrayList<>();
-        AtomicReference<String> sample = new AtomicReference<>();
-        ExcelUtil.readBySax(inputStream, -1, (i, l, list1) -> {
-            if (l == 1) {
-                sample.set(list1.get(1) + "");
-            }
-            if (l >= 1) {
-                StructureItemParameter str = new StructureItemParameter();
-                // 娴嬭瘯瀵硅薄
-                if (list1.get(1) == null) {
-                    str.setSample(null);
-                } else {
-                    String brand = (String) list1.get(1);
-                    StringBuilder builder = new StringBuilder();
-                    builder.append("[");
-                    // 浜у搧
-                    if (ObjectUtil.isNotEmpty(list1.get(2))) {
-                        String production = (String) list1.get(2);
-                        if (!production.contains("锛�")) {
-                            builder.append(String.format("[\"%s\",\"%s\"]", brand, production));
-                        } else {
-                            Arrays.stream(production.split("锛�")).forEach(item -> {
-                                builder.append(String.format("[\"%s\",\"%s\"],", brand, item));
-                            });
-                            builder.deleteCharAt(builder.length() - 1);
-                        }
-                    } else {
-                        builder.append("[");
-                        builder.append(String.format("\"%s\"", brand));
-                        builder.append("]");
-                    }
-                    builder.append("]");
-                    str.setSample(builder.toString());
-                }
-                // 妫�楠岄」
-                str.setInspectionItem(list1.get(4).toString().trim());
-                // 妫�楠岄」鑻辨枃
-                if (list1.get(5) != null) {
-                    str.setInspectionItemEn(list1.get(5).toString());
-                }
-                // 妫�楠屽瓙椤�
-                if (list1.get(6) == null) {
-                    str.setInspectionItemSubclass(null);
-                } else {
-                    str.setInspectionItemSubclass(list1.get(6).toString().trim());
-                }
-                // 妫�楠屽瓙椤硅嫳鏂�
-                if (list1.get(7) == null) {
-                    str.setInspectionItemSubclassEn(null);
-                } else {
-                    str.setInspectionItemSubclassEn(String.valueOf(list1.get(7).toString()));
-                }
-                // 妫�楠岄」鍒嗙被
-                if (list1.get(22) != null && list1.get(22) != "") {
-                    str.setInspectionItemClass(list1.get(22).toString().trim());
-                } else {
-                    str.setInspectionItemClass(null);
-                }
-                // 妫�楠岄」鍒嗙被鑻辨枃
-                if (list1.get(23) != null && list1.get(23) != "") {
-                    str.setInspectionItemClassEn(list1.get(23) + "");
-                } else {
-                    str.setInspectionItemClassEn(null);
-                }
-
-                LambdaQueryWrapper<StructureItemParameter> wrapper = Wrappers.lambdaQuery(StructureItemParameter.class)
-                        .eq(StructureItemParameter::getInspectionItem, str.getInspectionItem())
-                        .eq(StructureItemParameter::getSample, str.getSample())
-
-                        .last("limit 1");
-                // 鍒ゆ柇鏄惁鏈夋楠岄」绫诲瀷
-                if (ObjectUtils.isNotEmpty(str.getInspectionItemClass())) {
-                    wrapper.eq(StructureItemParameter::getInspectionItemClass, str.getInspectionItemClass());
-                }
-
-                // 鍒ゆ柇鏄惁鏈夋楠屽瓙椤�
-                if (ObjectUtils.isNotEmpty(str.getInspectionItemSubclass())) {
-                    wrapper.eq(StructureItemParameter::getInspectionItemSubclass, str.getInspectionItemSubclass());
-                }
-                StructureItemParameter db_str = structureItemParameterService.getOne(wrapper);
-                if (ObjectUtils.isNotEmpty(db_str)) {
-                    str.setId(db_str.getId());
-                }
-                // 鏂规硶鍚嶇О
-                if (list1.get(8) == null) {
-                    str.setMethod(null);
-                } else {
-                    StringBuffer buffer = new StringBuffer();
-                    String input = list1.get(8).toString();
-                    buffer.append("[");
-                    String[] values = input.split("锛�");
-                    for (String value : values) {
-                        buffer.append("\"").append(value.trim()).append("\",");
-                    }
-                    buffer.deleteCharAt(buffer.length() - 1);
-                    buffer.append("]");
-                    str.setMethod(buffer.toString());
-                }
-                // 璇曢獙瀹�
-                if (list1.get(9) == null) {
-                    str.setSonLaboratory(null);
-                } else {
-                    str.setSonLaboratory(list1.get(9).toString());
-                }
-                // 璁¢噺鍗曚綅
-                if (list1.get(10) == null) {
-                    str.setUnit(null);
-                } else {
-                    str.setUnit(list1.get(10).toString());
-                }
-                // 瑕佹眰鍊�
-                if (list1.get(11) == null) {
-                    str.setAskTell(null);
-                } else {
-                    str.setAskTell(list1.get(11).toString());
-                }
-                // 瑕佹眰鎻忚堪
-                if (list1.get(12) == null) {
-                    str.setAsk(null);
-                } else {
-                    str.setAsk(list1.get(12).toString());
-                }
-                // 鍗曚环
-                if (list1.get(13) == null) {
-                    str.setPrice(null);
-                } else {
-                    str.setPrice(list1.get(13) + "");
-                }
-                // 宸ユ椂绯绘暟
-                if (list1.get(14) == null) {
-                    str.setManHour(null);
-                } else {
-                    str.setManHour(Double.valueOf(list1.get(14).toString()));
-                }
-                // 宸ユ椂鍒嗙粍
-                if (list1.get(15) == null) {
-                    str.setManHourGroup(null);
-                } else {
-                    str.setManHourGroup(list1.get(15).toString());
-                }
-                // 棰勮瀹屾垚鏃堕棿
-                if (list1.get(16) == null) {
-                    str.setManDay(null);
-                } else {
-                    str.setManDay(Integer.valueOf(list1.get(16).toString()));
-                }
-                // 鏁版嵁绫诲瀷
-                String jy;
-                if (list1.get(17).toString().equals("闈為噰闆嗙被鍨�")) {
-                    jy = "0";
-                } else {
-                    jy = "1";
-                }
-                str.setInspectionItemType(jy);
-                // 妫�楠岄」绫诲瀷
-                String validateValueType = list1.get(18).toString();
-                if (ObjectUtils.isNotEmpty(validateValueType)) {
-                    List<SysDictData> enums = dictTypeService.selectDictDataByName("妫�楠屽�肩被鍨�")
-                            .stream().filter(sysDictData -> sysDictData.getDictLabel().equals(validateValueType)).collect(Collectors.toList());
-                    str.setInspectionValueType(enums.get(0).getDictValue());
-                }
-                int bsm;
-                //鐗规畩鏍囪瘑
-                if (list1.get(19).toString().equals("鍚�")) {
-                    bsm = 0;
-                } else {
-                    bsm = 1;
-                }
-                str.setBsm(bsm + "");
-                // 鏁板瓧瀛楀吀
-                if (list1.get(20) != null) {
-                    str.setDic(list1.get(20) + "");
-                } else {
-                    str.setDic(null);
-                }
-                // 鍘熷璁板綍妯℃澘
-                StandardTemplate standTempIdByName = standardTemplateService.getStandTempIdByName(String.valueOf(list1.get(21)));
-                if (standTempIdByName != null) {
-                    str.setTemplateId(standTempIdByName.getId());
-                } else {
-                    str.setTemplateId(null);
-                }
-                try {
-                    if (list1.get(24) != null) {
-                        str.setLaboratory(list1.get(24) + "");
-                    }
-                } catch (Exception e) {
-                }
-
-                // 鏉′欢
-                if (list1.get(25) == null) {
-                    str.setRadiusList(null);
-                } else {
-                    StringBuffer buffer = new StringBuffer();
-                    String input = list1.get(25).toString();
-                    buffer.append("[");
-                    String[] values = input.split("锛�");
-                    for (String value : values) {
-                        buffer.append("\"").append(value.trim()).append("\",");
-                    }
-                    buffer.deleteCharAt(buffer.length() - 1);
-                    buffer.append("]");
-                    str.setRadiusList(buffer.toString());
-                }
-                //鏀惰垂鏍囧噯
-                if (list1.get(26) == null) {
-                    str.setRates(null);
-                } else {
-                    str.setRates(list1.get(26) + "");
-                }
-
-                lists.add(str);
-            }
-        });
-//        structureItemParameterService.removeNoSample(sample.get());
-        // 濡傛灉鏁版嵁搴撻噷闈㈢殑鏁版嵁瀛樺湪閭d箞灏辨墽琛屾洿鏂版嫹璐濇搷浣�
-        try {
-            structureItemParameterService.saveOrUpdateBatch(lists);
-        } catch (Exception e) {
-            e.printStackTrace();
-            throw new RuntimeException("鏈嶅姟绔姤閿�");
-        }
+        structureItemParameterService.importEquipData(file);
         return Result.success();
     }
 
diff --git a/basic-server/src/main/java/com/ruoyi/basic/mapper/StructureItemParameterMapper.java b/basic-server/src/main/java/com/ruoyi/basic/mapper/StructureItemParameterMapper.java
index 654741a..017c66a 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/mapper/StructureItemParameterMapper.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/mapper/StructureItemParameterMapper.java
@@ -25,6 +25,12 @@
 
     List<TestItemDto> getItemTree();
 
-    int removeNoSample(@Param("sample") String sample);
+
+    /**
+     * 鏌ヨ璁惧淇℃伅
+     * @param managementNumberList
+     * @return
+     */
+    List<Integer> selectDeviceIdsByNumber(@Param("managementNumberList") List<String> managementNumberList);
 }
 
diff --git a/basic-server/src/main/java/com/ruoyi/basic/pojo/StructureItemParameter.java b/basic-server/src/main/java/com/ruoyi/basic/pojo/StructureItemParameter.java
index 1938e9c..847caa4 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/pojo/StructureItemParameter.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/pojo/StructureItemParameter.java
@@ -120,5 +120,8 @@
     @ApiModelProperty(value = "璁惧id")
     private String deviceIds;
 
+    @ApiModelProperty(value = "鎶芥绫诲瀷, 1:鏈堝害, 2:瀛e害, 3:骞村害")
+    private String spotCheckType;
+
 }
 
diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/StructureItemParameterService.java b/basic-server/src/main/java/com/ruoyi/basic/service/StructureItemParameterService.java
index a697619..d22d250 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/StructureItemParameterService.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/StructureItemParameterService.java
@@ -2,7 +2,15 @@
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ruoyi.basic.pojo.StructureItemParameter;
+import org.springframework.web.multipart.MultipartFile;
+
+import java.io.IOException;
 
 public interface StructureItemParameterService extends IService<StructureItemParameter> {
-    void removeNoSample(String sample);
+
+    /**
+     * 瀵煎叆妫�楠岄」鐩�
+     * @param file
+     */
+    void importEquipData(MultipartFile file) throws IOException;
 }
diff --git a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StructureItemParameterServiceImpl.java b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StructureItemParameterServiceImpl.java
index 4009106..6c3275e 100644
--- a/basic-server/src/main/java/com/ruoyi/basic/service/impl/StructureItemParameterServiceImpl.java
+++ b/basic-server/src/main/java/com/ruoyi/basic/service/impl/StructureItemParameterServiceImpl.java
@@ -1,14 +1,34 @@
 package com.ruoyi.basic.service.impl;
 
 
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.poi.excel.ExcelUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.basic.mapper.StructureItemParameterMapper;
+import com.ruoyi.basic.pojo.StandardTemplate;
 import com.ruoyi.basic.pojo.StructureItemParameter;
+import com.ruoyi.basic.service.StandardTemplateService;
 import com.ruoyi.basic.service.StructureItemParameterService;
+import com.ruoyi.common.core.domain.entity.SysDictData;
+import com.ruoyi.system.service.ISysDictTypeService;
 import lombok.AllArgsConstructor;
+import org.apache.commons.lang3.ObjectUtils;
 import org.springframework.stereotype.Service;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.annotation.Resource;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.concurrent.atomic.AtomicReference;
+import java.util.stream.Collectors;
 
 @Service
 @AllArgsConstructor
@@ -16,9 +36,257 @@
 
     @Resource
     private StructureItemParameterMapper structureItemParameterMapper;
+    @Resource
+    private ISysDictTypeService dictTypeService;
+    @Resource
+    private StandardTemplateService standardTemplateService;
 
+    /**
+     *
+     * @param file
+     */
     @Override
-    public void removeNoSample(String sample) {
-        structureItemParameterMapper.removeNoSample("\""+sample+"\"");
+    public void importEquipData(MultipartFile file) throws IOException {
+        InputStream inputStream = file.getInputStream();
+        List<StructureItemParameter> lists = new ArrayList<>();
+        AtomicReference<String> sample = new AtomicReference<>();
+        ExcelUtil.readBySax(inputStream, -1, (i, l, list1) -> {
+            if (l == 1) {
+                sample.set(list1.get(1) + "");
+            }
+            if (l >= 1) {
+                StructureItemParameter str = new StructureItemParameter();
+                // 娴嬭瘯瀵硅薄
+                if (list1.get(1) == null) {
+                    str.setSample(null);
+                } else {
+                    String brand = (String) list1.get(1);
+                    StringBuilder builder = new StringBuilder();
+                    builder.append("[");
+                    // 浜у搧
+                    if (ObjectUtil.isNotEmpty(list1.get(2))) {
+                        String production = (String) list1.get(2);
+                        if (!production.contains("锛�")) {
+                            builder.append(String.format("[\"%s\",\"%s\"]", brand, production));
+                        } else {
+                            Arrays.stream(production.split("锛�")).forEach(item -> {
+                                builder.append(String.format("[\"%s\",\"%s\"],", brand, item));
+                            });
+                            builder.deleteCharAt(builder.length() - 1);
+                        }
+                    } else {
+                        builder.append("[");
+                        builder.append(String.format("\"%s\"", brand));
+                        builder.append("]");
+                    }
+                    builder.append("]");
+                    str.setSample(builder.toString());
+                }
+                // 妫�楠岄」
+                str.setInspectionItem(list1.get(4).toString().trim());
+                // 妫�楠岄」鑻辨枃
+                if (list1.get(5) != null) {
+                    str.setInspectionItemEn(list1.get(5).toString());
+                }
+                // 妫�楠屽瓙椤�
+                if (list1.get(6) == null) {
+                    str.setInspectionItemSubclass(null);
+                } else {
+                    str.setInspectionItemSubclass(list1.get(6).toString().trim());
+                }
+                // 妫�楠屽瓙椤硅嫳鏂�
+                if (list1.get(7) == null) {
+                    str.setInspectionItemSubclassEn(null);
+                } else {
+                    str.setInspectionItemSubclassEn(String.valueOf(list1.get(7).toString()));
+                }
+                // 妫�楠岄」鍒嗙被
+                if (list1.get(22) != null && list1.get(22) != "") {
+                    str.setInspectionItemClass(list1.get(22).toString().trim());
+                } else {
+                    str.setInspectionItemClass(null);
+                }
+                // 妫�楠岄」鍒嗙被鑻辨枃
+                if (list1.get(23) != null && list1.get(23) != "") {
+                    str.setInspectionItemClassEn(list1.get(23) + "");
+                } else {
+                    str.setInspectionItemClassEn(null);
+                }
+
+                LambdaQueryWrapper<StructureItemParameter> wrapper = Wrappers.lambdaQuery(StructureItemParameter.class)
+                        .eq(StructureItemParameter::getInspectionItem, str.getInspectionItem())
+                        .eq(StructureItemParameter::getSample, str.getSample())
+
+                        .last("limit 1");
+                // 鍒ゆ柇鏄惁鏈夋楠岄」绫诲瀷
+                if (ObjectUtils.isNotEmpty(str.getInspectionItemClass())) {
+                    wrapper.eq(StructureItemParameter::getInspectionItemClass, str.getInspectionItemClass());
+                }
+
+                // 鍒ゆ柇鏄惁鏈夋楠屽瓙椤�
+                if (ObjectUtils.isNotEmpty(str.getInspectionItemSubclass())) {
+                    wrapper.eq(StructureItemParameter::getInspectionItemSubclass, str.getInspectionItemSubclass());
+                }
+                StructureItemParameter db_str = this.getOne(wrapper);
+                if (ObjectUtils.isNotEmpty(db_str)) {
+                    str.setId(db_str.getId());
+                }
+                // 鏂规硶鍚嶇О
+                if (list1.get(8) == null) {
+                    str.setMethod(null);
+                } else {
+                    StringBuffer buffer = new StringBuffer();
+                    String input = list1.get(8).toString();
+                    buffer.append("[");
+                    String[] values = input.split("锛�");
+                    for (String value : values) {
+                        buffer.append("\"").append(value.trim()).append("\",");
+                    }
+                    buffer.deleteCharAt(buffer.length() - 1);
+                    buffer.append("]");
+                    str.setMethod(buffer.toString());
+                }
+                // 璇曢獙瀹�
+                if (list1.get(9) == null) {
+                    str.setSonLaboratory(null);
+                } else {
+                    str.setSonLaboratory(list1.get(9).toString());
+                }
+                // 璁¢噺鍗曚綅
+                if (list1.get(10) == null) {
+                    str.setUnit(null);
+                } else {
+                    str.setUnit(list1.get(10).toString());
+                }
+                // 瑕佹眰鍊�
+                if (list1.get(11) == null) {
+                    str.setAskTell(null);
+                } else {
+                    str.setAskTell(list1.get(11).toString());
+                }
+                // 瑕佹眰鎻忚堪
+                if (list1.get(12) == null) {
+                    str.setAsk(null);
+                } else {
+                    str.setAsk(list1.get(12).toString());
+                }
+                // 鍗曚环
+                if (list1.get(13) == null) {
+                    str.setPrice(null);
+                } else {
+                    str.setPrice(list1.get(13) + "");
+                }
+                // 宸ユ椂绯绘暟
+                if (list1.get(14) == null) {
+                    str.setManHour(null);
+                } else {
+                    str.setManHour(Double.valueOf(list1.get(14).toString()));
+                }
+                // 宸ユ椂鍒嗙粍
+                if (list1.get(15) == null) {
+                    str.setManHourGroup(null);
+                } else {
+                    str.setManHourGroup(list1.get(15).toString());
+                }
+                // 棰勮瀹屾垚鏃堕棿
+                if (list1.get(16) == null) {
+                    str.setManDay(null);
+                } else {
+                    str.setManDay(Integer.valueOf(list1.get(16).toString()));
+                }
+                // 鏁版嵁绫诲瀷
+                String jy;
+                if (list1.get(17).toString().equals("闈為噰闆嗙被鍨�")) {
+                    jy = "0";
+                } else {
+                    jy = "1";
+                    // 缁戝畾璁惧
+                    if (list1.get(28) == null) {
+                        str.setRates(null);
+                    } else {
+                        // 鏌ヨ璁惧淇℃伅
+                        List<String> managementNumberList = StrUtil.split(list1.get(28).toString(), '锛�');
+                        if (CollectionUtils.isNotEmpty(managementNumberList)) {
+                            List<Integer> deviceIds = structureItemParameterMapper.selectDeviceIdsByNumber(managementNumberList);
+                            if (CollectionUtils.isNotEmpty(deviceIds)) {
+                                str.setDeviceIds(CollUtil.join(deviceIds, ","));
+                            }
+                        }
+                    }
+
+                }
+                str.setInspectionItemType(jy);
+                // 妫�楠岄」绫诲瀷
+                String validateValueType = list1.get(18).toString();
+                if (ObjectUtils.isNotEmpty(validateValueType)) {
+                    List<SysDictData> enums = dictTypeService.selectDictDataByName("妫�楠屽�肩被鍨�")
+                            .stream().filter(sysDictData -> sysDictData.getDictLabel().equals(validateValueType)).collect(Collectors.toList());
+                    str.setInspectionValueType(enums.get(0).getDictValue());
+                }
+                int bsm;
+                //鐗规畩鏍囪瘑
+                if (list1.get(19).toString().equals("鍚�")) {
+                    bsm = 0;
+                } else {
+                    bsm = 1;
+                }
+                str.setBsm(bsm + "");
+                // 鏁板瓧瀛楀吀
+                if (list1.get(20) != null) {
+                    str.setDic(list1.get(20) + "");
+                } else {
+                    str.setDic(null);
+                }
+                // 鍘熷璁板綍妯℃澘
+                StandardTemplate standTempIdByName = standardTemplateService.getStandTempIdByName(String.valueOf(list1.get(21)));
+                if (standTempIdByName != null) {
+                    str.setTemplateId(standTempIdByName.getId());
+                } else {
+                    str.setTemplateId(null);
+                }
+                try {
+                    if (list1.get(24) != null) {
+                        str.setLaboratory(list1.get(24) + "");
+                    }
+                } catch (Exception e) {
+                }
+
+                // 鏉′欢
+                if (list1.get(25) == null) {
+                    str.setRadiusList(null);
+                } else {
+                    StringBuffer buffer = new StringBuffer();
+                    String input = list1.get(25).toString();
+                    buffer.append("[");
+                    String[] values = input.split("锛�");
+                    for (String value : values) {
+                        buffer.append("\"").append(value.trim()).append("\",");
+                    }
+                    buffer.deleteCharAt(buffer.length() - 1);
+                    buffer.append("]");
+                    str.setRadiusList(buffer.toString());
+                }
+                //鏀惰垂鏍囧噯
+                if (list1.get(26) == null) {
+                    str.setRates(null);
+                } else {
+                    str.setRates(list1.get(26) + "");
+                }
+                // 鎶芥牱绫诲瀷
+                String spotCheckType = list1.get(27).toString();
+                if (ObjectUtils.isNotEmpty(spotCheckType)) {
+                    List<SysDictData> enums = dictTypeService.selectDictDataByName("鎶芥绫诲瀷")
+                            .stream().filter(sysDictData -> sysDictData.getDictLabel().equals(spotCheckType)).collect(Collectors.toList());
+                    str.setSpotCheckType(enums.get(0).getDictValue());
+                }
+                lists.add(str);
+            }
+        });
+        try {
+            this.saveOrUpdateBatch(lists);
+        } catch (Exception e) {
+            e.printStackTrace();
+            throw new RuntimeException("鏈嶅姟绔姤閿�");
+        }
     }
 }
diff --git a/basic-server/src/main/resources/mapper/StructureItemParameterMapper.xml b/basic-server/src/main/resources/mapper/StructureItemParameterMapper.xml
index b0139da..c18b8e7 100644
--- a/basic-server/src/main/resources/mapper/StructureItemParameterMapper.xml
+++ b/basic-server/src/main/resources/mapper/StructureItemParameterMapper.xml
@@ -3,11 +3,7 @@
         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.ruoyi.basic.mapper.StructureItemParameterMapper">
-    <delete id="removeNoSample">
-        delete
-        from structure_item_parameter
-        where sample like concat('%', #{sample}, '%')
-    </delete>
+
     <select id="selectItemParameterList" resultType="com.ruoyi.basic.pojo.StructureItemParameter">
         select * from (select A.id,
         inspection_item,
@@ -41,7 +37,8 @@
         code,
         radius_list,
         rates,
-        device_ids
+        device_ids,
+        spot_check_type
         from (select *,
         CASE
         WHEN INSTR(sample, ',') > 0 THEN
@@ -109,6 +106,13 @@
         from structure_test_object sto
                  left join product p on p.object_id = sto.id
     </select>
+    <select id="selectDeviceIdsByNumber" resultType="java.lang.Integer">
+        select id from device
+        where management_number in
+        <foreach item="item" collection="managementNumberList" open="(" separator="),(" close=")">
+            #{item}
+        </foreach>
+    </select>
 
     <resultMap id="itemDto" type="com.ruoyi.basic.dto.TestItemDto">
         <result column="sId" property="id"/>

--
Gitblit v1.9.3