8 小时以前 74ad846852f42b4e2258bfddd5c2a33cc1ce9847
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/productproduce/MesWmProductProduceServiceImpl.java
@@ -24,10 +24,12 @@
import cn.iocoder.yudao.module.mes.service.wm.batch.MesWmBatchService;
import cn.iocoder.yudao.module.mes.service.wm.transaction.MesWmTransactionService;
import cn.iocoder.yudao.module.mes.service.wm.transaction.dto.MesWmTransactionSaveReqDTO;
import cn.iocoder.yudao.module.mes.service.wm.productreceipt.MesWmProductReceiptService;
import cn.iocoder.yudao.module.mes.service.wm.warehouse.MesWmWarehouseAreaService;
import cn.iocoder.yudao.module.mes.service.wm.warehouse.MesWmWarehouseLocationService;
import cn.iocoder.yudao.module.mes.service.wm.warehouse.MesWmWarehouseService;
import jakarta.annotation.Resource;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
@@ -66,6 +68,9 @@
    private MesWmWarehouseLocationService locationService;
    @Resource
    private MesWmWarehouseAreaService areaService;
    @Resource
    @Lazy // 避免循环依赖:产品收货单自动生成逻辑依赖生产入库单 Mapper/行 Service
    private MesWmProductReceiptService productReceiptService;
    @Override
    @Transactional(rollbackFor = Exception.class)
@@ -300,6 +305,9 @@
        // 4. 完成产出单(创建库存事务 + 更新状态为已完成)
        finishProductProduce(produce.getId());
        // 5. 报工产出定稿后自动生成产品入库单(一次报工=一条,幂等)
        productReceiptService.createProductReceiptByFeedback(feedbackId);
    }
}