From d1911a016484ef3fcb6e922eee4ea87638b26d53 Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期二, 29 八月 2023 11:17:01 +0800
Subject: [PATCH] 修改bug
---
standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java | 96 +++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 82 insertions(+), 14 deletions(-)
diff --git a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java
index 5aed855..479ea03 100644
--- a/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java
+++ b/standard-server/src/main/java/com/yuanchu/limslaboratory/service/impl/StandardServiceImpl.java
@@ -1,17 +1,29 @@
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.ObjectUtils;
+import com.yuanchu.limslaboratory.mapper.MaterialMapper;
+import com.yuanchu.limslaboratory.mapper.ProductModelMapper;
import com.yuanchu.limslaboratory.mapper.StandardMapper;
+import com.yuanchu.limslaboratory.pojo.Material;
+import com.yuanchu.limslaboratory.pojo.Product;
+import com.yuanchu.limslaboratory.pojo.Specifications;
import com.yuanchu.limslaboratory.pojo.Standard;
+import com.yuanchu.limslaboratory.pojo.dto.AddStandardDto;
import com.yuanchu.limslaboratory.service.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+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 org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
+import java.util.ArrayList;
import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
/**
* <p>
@@ -27,36 +39,92 @@
@Resource
private StandardMapper standardMapper;
- @Autowired
- private UserService userService;
-
@Lazy
@Autowired
private SpecificationsService specificationsService;
@Autowired
- private MaterialService materialService;
-
- @Autowired
private ProductService productService;
+
+ @Resource
+ ProductModelMapper productModelMapper;
+
+ @Resource
+ MaterialMapper materialMapper;
@Override
- public Integer deleteStandardsInformation(String standardsId) {
+ public List<Integer> deleteStandardsInformation(Integer materialId) {
+ LambdaQueryWrapper<Standard> wrapper = new LambdaQueryWrapper<>();
+ wrapper.eq(Standard::getMaterialId, materialId);
+ wrapper.select(Standard::getId);
+ List<Integer> list = new ArrayList<>();
+ List<Standard> standards = standardMapper.selectList(wrapper);
+ for (Standard standard : standards){
+ LambdaUpdateWrapper<Standard> updateWrapper = new LambdaUpdateWrapper<>();
+ updateWrapper.eq(Standard::getMaterialId, materialId);
+ updateWrapper.set(Standard::getState, 0);
+ standardMapper.update(new Standard(), updateWrapper);
+ list.add(standard.getId());
+ }
+ return list;
+ }
+
+ @Override
+ public Integer deleteStandardInformation(Integer standardsId) {
LambdaUpdateWrapper<Standard> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(Standard::getId, standardsId);
updateWrapper.set(Standard::getState, 0);
+ List<Integer> list = new ArrayList<>();
int isDeleteSuccess = standardMapper.update(new Standard(), updateWrapper);
if (isDeleteSuccess == 1){
- List<Integer> deleteSpecificationsId = specificationsService.SerialNumberIdDeleteSpecifications(null);
- if (!ObjectUtils.isEmpty(deleteSpecificationsId)){
- List<String> deleteMaterialId = materialService.specificationsIdDeleteMaterial(deleteSpecificationsId);
- if (!ObjectUtils.isEmpty(deleteMaterialId)){
- productService.MaterialIdDeleteProduct(deleteMaterialId);
- }
+ list.add(standardsId);
+ List<Integer> idDeleteSpecifications = specificationsService.StandardIdDeleteSpecifications(list);
+ if (!ObjectUtils.isEmpty(idDeleteSpecifications)){
+ productService.deleteProductInformation(idDeleteSpecifications);
}
return 1;
}
return 0;
}
+
+ //浜岀骇鏂板
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public Integer addStandardInformation(AddStandardDto addStandardDto) {
+ Standard standard = new Standard()
+ .setMaterialId(addStandardDto.getMaterialId())
+ .setName(addStandardDto.getStandardName());
+ int save = standardMapper.insert(standard);
+ if (save == 1){
+ Specifications specifications = new Specifications()
+ .setName(addStandardDto.getSpecificationsName())
+ .setStandardId(standard.getId());
+ boolean save1 = specificationsService.save(specifications);
+ if (save1){
+ //娣诲姞鍨嬪彿涔嬪悗娣诲姞椤圭洰
+ List<Map<String, Object>> productModel=productModelMapper.seleMode(materialMapper.selectById(addStandardDto.getMaterialId()).getName());
+ List<Product> productList = productModel.stream().map(stringObjectMap -> {
+ Product product = new Product();
+ product.setName(stringObjectMap.get("name").toString());
+ if (ObjectUtils.isNotEmpty(stringObjectMap.get("father"))) {
+ product.setFather(stringObjectMap.get("father").toString());
+ }
+ if (ObjectUtils.isNotEmpty(stringObjectMap.get("unit"))) {
+ product.setUnit(stringObjectMap.get("unit").toString());
+ }
+ product.setSpecifications_id(specifications.getId());
+ return product;
+ }).collect(Collectors.toList());
+ productService.saveBatch(productList);
+ return 1;
+ }
+ }
+ return 0;
+ }
+
+ @Override
+ public List<Map<String, Object>> getSpecificationIdAndName(String materialId) {
+ return standardMapper.getSpecificationIdAndName(materialId);
+ }
}
--
Gitblit v1.9.3