From affabbd21802dacbf943692912a83e63106670e4 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期二, 22 八月 2023 11:47:55 +0800 Subject: [PATCH] 改动 --- standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/SpecificationsServiceImpl.java | 117 +++++++++++++++++++++++++++++----------------------------- 1 files changed, 59 insertions(+), 58 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 f8e4807..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,21 +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.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.utils.MyUtil; +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> @@ -32,66 +37,62 @@ 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; - } + @Resource + ProductModelMapper productModelMapper; @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); - } - - @Override - public Integer deleteSpecifications(String specificationsId) { - LambdaQueryWrapper<Specifications> wrapper = new LambdaQueryWrapper<>(); - wrapper.eq(Specifications::getId, specificationsId); - // 鍒犻櫎Specifications涓殑鏁版嵁 - int delete = specificationsMapper.delete(wrapper); - if (delete == 1){ - // 鍒犻櫎绛変簬SpecificationsId鐨凪aterial琛ㄦ牸涓殑鏁版嵁锛屽苟涓旇幏鍙栬鏁版嵁鐨処d锛岀敤浜庡垹闄roduct琛ㄦ牸涓殑鏁版嵁 - List<String> materialListId = materialService.deleteMaterialEqSpecification(specificationsId); - if (!ObjectUtils.isEmpty(materialListId)){ - // 鏍规嵁Material琛ㄨ繑鍥炵殑鍒楄〃Id锛屽垹闄roduct琛ㄤ腑鎵�鏈塎aterialId绛変簬璇ュ垪琛ㄤ腑鐨勬墍鏈夋暟鎹紝鏃犺繑鍥炲�� - productService.deleteProductEqMaterialId(materialListId); - } + 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 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