From 5322edbcc5529864aaea26d78289df7a8a36fb77 Mon Sep 17 00:00:00 2001 From: 李林 <z1292839451@163.com> Date: 星期四, 20 七月 2023 11:25:18 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java | 62 ++++++++++++++++++++++++++++-- 1 files changed, 57 insertions(+), 5 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 479141e..ac60c11 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,20 +1,22 @@ 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.pojo.Specifications; import com.yuanchu.limslaboratory.mapper.SpecificationsMapper; -import com.yuanchu.limslaboratory.service.SpecificationsService; +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 io.swagger.models.auth.In; import org.springframework.beans.factory.annotation.Autowired; 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; @@ -38,6 +40,12 @@ @Autowired private UserService userService; + @Autowired + private MaterialService materialService; + + @Autowired + private ProductService productService; + @Override public Integer addSpecificationsInformation(Specifications specifications) { Boolean userIsNull = userService.userIsNull(specifications.getUserId()); @@ -56,7 +64,7 @@ } @Override - public IPage<ListSpecificationsInformation> listSpecificationsInformation(String specificationsName, String serialNumberId, Page<Objects> page) { + public IPage<Map<String, Objects>> listSpecificationsInformation(String specificationsName, String serialNumberId, Page<Objects> page) { return specificationsMapper.listSpecificationsInformation(specificationsName,serialNumberId,page); } @@ -64,4 +72,48 @@ 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); + } + + @Override + 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){ + List<String> deleteMaterialId = materialService.specificationsIdDeleteMaterial(list); + if (!ObjectUtils.isEmpty(deleteMaterialId)){ + productService.MaterialIdDeleteProduct(deleteMaterialId); + } + return 1; + } + return 0; + } + + @Override + public List<Integer> SerialNumberIdDeleteSpecifications(List<String> deleteSerialNumberId) { + List<Integer> list = new ArrayList<>(); + for (String serialNumberId:deleteSerialNumberId){ + LambdaQueryWrapper<Specifications> wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(Specifications::getSerialId, serialNumberId); + 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; + } } -- Gitblit v1.9.3