diff --git a/ktg-mes/src/main/java/com/ktg/mes/qc/mapper/QcIqcMapper.java b/ktg-mes/src/main/java/com/ktg/mes/qc/mapper/QcIqcMapper.java
index 66c1f96..58b62e0 100644
--- a/ktg-mes/src/main/java/com/ktg/mes/qc/mapper/QcIqcMapper.java
+++ b/ktg-mes/src/main/java/com/ktg/mes/qc/mapper/QcIqcMapper.java
@@ -45,6 +45,11 @@ public interface QcIqcMapper
*/
public int updateQcIqc(QcIqc qcIqc);
+ /**
+ * 根据缺陷记录更新头上的缺陷数量和比率
+ * @param iqcId
+ * @return
+ */
public int updateCrMajMinQuaAndRate(Long iqcId);
/**
diff --git a/ktg-mes/src/main/java/com/ktg/mes/qc/service/IQcIpqcService.java b/ktg-mes/src/main/java/com/ktg/mes/qc/service/IQcIpqcService.java
index 10e0fa9..ada9d33 100644
--- a/ktg-mes/src/main/java/com/ktg/mes/qc/service/IQcIpqcService.java
+++ b/ktg-mes/src/main/java/com/ktg/mes/qc/service/IQcIpqcService.java
@@ -58,12 +58,6 @@ public interface IQcIpqcService
*/
public int updateCrMajMinQuaAndRate(Long qcId);
- /**
- * 根据缺陷记录更新头上的缺陷数量和缺陷率
- * @param qcIpqc
- * @return
- */
- public int updateCrMajMinQuaAndRate(QcIpqc qcIpqc);
/**
* 批量删除过程检验单
diff --git a/ktg-mes/src/main/java/com/ktg/mes/qc/service/impl/QcIpqcServiceImpl.java b/ktg-mes/src/main/java/com/ktg/mes/qc/service/impl/QcIpqcServiceImpl.java
index b989c53..7f43d90 100644
--- a/ktg-mes/src/main/java/com/ktg/mes/qc/service/impl/QcIpqcServiceImpl.java
+++ b/ktg-mes/src/main/java/com/ktg/mes/qc/service/impl/QcIpqcServiceImpl.java
@@ -88,6 +88,7 @@ public class QcIpqcServiceImpl implements IQcIpqcService
return qcIpqcMapper.updateCrMajMinQuaAndRate(qcId);
}
+
/**
* 批量删除过程检验单
*
diff --git a/ktg-mes/src/main/resources/mapper/qc/QcIqcLineMapper.xml b/ktg-mes/src/main/resources/mapper/qc/QcIqcLineMapper.xml
index 1ec0de3..685d4c5 100644
--- a/ktg-mes/src/main/resources/mapper/qc/QcIqcLineMapper.xml
+++ b/ktg-mes/src/main/resources/mapper/qc/QcIqcLineMapper.xml
@@ -117,21 +117,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
UPDATE qc_iqc_line a
- INNER JOIN (
+ INNER JOIN (
SELECT SUM(CASE WHEN defect_level = 'CR' THEN defect_quantity ELSE 0 END ) AS cr_quantity,
- SUM(CASE WHEN defect_level = 'MAJ' THEN defect_quantity ELSE 0 END) AS maj_quantity,
- SUM(CASE WHEN defect_level = 'MIN' THEN defect_quantity ELSE 0 END) AS min_quantity,
- qid.`iqc_id`,
- qid.`line_id`
- FROM qc_iqc_defect qid
- WHERE qid.iqc_id = #{iqcId}
+ SUM(CASE WHEN defect_level = 'MAJ' THEN defect_quantity ELSE 0 END) AS maj_quantity,
+ SUM(CASE WHEN defect_level = 'MIN' THEN defect_quantity ELSE 0 END) AS min_quantity,
+ qid.`qc_id` as 'iqc_id',
+ qid.`line_id`
+ FROM qc_defect_record qid
+ WHERE qid.qc_id = #{iqcId}
AND qid.line_id = #{lineId}
- GROUP BY qid.iqc_id,qid.line_id
- )b
+ AND qid.qc_type = 'IQC'
+ GROUP BY qid.qc_id,qid.line_id
+ )b
ON a.iqc_id = b.iqc_id AND a.line_id = b.line_id
- SET a.cr_quantity=b.cr_quantity,a.maj_quantity=b.maj_quantity,a.min_quantity=b.min_quantity
+ SET a.cr_quantity=b.cr_quantity,a.maj_quantity=b.maj_quantity,a.min_quantity=b.min_quantity
WHERE a.iqc_id = #{iqcId}
- AND a.line_id = #{lineId}
+ AND a.line_id = #{lineId}
diff --git a/ktg-mes/src/main/resources/mapper/qc/QcIqcMapper.xml b/ktg-mes/src/main/resources/mapper/qc/QcIqcMapper.xml
index a5505a4..a5cc4ef 100644
--- a/ktg-mes/src/main/resources/mapper/qc/QcIqcMapper.xml
+++ b/ktg-mes/src/main/resources/mapper/qc/QcIqcMapper.xml
@@ -182,22 +182,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
UPDATE qc_iqc a
- INNER JOIN (
-
+ INNER JOIN (
SELECT SUM(CASE WHEN defect_level = 'CR' THEN defect_quantity ELSE 0 END ) AS cr_quantity,
- SUM(CASE WHEN defect_level = 'MAJ' THEN defect_quantity ELSE 0 END) AS maj_quantity,
- SUM(CASE WHEN defect_level = 'MIN' THEN defect_quantity ELSE 0 END) AS min_quantity,
- qid.`iqc_id`
- FROM qc_iqc_defect qid
- WHERE qid.iqc_id = #{iqc_id}
- GROUP BY qid.iqc_id
- ) b
+ SUM(CASE WHEN defect_level = 'MAJ' THEN defect_quantity ELSE 0 END) AS maj_quantity,
+ SUM(CASE WHEN defect_level = 'MIN' THEN defect_quantity ELSE 0 END) AS min_quantity,
+ qid.`qc_id` as 'iqc_id'
+ FROM qc_defect_record qid
+ WHERE qid.qc_id = #{iqcId}
+ and qc_type = 'IQC'
+ GROUP BY qid.qc_id
+ ) b
ON a.`iqc_id` = b.iqc_id
- SET a.cr_quantity=b.cr_quantity,a.maj_quantity=b.maj_quantity,a.min_quantity=b.min_quantity,
- a.`cr_rate`= ROUND(b.cr_quantity/a.`quantity_check`*100,2),
- a.`maj_rate`= ROUND(b.maj_quantity/a.`quantity_check`*100,2),
- a.`min_rate`= ROUND(b.min_quantity/a.`quantity_check`*100,2)
- WHERE a.iqc_id = #{iqc_id}
+ SET a.cr_quantity=b.cr_quantity,a.maj_quantity=b.maj_quantity,a.min_quantity=b.min_quantity,
+ a.`cr_rate`= ROUND(b.cr_quantity/a.`quantity_check`*100,2),
+ a.`maj_rate`= ROUND(b.maj_quantity/a.`quantity_check`*100,2),
+ a.`min_rate`= ROUND(b.min_quantity/a.`quantity_check`*100,2)
+ WHERE a.iqc_id = #{iqcId}