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/StandardsServiceImpl.java | 69 ++++++++++++++++++++++++++++++++-- 1 files changed, 65 insertions(+), 4 deletions(-) diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardsServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardsServiceImpl.java index d82050d..7eb47b0 100644 --- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardsServiceImpl.java +++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardsServiceImpl.java @@ -1,14 +1,17 @@ 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.Standards; import com.yuanchu.limslaboratory.mapper.StandardsMapper; import com.yuanchu.limslaboratory.pojo.User; -import com.yuanchu.limslaboratory.service.StandardsService; +import com.yuanchu.limslaboratory.service.*; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.yuanchu.limslaboratory.service.UserService; import com.yuanchu.limslaboratory.utils.MyUtil; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.util.ObjectUtils; @@ -33,6 +36,20 @@ @Autowired private UserService userService; + @Lazy + @Autowired + private SerialNumberService serialNumberService; + + @Lazy + @Autowired + private SpecificationsService specificationsService; + + @Autowired + private MaterialService materialService; + + @Autowired + private ProductService productService; + @Override public Integer addStandardsInformation(Standards standards) { Boolean userIsNull = userService.userIsNull(standards.getUserId()); @@ -43,8 +60,20 @@ } @Override - public List<Map<String, Object>> listStandardsInformation(String IdOrNameOfStandards) { - return standardsMapper.listStandardsInformation(IdOrNameOfStandards); + public List<Map<String, Object>> listStandardsInformation() { + LambdaQueryWrapper<Standards> wrapper = new LambdaQueryWrapper<>(); + wrapper.select(Standards::getId, Standards::getName); + List<Map<String, Object>> maps = standardsMapper.selectMaps(wrapper); + for (Map<String, Object> map : maps){ + String id = map.get("id").toString(); + List<Map<String, Object>> serialNumberList = serialNumberService.selectIdSerialNumberInformation(id); + if (ObjectUtils.isEmpty(serialNumberList)){ + map.put("serialNumber", null); + } else { + map.put("serialNumber", serialNumberList); + } + } + return maps; } @Override @@ -54,4 +83,36 @@ Standards standardsIsNull = standardsMapper.selectOne(wrapper); return !ObjectUtils.isEmpty(standardsIsNull); } + + @Override + public IPage<Map<String, Object>> listPageStandardsInformation(Page<Object> page, String idOrNameOfStandards) { + return standardsMapper.listPageStandardsInformation(page, idOrNameOfStandards); + } + + @Override + public Integer updateStandardsInformation(Standards standards) { + return standardsMapper.updateById(standards); + } + + @Override + public Integer deleteStandardsInformation(String standardsId) { + LambdaUpdateWrapper<Standards> updateWrapper = new LambdaUpdateWrapper<>(); + updateWrapper.eq(Standards::getId, standardsId); + updateWrapper.set(Standards::getState, 0); + int isDeleteSuccess = standardsMapper.update(new Standards(), updateWrapper); + if (isDeleteSuccess == 1){ + List<String> deleteSerialNumberId = serialNumberService.StandardsIdDeleteSerialNumber(standardsId); + if (!ObjectUtils.isEmpty(deleteSerialNumberId)){ + List<Integer> deleteSpecificationsId = specificationsService.SerialNumberIdDeleteSpecifications(deleteSerialNumberId); + 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