From 8abe275e36823f1065300af45e1f7a9a68f549a7 Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期三, 06 九月 2023 16:14:40 +0800
Subject: [PATCH] 修改bug

---
 inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java |   48 ++++++++++++++++++++++++++++++++++++------------
 1 files changed, 36 insertions(+), 12 deletions(-)

diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java
index 580f029..6494553 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/service/impl/InspectionServiceImpl.java
@@ -9,18 +9,21 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.yuanchu.limslaboratory.exception.ApplicationException;
 import com.yuanchu.limslaboratory.mapper.*;
 import com.yuanchu.limslaboratory.pojo.*;
 import com.yuanchu.limslaboratory.pojo.vo.InsProductVo;
 import com.yuanchu.limslaboratory.pojo.vo.InspectDetailVo;
 import com.yuanchu.limslaboratory.pojo.vo.InspectionVo;
 import com.yuanchu.limslaboratory.service.*;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
 import java.util.*;
+import java.util.concurrent.atomic.AtomicBoolean;
 import java.util.stream.Collectors;
 
 /**
@@ -30,6 +33,7 @@
  * @since 2023-08-03 13:03:36
  */
 @Service
+@Slf4j
 public class InspectionServiceImpl extends ServiceImpl<InspectionMapper, Inspection> implements InspectionService {
 
     @Resource
@@ -83,14 +87,13 @@
     //鏂板妫�楠屽崟-->閫夋嫨妫�楠岄」鐩増鏈�
     @Override
     public List<Integer> chooseVer(String name, String mcode, String specifications) {
-        Integer specificationId = getSpecificationId(name, mcode, specifications);
-        return productMapper.chooseVersion(specificationId);
+        return productMapper.chooseVersion(Integer.parseInt(specifications));
     }
 
     //鏂板妫�楠屽崟-->閫夋嫨妫�楠岄」鐩増鏈�-->鏌ョ湅璇ョ増鏈笅鎴戜滑瑕佸仛鐨勯」鐩姹�
     @Override
     public List<Map<String, Object>> lookProByVer(String name, String mcode, String specifications, Integer version, String experiment) {
-        Integer specificationId = getSpecificationId(name, mcode, specifications);
+        Integer specificationId = Integer.parseInt(specifications);
         /*濡傛灉璇曢獙椤圭洰涓虹┖鍒欐槸鎴愬搧妫�楠屾垨鑰呭師鏉愭枡妫�楠屽垯鏄睍绀鸿鐗堟湰鐨勬墍鏈夐」鐩楠岃姹傚弬鏁�*/
         if (ObjectUtils.isEmpty(experiment)) {
             return productMapper.pageProductInformation(specificationId, version);
@@ -119,7 +122,8 @@
      */
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public Integer addInspect(Integer id, InspectionVo inspectionVo) {
+    public Integer addInspect(Integer id, InspectionVo inspectionVo) throws ApplicationException {
+        log.info(inspectionVo.toString());
         /*鏂板妫�楠岀敵璇疯〃*/
         Inspection inspection = Inspection.builder()
                 .startTime(inspectionVo.getStartTime())
@@ -152,14 +156,21 @@
                 .num(inspectionVo.getNum())
                 .unit(inspectionVo.getUnit())
                 .supplier(inspectionVo.getSupplier())
+                .specificationsId(inspectionVo.getSpecificationId())
                 .specifications(inspectionVo.getSpecifications())
                 .formTime(inspectionVo.getFormTime())
                 .inspectionId(inspection.getId())
+                .notes(inspectionVo.getNotes())
                 .build();
         inspectionMaterialMapper.insert(inspectionMaterial);
         /*鏂板妫�楠岄」鐩〃*/
         //鏍规嵁鏍峰搧鍚嶇О缂栧彿浠ュ強鍨嬪彿瑙勬牸鑾峰彇鍨嬪彿id
-        Integer specificationId = getSpecificationId(inspectionVo.getName(), inspectionVo.getMcode(), inspectionVo.getSpecifications());
+        Integer specificationId = Integer.parseInt(inspectionVo.getSpecificationId());
+        //if(ObjectUtils.isNotEmpty(inspectionVo.getSpecificationId())){
+        //    specificationId =Integer.parseInt(inspectionVo.getSpecificationId());
+        //}else{
+        //    specificationId=getSpecificationId(inspectionVo.getName(), inspectionVo.getMcode(), inspectionVo.getSpecifications());
+        //}
         //濡傛灉璇曢獙椤圭洰瀛楁涓嶄负绌哄垯鎸夎瀛楁鐨勯」鐩繘琛屽尮閰�
         if (ObjectUtils.isNotEmpty(inspectionVo.getExperiment())) {
             //鑾峰彇璇曢獙椤圭洰淇℃伅(缁撴瀯,瀵肩嚎澶栧緞)
@@ -197,7 +208,20 @@
             return inspection.getId();
         }
         //濡傛灉璇曢獙椤圭洰涓虹┖鍒欐寜鐓у瀷鍙穒d鍦ㄦ爣鍑嗗簱閲岄潰鍏ㄩ儴鍖归厤
-        List<Product> productList = productMapper.selectList(Wrappers.<Product>query().eq("specifications_id", specificationId));
+        List<Product> productList =
+                productMapper.selectList(Wrappers.<Product>query()
+                        .eq("specifications_id", specificationId)
+                .eq("version",inspectionVo.getVersion()));
+        productList.stream().forEach(p->{
+            String internal = Optional.ofNullable(p)
+                    .map(Product::getInternal)
+                    .orElse("绌�");
+            String required = Optional.ofNullable(p)
+                    .map(Product::getRequired).orElse("绌�");
+            if(Objects.equals("绌�",internal)||Objects.equals(required,"绌�")) {
+                throw new ApplicationException("椤圭洰鐗堟湰涓嶅彲鐢�");
+            }
+        });
         //灏嗘煡璇㈢殑椤圭洰淇℃伅鏋勫缓鎴愭楠岄」鐩�
         ArrayList<InspectionProduct> list = new ArrayList<>();
         for (Product product : productList) {
@@ -236,7 +260,8 @@
         BeanUtils.copyProperties(inspectionMaterial, inspectDetailVo);
         /*鏌ヨ妫�楠屽崟閲岄潰鐨勬楠岄」鐩�,骞跺皝瑁呭埌RawInspectVo瀵硅薄涓�*/
         LambdaQueryWrapper<InspectionProduct> queryWrapper = new LambdaQueryWrapper<>();
-        queryWrapper.eq(InspectionProduct::getInspectionMaterialId, inspectionMaterial.getId());
+        queryWrapper
+                .eq(InspectionProduct::getInspectionMaterialId, inspectionMaterial.getId());
         List<InspectionProduct> inspectionProducts = inspectionProductMapper.selectList(queryWrapper);
         //杩欓噷鏌ュ埌鐨勮澶噄d鍜屾楠屽憳id瑕佹煡璇㈠悕绉�
         List<InsProductVo> insProductVos = inspectionProducts.stream().map(insProduct -> {
@@ -245,16 +270,15 @@
             BeanUtils.copyProperties(insProduct, insProductVo);
             //鑾峰彇璁惧鍚�(鍓嶆彁鏄鏋滃瓨鍦�)
             if (insProduct.getInstrumentId() != null) {
-                String equipmentName = instrumentService.getById(insProduct.getInstrumentId()).getEquipmentName();
-                insProductVo.setInstrumentName(equipmentName);
+                insProductVo.setInstrumentId(insProduct.getInstrumentId());
             }
             //鑾峰彇鐢ㄦ埛鍚�(鍓嶆彁鏄鏋滃瓨鍦�)
-            if (insProduct.getUserId() != null) {
-                String userName = userMapper.selectById(insProduct.getUserId()).getName();
-                insProductVo.setUserName(userName);
+            if (insProduct.getUserProId() != null) {
+                insProductVo.setUserId(insProduct.getUserProId());
             }
             //椤圭洰鍏宠仈鐗╂枡id
             insProductVo.setInspectionMaterialId(inspectionMaterial.getId());
+            insProductVo.setId(insProduct.getId());
             return insProductVo;
         }).collect(Collectors.toList());
         inspectDetailVo.setInsProducts(insProductVos);

--
Gitblit v1.9.3