From e6ffa9fcebef022be1e8e8162c65f52754f9081e Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期六, 19 八月 2023 15:11:22 +0800
Subject: [PATCH] 基础数据

---
 standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java |   84 ++++++++++++++++++++++++++++++------------
 1 files changed, 60 insertions(+), 24 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 099e61e..d318960 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
@@ -1,22 +1,26 @@
 package com.yuanchu.limslaboratory.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
+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.service.SpecificationsService;
+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.service.StandardsService;
-import com.yuanchu.limslaboratory.service.UserService;
-import com.yuanchu.limslaboratory.vo.ListSpecificationsInformation;
+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>
@@ -33,30 +37,62 @@
     private SpecificationsMapper specificationsMapper;
 
     @Autowired
-    private StandardsService standardsService;
+    private ProductService productService;
 
-    @Autowired
-    private UserService userService;
+    @Resource
+    ProductModelMapper productModelMapper;
 
     @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);
-                }
-            }
+    public Integer deleteSpecifications(Integer specificationsId) {
+        LambdaUpdateWrapper<Specifications> updateWrapper = new LambdaUpdateWrapper<>();
+        updateWrapper.eq(Specifications::getId, specificationsId);
+        updateWrapper.set(Specifications::getState, 0);
+        List<Integer> list = new ArrayList<>();
+        list.add(specificationsId);
+        int isDeleteSuccess = specificationsMapper.update(new Specifications(), updateWrapper);
+        if (isDeleteSuccess == 1){
+            productService.deleteProductInformation(list);
+            return 1;
         }
         return 0;
     }
 
     @Override
-    public IPage<ListSpecificationsInformation> listSpecificationsInformation(String specificationsName, String serialNumberId, Page<Objects> page) {
-        return specificationsMapper.listSpecificationsInformation(specificationsName,serialNumberId,page);
+    public List<Integer> StandardIdDeleteSpecifications(List<Integer> deleteStandard) {
+        List<Integer> list = new ArrayList<>();
+        for (Integer standard : deleteStandard){
+            LambdaQueryWrapper<Specifications> wrapper = new LambdaQueryWrapper<>();
+            wrapper.eq(Specifications::getStandardId, standard);
+            wrapper.select(Specifications::getId);
+            List<Specifications> maps1 = specificationsMapper.selectList(wrapper);
+            for (Specifications specifications:maps1){
+                LambdaUpdateWrapper<Specifications> updateWrapper = new LambdaUpdateWrapper<>();
+                updateWrapper.eq(Specifications::getId, specifications.getId());
+                updateWrapper.set(Specifications::getState, 0);
+                specificationsMapper.update(new Specifications(), updateWrapper);
+                list.add(specifications.getId());
+            }
+        }
+        return list;
+    }
+
+    @Override
+    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());
+            product.setFather(stringObjectMap.get("father").toString());
+            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