fix(quality): 修复质量不合格处理逻辑并优化查询性能
| | |
| | | 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()); |
| | |
| | | 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); |
| | |
| | | <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 "> |