From 5341b151ccf051862c8f2adbeb02e82535a77d5e Mon Sep 17 00:00:00 2001
From: XiaoRuby <3114200645@qq.com>
Date: 星期四, 20 七月 2023 11:20:48 +0800
Subject: [PATCH] LIMS管理系统框架-开发7-20-v1.0.0

---
 standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SerialNumberServiceImpl.java |   58 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 55 insertions(+), 3 deletions(-)

diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SerialNumberServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SerialNumberServiceImpl.java
index d52c1b7..9448406 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SerialNumberServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SerialNumberServiceImpl.java
@@ -1,14 +1,14 @@
 package com.yuanchu.limslaboratory.service.impl;
 
 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.yuanchu.limslaboratory.mapper.SerialNumberMapper;
-import com.yuanchu.limslaboratory.service.SerialNumberService;
+import com.yuanchu.limslaboratory.pojo.Standards;
+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.utils.MyUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -39,6 +39,15 @@
     @Autowired
     private StandardsService standardsService;
 
+    @Autowired
+    private SpecificationsService specificationsService;
+
+    @Autowired
+    private MaterialService materialService;
+
+    @Autowired
+    private ProductService productService;
+
     @Override
     public Integer addSerialNumberInformation(SerialNumber serialNumber) {
         Boolean userIsNull = userService.userIsNull(serialNumber.getUserId());
@@ -64,4 +73,47 @@
         wrapper.select(SerialNumber::getId,SerialNumber::getName);
         return serialNumberMapper.selectMaps(wrapper);
     }
+
+    @Override
+    public Integer updateSerialNumberInformation(SerialNumber serialNumber) {
+        return serialNumberMapper.updateById(serialNumber);
+    }
+
+    @Override
+    public List<String> StandardsIdDeleteSerialNumber(String standardsId) {
+        LambdaQueryWrapper<SerialNumber> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(SerialNumber::getStandardsId, standardsId);
+        wrapper.select(SerialNumber::getId);
+        List<String> serialNumberId = new ArrayList<>();
+        List<SerialNumber> maps = serialNumberMapper.selectList(wrapper);
+        for (SerialNumber map:maps){
+            LambdaUpdateWrapper<SerialNumber> updateWrapper = new LambdaUpdateWrapper<>();
+            updateWrapper.eq(SerialNumber::getStandardsId, standardsId);
+            updateWrapper.set(SerialNumber::getState, 0);
+            serialNumberMapper.update(new SerialNumber(), updateWrapper);
+            serialNumberId.add(map.getId());
+        }
+        return serialNumberId;
+    }
+
+    @Override
+    public Integer deleteSerialNumberInformation(String serialNumberId) {
+        LambdaUpdateWrapper<SerialNumber> updateWrapper = new LambdaUpdateWrapper<>();
+        updateWrapper.eq(SerialNumber::getId, serialNumberId);
+        updateWrapper.set(SerialNumber::getState, 0);
+        List<String> list = new ArrayList<>();
+        list.add(serialNumberId);
+        int isDeleteSuccess = serialNumberMapper.update(new SerialNumber(), updateWrapper);
+        if (isDeleteSuccess == 1){
+            List<Integer> deleteSpecificationsId = specificationsService.SerialNumberIdDeleteSpecifications(list);
+            if (!ObjectUtils.isEmpty(deleteSpecificationsId)){
+                List<String> deleteMaterialId = materialService.specificationsIdDeleteMaterial(deleteSpecificationsId);
+                if (!ObjectUtils.isEmpty(deleteMaterialId)){
+                    productService.MaterialIdDeleteProduct(deleteMaterialId);
+                }
+            }
+            return 1;
+        }
+        return 0;
+    }
 }

--
Gitblit v1.9.3