liyong
4 天以前 bf3858536df66d1793693ee69bddf791ff011092
fix(quality): 修复质量不合格处理逻辑并优化查询性能
已修改3个文件
56 ■■■■ 文件已修改
src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/quality/QualityUnqualifiedMapper.xml 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ruoyi/purchase/service/impl/PurchaseLedgerServiceImpl.java
@@ -209,15 +209,15 @@
        if (productList != null && !productList.isEmpty()) {
            handleSalesLedgerProducts(purchaseLedger.getId(), productList, purchaseLedgerDto.getType());
        }
        //新增原材料检验
        if (productList != null) {
            for (SalesLedgerProduct saleProduct : productList) {
                //是否推送质检,如果true就添加
                if (saleProduct.getIsChecked()) {
                    addQualityInspect(purchaseLedger, saleProduct);
                }
            }
        }
        //新增原材料检验  审批之后才生成检验
//        if (productList != null) {
//            for (SalesLedgerProduct saleProduct : productList) {
//                //是否推送质检,如果true就添加
//                if (saleProduct.getIsChecked()) {
//                    addQualityInspect(purchaseLedger, saleProduct);
//                }
//            }
//        }
        // 5. 迁移临时文件到正式目录
        if (purchaseLedgerDto.getTempFileIds() != null && !purchaseLedgerDto.getTempFileIds().isEmpty()) {
            migrateTempFilesToFormal(purchaseLedger.getId(), purchaseLedgerDto.getTempFileIds());
src/main/java/com/ruoyi/quality/service/impl/QualityUnqualifiedServiceImpl.java
@@ -138,6 +138,23 @@
                default:
                    break;
            }
        } else {
            switch (qualityUnqualified.getDealResult()) {
                case "返修":
                case "返工":
                    // TODO
                case "报废":
                    //调用不合格库存接口 入不合格库
                    stockUtils.addUnStock(Long.valueOf(unqualified.getModel()), unqualified.getQuantity(), StockInUnQualifiedRecordTypeEnum.DEFECTIVE_SCRAP.getCode(), unqualified.getId());
                    break;
                case "让步放行":
                    //调用提交合格的接口
                    stockUtils.addStock(qualityInspect.getProductModelId(), unqualified.getQuantity(), StockInQualifiedRecordTypeEnum.DEFECTIVE_PASS.getCode(), unqualified.getId());
                    break;
                default:
                    break;
            }
        }
        qualityUnqualified.setInspectState(1);//已处理
        return qualityUnqualifiedMapper.updateById(qualityUnqualified);
src/main/resources/mapper/quality/QualityUnqualifiedMapper.xml
@@ -3,8 +3,25 @@
<mapper namespace="com.ruoyi.quality.mapper.QualityUnqualifiedMapper">
    <select id="qualityUnqualifiedListPage" resultType="com.ruoyi.quality.pojo.QualityUnqualified">
        SELECT
        *
        FROM quality_unqualified
        qu.id,
        qu.inspect_type,
        qu.inspect_state,
        qu.check_time,
        qu.check_name,
        qu.product_id,
        qu.product_name,
        qu.unit,
        qu.quantity,
        qu.defective_phenomena,
        qu.deal_result,
        qu.deal_name,
        qu.deal_time,
        CASE
        WHEN qu.model = pm.id THEN pm.model
        ELSE qu.model
        END AS model
        FROM quality_unqualified qu
        LEFT JOIN product_model pm ON qu.model = pm.id
        where
        1=1
        <if test="qualityUnqualified.inspectType != null ">