src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -336,7 +336,25 @@
                qualityInspectMapper.insert(qualityInspect);
                List<QualityTestStandard> qualityTestStandard = qualityTestStandardMapper.getQualityTestStandardByProductId(product.getId(), inspectType, process);
                if (!qualityTestStandard.isEmpty()) {
                    qualityInspect.setTestStandardId(qualityTestStandard.get(0).getId());
                    QualityTestStandard std = qualityTestStandard.get(0);
                    qualityInspect.setTestStandardId(std.getId());
                    qualityInspect.setInspectRule(std.getInspectRule());
                    // 根据 inspectRule 设置抽检比例和抽检数量默认值
                    if (std.getInspectRule() == null || std.getInspectRule() == 0) {
                        // 全检: sampleRatio=100, sampleQuantity=全部数量
                        qualityInspect.setSampleRatio(java.math.BigDecimal.valueOf(100));
                        qualityInspect.setSampleQuantity(productQty != null ? productQty : java.math.BigDecimal.ZERO);
                    } else {
                        // 抽检: sampleRatio 取标准配置值
                        java.math.BigDecimal ratio = std.getSampleRatio() != null ? std.getSampleRatio() : java.math.BigDecimal.ZERO;
                        qualityInspect.setSampleRatio(ratio);
                        if (productQty != null && ratio.compareTo(java.math.BigDecimal.ZERO) > 0) {
                            qualityInspect.setSampleQuantity(productQty.multiply(ratio)
                                    .divide(java.math.BigDecimal.valueOf(100), 0, java.math.RoundingMode.CEILING));
                        } else {
                            qualityInspect.setSampleQuantity(java.math.BigDecimal.ZERO);
                        }
                    }
                    qualityInspectMapper.updateById(qualityInspect);
                    qualityTestStandardParamMapper.selectList(Wrappers.<QualityTestStandardParam>lambdaQuery()
                                    .eq(QualityTestStandardParam::getTestStandardId, qualityTestStandard.get(0).getId()))