From 842363b7f6aeac9ebb5f5d5b3272f29163b6317d Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期三, 12 六月 2024 21:09:29 +0800
Subject: [PATCH] 报告修复

---
 cnas-server/src/main/java/com/yuanchu/mom/service/impl/StructureItemParameterServiceImpl.java |    5 --
 inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java        |   14 +++---
 cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java             |   69 ++++++++++++++++++----------------
 inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTreeController.java           |    3 +
 4 files changed, 47 insertions(+), 44 deletions(-)

diff --git a/cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java b/cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java
index 2b08ce6..fe1dd1b 100644
--- a/cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java
+++ b/cnas-server/src/main/java/com/yuanchu/mom/controller/CapacityScopeController.java
@@ -3,7 +3,6 @@
 import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.poi.excel.ExcelUtil;
 import com.alibaba.excel.util.StringUtils;
-import com.alibaba.fastjson2.JSON;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.yuanchu.mom.annotation.ValueAuth;
@@ -24,8 +23,11 @@
 
 import java.io.InputStream;
 import java.math.BigDecimal;
+import java.util.ArrayList;
 import java.util.Arrays;
+import java.util.List;
 import java.util.Map;
+import java.util.concurrent.atomic.AtomicReference;
 
 /**
  * 妫�楠岄」鐩弬鏁�(StructureItemParameter)琛ㄦ帶鍒跺眰
@@ -167,7 +169,12 @@
     @Transactional
     public Result importData(@RequestParam("file") MultipartFile file) throws Exception {
         InputStream inputStream = file.getInputStream();
+        List<StructureItemParameter> lists = new ArrayList<>();
+        AtomicReference<String> sample = new AtomicReference<>();
         ExcelUtil.readBySax(inputStream, 0, (i, l, list1) -> {
+            if(i == 0 && l == 1){
+                sample.set(list1.get(1)+"");
+            }
             if (i == 0 && l >= 1) {
                 StructureItemParameter str = new StructureItemParameter();
                 if (list1.get(1) == null) {
@@ -195,13 +202,18 @@
                     str.setSample(builder.toString());
                 }
                 str.setInspectionItem(list1.get(4).toString());
-
+                str.setInspectionItemEn(list1.get(5).toString());
                 if (list1.get(6) == null) {
                     str.setInspectionItemSubclass(null);
                 } else {
                     str.setInspectionItemSubclass(list1.get(6).toString());
                 }
-                StructureItemParameter db_str = null;
+                if (list1.get(7) == null) {
+                    str.setInspectionItemSubclassEn(null);
+                } else {
+                    str.setInspectionItemSubclassEn(String.valueOf(list1.get(7).toString()));
+                }
+                StructureItemParameter db_str;
                 if (StringUtils.isEmpty(str.getInspectionItemSubclass())){
                     // 姣旇緝涓や釜鏉′欢
                     db_str = structureItemParameterService.getOne(Wrappers.lambdaQuery(StructureItemParameter.class)
@@ -215,14 +227,9 @@
                             .eq(StructureItemParameter::getInspectionItemSubclass,str.getInspectionItemSubclass())
                     );
                 }
-                str.setInspectionItemEn(list1.get(5).toString());
-
-                if (list1.get(7) == null) {
-                    str.setInspectionItemSubclassEn(null);
-                } else {
-                    str.setInspectionItemSubclassEn(String.valueOf(list1.get(7).toString()));
+                if (ObjectUtils.isNotEmpty(db_str)){
+                    str.setId(db_str.getId());
                 }
-
                 if (list1.get(8) == null) {
                     str.setMethod(null);
                 } else {
@@ -231,7 +238,7 @@
                     buffer.append("[");
                     String[] values = input.split("銆�");
                     for (String value : values) {
-                        buffer.append("[\"").append(value.trim()).append("\"],");
+                        buffer.append("\"").append(value.trim()).append("\",");
                     }
                     buffer.deleteCharAt(buffer.length() - 1);
                     buffer.append("]");
@@ -239,9 +246,9 @@
                 }
 
                 if (list1.get(9) == null) {
-                    str.setLaboratory(null);
+                    str.setSonLaboratory(null);
                 } else {
-                    str.setLaboratory(list1.get(9).toString());
+                    str.setSonLaboratory(list1.get(9).toString());
                 }
                 if (list1.get(10) == null) {
                     str.setUnit(null);
@@ -284,7 +291,7 @@
                 } else {
                     str.setManDay(Integer.valueOf(list1.get(16).toString()));
                 }
-                String jy = "0";
+                String jy;
                 if (list1.get(17).toString().equals("闈為噰闆嗙被鍨�")) {
                     jy = "0";
                 } else {
@@ -298,37 +305,35 @@
                             .eq(Enums::getLabel, validateValueType));
                     str.setInspectionValueType(enums.getValue());
                 }
-                int bsm = 0;
+                int bsm;
                 if (list1.get(19).toString().equals("鍚�")) {
                     bsm = 0;
                 } else {
                     bsm = 1;
                 }
                 str.setBsm(bsm + "");
-                StandardTemplate standTempIdByName = standardTemplateService.getStandTempIdByName(String.valueOf(list1.get(20)));
+                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);
                 }
-                str.setSonLaboratory(list1.get(21).toString());
-                structureItemParameterService.removeNoSample(JSON.toJSONString(list1.get(1)));
-                System.out.println(JSON.toJSONString(list1.get(1)));
-                // 濡傛灉鏁版嵁搴撻噷闈㈢殑鏁版嵁瀛樺湪閭d箞灏辨墽琛屾洿鏂版嫹璐濇搷浣�
-                try {
-                    if (ObjectUtils.isNotEmpty(db_str)){
-                        str.setId(db_str.getId());
-                        // 灏� str 杩涜鏇存柊
-                        structureItemParameterService.updateById(str);
-                    }else{
-                        structureItemParameterService.save(str);
-                    }
-                } catch (Exception e) {
-                    e.printStackTrace();
-                    throw new RuntimeException("鏈嶅姟绔姤閿欏暒!!!");
-                }
+                lists.add(str);
             }
         });
+        structureItemParameterService.removeNoSample(sample.get());
+        // 濡傛灉鏁版嵁搴撻噷闈㈢殑鏁版嵁瀛樺湪閭d箞灏辨墽琛屾洿鏂版嫹璐濇搷浣�
+        try {
+            structureItemParameterService.saveBatch(lists);
+        } catch (Exception e) {
+            e.printStackTrace();
+            throw new RuntimeException("鏈嶅姟绔姤閿欏暒!!!");
+        }
         return Result.success();
     }
 }
\ No newline at end of file
diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/StructureItemParameterServiceImpl.java b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/StructureItemParameterServiceImpl.java
index 7c1d7c4..e10c22d 100644
--- a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/StructureItemParameterServiceImpl.java
+++ b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/StructureItemParameterServiceImpl.java
@@ -2,9 +2,7 @@
 
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.yuanchu.mom.mapper.ProductMapper;
 import com.yuanchu.mom.mapper.StructureItemParameterMapper;
-import com.yuanchu.mom.pojo.Product;
 import com.yuanchu.mom.pojo.StructureItemParameter;
 import com.yuanchu.mom.service.StructureItemParameterService;
 import lombok.AllArgsConstructor;
@@ -21,7 +19,6 @@
 
     @Override
     public void removeNoSample(String sample) {
-        structureItemParameterMapper.removeNoSample("閲戝叿");
-        return;
+        structureItemParameterMapper.removeNoSample(sample);
     }
 }
\ No newline at end of file
diff --git a/inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTreeController.java b/inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTreeController.java
index c41b490..9952349 100644
--- a/inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTreeController.java
+++ b/inspect-server/src/main/java/com/yuanchu/mom/controller/StandardTreeController.java
@@ -59,7 +59,8 @@
     @ValueClassify("鏍囧噯搴�")
     @ApiOperation(value = "淇敼鏍囧噯搴撲腑鐨勫唴瀹�")
     @PostMapping("/upStandardProductList")
-    public Result upStandardProductList(@RequestBody StandardProductList list){
+    public Result upStandardProductList(String str){
+        StandardProductList list = JSON.parseObject(str, StandardProductList.class);
         return Result.success(standardProductListService.upStandardProductList(list));
     }
     @ValueAuth
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 cf6e12b..3aa1132 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
@@ -453,6 +453,7 @@
                 for (InsProduct insProduct : insProducts) {
                     if (insProduct.getInsResult() == 0) {
                         InsUnPass insUnPass = new InsUnPass();
+                        insUnPass.setId(null);
                         insUnPass.setModel(insSample.getModel());
                         insUnPass.setSample(insSample.getSample());
                         insUnPass.setInspectionItem(insProduct.getInspectionItem());
@@ -465,16 +466,14 @@
                         insUnPasses.add(insUnPass);
                     }
                 }
-                insUnPassService.saveBatch(insUnPasses);
             }
+            insUnPassService.saveBatch(insUnPasses);
             InsOrder insOrder = insOrderMapper.selectById(orderId);
             Map<String, String> user = insProductMapper.selectUserById(insOrder.getUserId());
             List<SampleProductDto> samples = insSampleMapper.selectSampleProductListByOrderId(orderId);
             InsReport insReport = new InsReport();
             insReport.setCode(insOrder.getEntrustCode());
             insReport.setInsOrderId(orderId);
-            Set<Integer> set = new HashSet<>();
-            Map<Integer, String> map2 = new HashMap<>();
             List<Map<String, Object>> tables = new ArrayList<>();
             Set<String> standardMethod = new HashSet<>();
             Set<String> deviceSet = new HashSet<>();
@@ -484,6 +483,8 @@
             AtomicReference<String> resultCh = new AtomicReference<>("");
             AtomicReference<String> resultEn = new AtomicReference<>("");
             samples.forEach(a -> {
+                Set<Integer> set = new HashSet<>();
+                Map<Integer, String> map2 = new HashMap<>();
                 Long productCount = insProductMapper.selectCount(Wrappers.<InsProduct>lambdaQuery().eq(InsProduct::getInsSampleId, a.getId()));
                 productSize.set(productSize.get() + Integer.parseInt(productCount + ""));
                 models.add(a.getModel());
@@ -778,7 +779,7 @@
             ConfigureBuilder builder = Configure.builder();
             builder.useSpringEL(true);
             List<Map<String, String>> finalDeviceList = deviceList;
-            Integer userId = insSampleUserMapper.selectOne(Wrappers.<InsSampleUser>lambdaQuery().eq(InsSampleUser::getInsSampleId, orderId).orderByDesc(InsSampleUser::getCreateTime).last("limit 1")).getUserId();
+            Integer userId = insSampleUserMapper.selectOne(Wrappers.<InsSampleUser>lambdaQuery().eq(InsSampleUser::getInsSampleId, orderId).last("limit 1")).getUserId();
             String signatureUrl;
             try {
                 signatureUrl = userMapper.selectById(userId).getSignatureUrl();
@@ -945,10 +946,10 @@
                     tableRenderData.setRows(rows);
                     int countSize = tableRenderData.getRows().get(0).getCells().size();
                     for (RowRenderData row : tableRenderData.getRows()) {
-                        for (CellRenderData cell : row.getCells()) {
+                        /*for (CellRenderData cell : row.getCells()) {
                             System.out.print(cell.getParagraphs().get(0).getContents());
                         }
-                        System.out.println("");
+                        System.out.println("");*/
                         if (row.getCells().size() != countSize) {
                             throw new ErrorException("姣忚鍗曞厓鏍间笉鐩哥瓑");
                         }
@@ -973,7 +974,6 @@
                     tables2.add(table);
                 });
             }
-
 
             XWPFTemplate template = XWPFTemplate.compile(url, builder.build()).render(
                     new HashMap<String, Object>() {{

--
Gitblit v1.9.3