yaowanxin
9 小时以前 3257a0d66eb770cd4a4bba4b48ddf26ec6d6c046
src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -13,6 +13,7 @@
import com.ruoyi.basic.pojo.ProductModel;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.bean.BeanUtils;
import com.ruoyi.procurementrecord.utils.StockUtils;
import com.ruoyi.production.controller.ProductWorkOrderController;
import com.ruoyi.production.dto.ProductStructureDto;
import com.ruoyi.production.dto.ProductionProductMainDto;
@@ -73,6 +74,8 @@
    private ProductOrderMapper productOrderMapper;
    private SalesLedgerProductionAccountingMapper salesLedgerProductionAccountingMapper;
    private StockUtils stockUtils;
    @Override
@@ -166,6 +169,7 @@
            qualityInspect.setInspectState(0);
            qualityInspect.setInspectType(inspectType);
            qualityInspect.setProductMainId(productionProductMain.getId());
            qualityInspect.setProductModelId(productModel.getId());
            qualityInspectMapper.insert(qualityInspect);
            qualityTestStandardMapper.selectList(
@@ -183,6 +187,12 @@
        if (productModel != null) {
            List<ProductStructureDto> productStructureDtos = productStructureMapper.listByproductModelId(productModel.getId());
            for (ProductStructureDto productStructureDto : productStructureDtos) {
                ProductModel productModel1 = productModelMapper.selectById(productStructureDto.getProductModelId());
                BigDecimal stockQuantity = stockUtils.getStockQuantity(productModel1.getId()).get("stockQuantity");
                if (!(stockQuantity.compareTo(BigDecimal.ZERO) > 0)) {
                    throw new RuntimeException("库存不足");
                }
                ProductionProductInput productionProductInput = new ProductionProductInput();
                productionProductInput.setProductModelId(productStructureDto.getProductModelId());
                productionProductInput.setQuantity(productStructureDto.getUnitQuantity().multiply(dto.getQuantity()));