From d8a687741273d121586b83745280c57f7e9d3297 Mon Sep 17 00:00:00 2001 From: XiaoRuby <3114200645@qq.com> Date: 星期一, 07 八月 2023 17:51:28 +0800 Subject: [PATCH] Merge branch 'master' of https://gitee.com/yuanchu_code/lims-management-system --- standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java | 103 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 103 insertions(+), 0 deletions(-) diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java new file mode 100644 index 0000000..4b75748 --- /dev/null +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/MaterialServiceImpl.java @@ -0,0 +1,103 @@ +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.toolkit.IdWorker; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; +import com.yuanchu.limslaboratory.pojo.Material; +import com.yuanchu.limslaboratory.mapper.MaterialMapper; +import com.yuanchu.limslaboratory.pojo.Specifications; +import com.yuanchu.limslaboratory.pojo.Standard; +import com.yuanchu.limslaboratory.pojo.dto.AddMaterialDto; +import com.yuanchu.limslaboratory.service.MaterialService; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.yuanchu.limslaboratory.service.ProductService; +import com.yuanchu.limslaboratory.service.SpecificationsService; +import com.yuanchu.limslaboratory.service.StandardService; +import com.yuanchu.limslaboratory.utils.MyUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; +import java.util.Map; + +/** + * <p> + * 鏈嶅姟瀹炵幇绫� + * </p> + * + * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃 + * @since 2023-07-17 + */ +@Service +public class MaterialServiceImpl extends ServiceImpl<MaterialMapper, Material> implements MaterialService { + + @Resource + private MaterialMapper materialMapper; + + @Autowired + private StandardService standardService; + + @Autowired + private SpecificationsService specificationsService; + + @Autowired + private ProductService productService; + + //鏌ヨ鐗╂枡淇℃伅 + @Override + public List<Map> selectMaterialLimit(int pageSize, int countSize, int type) { + return materialMapper.selectMaterialLimit((pageSize - 1) * countSize,pageSize * countSize, type); + } + + + + @Override + public Integer deleteMaterialInformation(Integer materialId) { + LambdaUpdateWrapper<Material> updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(Material::getId, materialId); + updateWrapper.set(Material::getState, 0); + int isDeleteSuccess = materialMapper.update(new Material(), updateWrapper); + if (isDeleteSuccess == 1){ + List<Integer> isDeleteStandard = standardService.deleteStandardsInformation(materialId); + if (!ObjectUtils.isEmpty(isDeleteStandard)){ + List<Integer> idDeleteSpecifications = specificationsService.StandardIdDeleteSpecifications(isDeleteStandard); + if (!ObjectUtils.isEmpty(idDeleteSpecifications)){ + productService.deleteProductInformation(idDeleteSpecifications); + } + } + return 1; + } + return 0; + } + + @Override + public Integer addMaterialInformation(AddMaterialDto addMaterialDto) { + Material material = new Material() + .setCode("BZ" + IdWorker.getIdStr()) + .setName(addMaterialDto.getMaterialName()) + .setType(addMaterialDto.getType()); + int isInsertSuccess = materialMapper.insert(material); + if (isInsertSuccess > 0){ + Standard standard = new Standard() + .setMaterialId(material.getId()) + .setName(addMaterialDto.getStandardName()); + boolean save = standardService.save(standard); + if (save){ + Specifications specifications = new Specifications() + .setName(addMaterialDto.getSpecificationsName()) + .setStandardId(standard.getId()); + boolean save1 = specificationsService.save(specifications); + if (save1) + return 1; + } + } + return 0; + } + + @Override + public List<Map<String, Object>> getFourLevelInformation(String specificationName) { + return materialMapper.FourTree(specificationName); + } +} -- Gitblit v1.9.3