From fc72c9174c705d3b2d7e40e687c04e348bfe098f Mon Sep 17 00:00:00 2001
From: XiaoRuby <3114200645@qq.com>
Date: 星期四, 24 八月 2023 10:53:08 +0800
Subject: [PATCH] LIMS管理系统框架-开发8-24组织架构后端完成

---
 standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java |   96 +++++++++++++++++------------------------------
 1 files changed, 35 insertions(+), 61 deletions(-)

diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java
index 6a9bf6d..d6a5bd6 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java
@@ -2,24 +2,25 @@
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.yuanchu.limslaboratory.pojo.SerialNumber;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.yuanchu.limslaboratory.mapper.ProductModelMapper;
+import com.yuanchu.limslaboratory.pojo.Product;
 import com.yuanchu.limslaboratory.pojo.Specifications;
 import com.yuanchu.limslaboratory.mapper.SpecificationsMapper;
+import com.yuanchu.limslaboratory.pojo.dto.AddSpecifications;
+import com.yuanchu.limslaboratory.pojo.dto.AddStandardDto;
 import com.yuanchu.limslaboratory.service.*;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.yuanchu.limslaboratory.vo.UpdateSpeStateSpecifications;
-import io.swagger.models.auth.In;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
-import org.springframework.util.ObjectUtils;
 
 import javax.annotation.Resource;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
-import java.util.Objects;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -36,50 +37,10 @@
     private SpecificationsMapper specificationsMapper;
 
     @Autowired
-    private StandardsService standardsService;
-
-    @Autowired
-    private UserService userService;
-
-    @Autowired
-    private MaterialService materialService;
-
-    @Autowired
     private ProductService productService;
 
-    @Override
-    public Integer addSpecificationsInformation(Specifications specifications) {
-        Boolean userIsNull = userService.userIsNull(specifications.getUserId());
-        if (userIsNull){
-            Boolean standardsIsNull = standardsService.standardsIsNull(specifications.getSerialId());
-            if (!ObjectUtils.isEmpty(standardsIsNull)){
-                LambdaQueryWrapper<Specifications> wrapper = new LambdaQueryWrapper<>();
-                wrapper.eq(Specifications::getNumber, specifications.getNumber());
-                Specifications specificationsNumberIsNull = specificationsMapper.selectOne(wrapper);
-                if (ObjectUtils.isEmpty(specificationsNumberIsNull)){
-                    return specificationsMapper.insert(specifications);
-                }
-            }
-        }
-        return 0;
-    }
-
-    @Override
-    public IPage<Map<String, Objects>> listSpecificationsInformation(String specificationsName, String serialNumberId, Page<Objects> page) {
-        return specificationsMapper.listSpecificationsInformation(specificationsName,serialNumberId,page);
-    }
-
-    @Override
-    public Map<String, Object> selectSNameSNName(int materialId) {
-        return specificationsMapper.selectSNameSNName(materialId);
-    }
-
-    @Override
-    public Integer updateSpecificationsInformation(Specifications specifications) {
-        LambdaQueryWrapper<Specifications> wrapper = new LambdaQueryWrapper<>();
-        wrapper.eq(Specifications::getId, specifications.getId());
-        return specificationsMapper.update(specifications, wrapper);
-    }
+    @Resource
+    ProductModelMapper productModelMapper;
 
     @Override
     public Integer deleteSpecifications(Integer specificationsId) {
@@ -90,21 +51,18 @@
         list.add(specificationsId);
         int isDeleteSuccess = specificationsMapper.update(new Specifications(), updateWrapper);
         if (isDeleteSuccess == 1){
-            List<String> deleteMaterialId = materialService.specificationsIdDeleteMaterial(list);
-            if (!ObjectUtils.isEmpty(deleteMaterialId)){
-                productService.MaterialIdDeleteProduct(deleteMaterialId);
-            }
+            productService.deleteProductInformation(list);
             return 1;
         }
         return 0;
     }
 
     @Override
-    public List<Integer> SerialNumberIdDeleteSpecifications(List<String> deleteSerialNumberId) {
+    public List<Integer> StandardIdDeleteSpecifications(List<Integer> deleteStandard) {
         List<Integer> list = new ArrayList<>();
-        for (String serialNumberId:deleteSerialNumberId){
+        for (Integer standard : deleteStandard){
             LambdaQueryWrapper<Specifications> wrapper = new LambdaQueryWrapper<>();
-            wrapper.eq(Specifications::getSerialId, serialNumberId);
+            wrapper.eq(Specifications::getStandardId, standard);
             wrapper.select(Specifications::getId);
             List<Specifications> maps1 = specificationsMapper.selectList(wrapper);
             for (Specifications specifications:maps1){
@@ -119,10 +77,26 @@
     }
 
     @Override
-    public Integer updateSpeStateSpecifications(UpdateSpeStateSpecifications updateSpeStateSpecifications) {
-        LambdaUpdateWrapper<Specifications> updateWrapper = new LambdaUpdateWrapper<>();
-        updateWrapper.eq(Specifications::getId, updateSpeStateSpecifications.getId());
-        updateWrapper.set(Specifications::getSpe_state, updateSpeStateSpecifications.getSpe_state());
-        return specificationsMapper.update(new Specifications(), updateWrapper);
+    public Integer addSpecificationsInformation(AddSpecifications addStandardDto) {
+        Specifications specifications = new Specifications()
+                .setName(addStandardDto.getSpecificationsName())
+                .setStandardId(addStandardDto.getStandardId());
+         specificationsMapper.insert(specifications);
+        //娣诲姞鍨嬪彿涔嬪悗娣诲姞椤圭洰
+        List<Map<String, Object>> productModel=productModelMapper.seleMode(specificationsMapper.selMateName(addStandardDto.getStandardId()));
+        List<Product> productList = productModel.stream().map(stringObjectMap -> {
+            Product product = new Product();
+            product.setName(stringObjectMap.get("name").toString());
+            if (ObjectUtils.isNotEmpty(stringObjectMap.get("father"))) {
+                product.setFather(stringObjectMap.get("father").toString());
+            }
+            if (ObjectUtils.isNotEmpty(stringObjectMap.get("unit"))) {
+                product.setUnit(stringObjectMap.get("unit").toString());
+            }
+            product.setSpecifications_id(specifications.getId());
+            return product;
+        }).collect(Collectors.toList());
+        productService.saveBatch(productList);
+        return 1;
     }
 }

--
Gitblit v1.9.3