Crunchy
2024-07-24 0087434cc70ca8cee692be654d9e1c6ec82c3da7
cnas-server/src/main/java/com/yuanchu/mom/service/impl/ProductServiceImpl.java
@@ -20,7 +20,6 @@
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -71,9 +70,6 @@
    @Transactional(rollbackFor = Exception.class)
    @Override
    public void importPartExcel(List<StructureTestObjectData> list) {
        List<StructureTestObject> addList = new ArrayList<>();
        List<StructureTestObject> updateList = new ArrayList<>();
        List<Product> addProductList = new ArrayList<>();
        list.forEach(i -> {
            // 检验对象
            StructureTestObject structureTestObject1 = structureTestObjectMapper.selectOne(Wrappers.<StructureTestObject>lambdaQuery()
@@ -91,34 +87,40 @@
                structureTestObject.setSpecimenName(i.getSpecimenName());
                structureTestObject.setSpecimenNameEn(i.getSpecimenNameEn());
                structureTestObject.setCode(i.getCode());
                addList.add(structureTestObject);
                structureTestObjectMapper.insert(structureTestObject);
                // 产品
                Product product = productMapper.selectOne(Wrappers.<Product>lambdaQuery()
                        .eq(Product::getName, i.getName())
                        .eq(Product::getNameEn, i.getNameEn()));
                if (ObjectUtils.isEmpty(product)){
                    Product product1 = new Product();
                    product1.setName(i.getName());
                    product1.setNameEn(i.getNameEn());
                    product1.setObjectId(structureTestObject.getId());
                    baseMapper.insert(product1);
                }
            } else {
                structureTestObject1.setCode(i.getCode());
                structureTestObject1.setLaboratoryId(laboratory.getId());
                updateList.add(structureTestObject1);
                structureTestObjectMapper.updateById(structureTestObject1);
                // 产品
                Product product = productMapper.selectOne(Wrappers.<Product>lambdaQuery()
                        .eq(Product::getName, i.getName())
                        .eq(Product::getNameEn, i.getNameEn()));
                if (ObjectUtils.isEmpty(product)){
                    Product product1 = new Product();
                    product1.setName(i.getName());
                    product1.setNameEn(i.getNameEn());
                    product1.setObjectId(structureTestObject1.getId());
                    baseMapper.insert(product1);
                } else {
                    product.setName(i.getName());
                    product.setNameEn(i.getNameEn());
                    product.setObjectId(structureTestObject1.getId());
                    baseMapper.updateById(product);
                }
            }
            // 产品
            Product product = productMapper.selectOne(Wrappers.<Product>lambdaQuery()
                    .eq(Product::getName, i.getName())
                    .eq(Product::getNameEn, i.getNameEn()));
            if (ObjectUtils.isEmpty(product)){
                Product product1 = new Product();
                product1.setName(i.getName());
                product1.setNameEn(i.getNameEn());
                addProductList.add(product1);
            }
        });
        addList.forEach(i -> {
            structureTestObjectMapper.insert(i);
        });
        saveBatch(addProductList);
        updateList.forEach(i -> {
            structureTestObjectMapper.updateById(i);
        });
    }
}