gongchunyi
2026-06-29 743b74dfa59b05cb4bafe8678d8a6223a283ad03
fix: 质检合格率有误
已修改1个文件
31 ■■■■ 文件已修改
src/main/java/com/ruoyi/quality/service/impl/QualityReportServiceImpl.java 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/quality/service/impl/QualityReportServiceImpl.java
@@ -52,28 +52,25 @@
            if (qi.getInspectState() != null && qi.getInspectState() == 1) {
                dto.setCompletedCount(dto.getCompletedCount().add(qty));
                BigDecimal qualified = BigDecimal.ZERO;
                BigDecimal unqualified = BigDecimal.ZERO;
                BigDecimal qualified;
                BigDecimal unqualified;
                String result = qi.getCheckResult();
                BigDecimal qiQualified = qi.getQualifiedQuantity() != null ? qi.getQualifiedQuantity() : BigDecimal.ZERO;
                BigDecimal qiUnqualified = qi.getUnqualifiedQuantity() != null ? qi.getUnqualifiedQuantity() : BigDecimal.ZERO;
                if ("合格".equals(result)) {
                if (qi.getQualifiedQuantity() != null) {
                    qualified = qi.getQualifiedQuantity();
                } else if ("合格".equals(result)) {
                    qualified = qty;
                } else if ("不合格".equals(result)) {
                    unqualified = qty;
                } else if ("部分合格".equals(result)) {
                    if (qiUnqualified.compareTo(BigDecimal.ZERO) > 0) {
                        qualified = qty.subtract(qiUnqualified);
                        unqualified = qiUnqualified;
                    } else {
                        qualified = qiQualified;
                        unqualified = qty.subtract(qiQualified);
                    }
                } else {
                    qualified = qiQualified;
                    unqualified = qiUnqualified;
                    qualified = BigDecimal.ZERO;
                }
                if (qi.getUnqualifiedQuantity() != null) {
                    unqualified = qi.getUnqualifiedQuantity();
                } else if ("不合格".equals(result) || "部分合格".equals(result)) {
                    unqualified = qty;
                } else {
                    unqualified = BigDecimal.ZERO;
                }
                dto.setQualifiedCount(dto.getQualifiedCount().add(qualified));