src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java
@@ -26,6 +26,7 @@
import com.ruoyi.quality.pojo.QualityUnqualified;
import com.ruoyi.quality.service.IQualityInspectService;
import com.ruoyi.quality.service.IQualityUnqualifiedService;
import com.ruoyi.stock.support.FinishedProductStockDimensionResolver;
import com.ruoyi.stock.service.StockUninventoryService;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
@@ -50,6 +51,10 @@
    private ProductProcessRouteItemMapper productProcessRouteItemMapper;
    private ProductWorkOrderMapper productWorkOrderMapper;
    private StockUninventoryService stockUninventoryService;
    /**
     * 解析成品回流入库维度。
     */
    private FinishedProductStockDimensionResolver finishedProductStockDimensionResolver;
    @Override
    public IPage<QualityUnqualified> qualityUnqualifiedListPage(Page page, QualityUnqualified qualityUnqualified) {
@@ -142,11 +147,16 @@
                case "让步放行":
                    //调用提交合格的接口
                    // 2 是成品-需要审核 1 是半成品-不需要审核
                    if (qualityInspect.getInspectType().equals(2)) {
                    if (qualityInspect.getInspectType().equals(1)) {
                        stockUtils.addStockNoReview(qualityInspect.getProductModelId(), unqualified.getQuantity(), StockInQualifiedRecordTypeEnum.DEFECTIVE_PASS.getCode(), unqualified.getId());
                    } else {
                        stockUtils.addStock(qualityInspect.getProductModelId(), unqualified.getQuantity(), StockInQualifiedRecordTypeEnum.DEFECTIVE_PASS.getCode(), unqualified.getId());
                        String processCategory = finishedProductStockDimensionResolver.resolveProcessCategory(qualityInspect.getProductMainId());
                        String voltage = finishedProductStockDimensionResolver.resolveVoltage(qualityInspect.getProductMainId());
                        stockUtils.addStock(qualityInspect.getProductModelId(), unqualified.getQuantity(), StockInQualifiedRecordTypeEnum.DEFECTIVE_PASS.getCode(), unqualified.getId(), processCategory, voltage);
                    }
                    break;
                case "隔离":
                    qualityUnqualified.setQuarantineLifted(false);
                    break;
                default:
                    break;
@@ -192,7 +202,9 @@
        // 取消隔离 调用提交合格的接口
        QualityInspect qualityInspect = qualityInspectService.getById(unqualified.getInspectId());
        if (ObjectUtils.isNotNull(qualityInspect) && qualityInspect.getInspectType().equals(2)) {
            stockUtils.addStock(modelId, unqualified.getQuantity(), StockInQualifiedRecordTypeEnum.LIFT_THE_QUARANTINE.getCode(), unqualified.getId());
            String processCategory = finishedProductStockDimensionResolver.resolveProcessCategory(qualityInspect.getProductMainId());
            String voltage = finishedProductStockDimensionResolver.resolveVoltage(qualityInspect.getProductMainId());
            stockUtils.addStock(modelId, unqualified.getQuantity(), StockInQualifiedRecordTypeEnum.LIFT_THE_QUARANTINE.getCode(), unqualified.getId(), processCategory, voltage);
        } else {
            stockUtils.addStockNoReview(modelId, unqualified.getQuantity(), StockInQualifiedRecordTypeEnum.LIFT_THE_QUARANTINE.getCode(), unqualified.getId());
        }
@@ -205,4 +217,9 @@
    public QualityUnqualified getUnqualified(Integer id) {
        return qualityUnqualifiedMapper.getUnqualified(id);
    }
    @Override
    public List<QualityUnqualified> findUnqualifiedWithProductionOrder() {
        return qualityUnqualifiedMapper.selectUnqualifiedWithProductionOrder();
    }
}