diff --git a/src/main/java/com/xujie/sys/modules/pms/data/QcFAIRecordData.java b/src/main/java/com/xujie/sys/modules/pms/data/QcFAIRecordData.java index f8ed2dc1..6614abce 100644 --- a/src/main/java/com/xujie/sys/modules/pms/data/QcFAIRecordData.java +++ b/src/main/java/com/xujie/sys/modules/pms/data/QcFAIRecordData.java @@ -167,6 +167,16 @@ public class QcFAIRecordData extends QueryPage { private String umName; // 是否可用 private String active; + // 卷数 + private BigDecimal rollCount; + + public BigDecimal getRollCount() { + return rollCount; + } + + public void setRollCount(BigDecimal rollCount) { + this.rollCount = rollCount; + } public String getActive() { return active; diff --git a/src/main/java/com/xujie/sys/modules/pms/data/QcItemData.java b/src/main/java/com/xujie/sys/modules/pms/data/QcItemData.java index 9bed16b3..0ec875fc 100644 --- a/src/main/java/com/xujie/sys/modules/pms/data/QcItemData.java +++ b/src/main/java/com/xujie/sys/modules/pms/data/QcItemData.java @@ -57,6 +57,16 @@ public class QcItemData extends QueryPage { private String inspectionTypeNo; // 检验类型名称 private String inspectionTypeName; + // 项目抽样数 + private BigDecimal itemSamplingQuantity; + + public BigDecimal getItemSamplingQuantity() { + return itemSamplingQuantity; + } + + public void setItemSamplingQuantity(BigDecimal itemSamplingQuantity) { + this.itemSamplingQuantity = itemSamplingQuantity; + } public String getInspectionTypeName() { return inspectionTypeName; diff --git a/src/main/java/com/xujie/sys/modules/pms/data/QcTemplateData.java b/src/main/java/com/xujie/sys/modules/pms/data/QcTemplateData.java index 6db10ad8..3cb668c8 100644 --- a/src/main/java/com/xujie/sys/modules/pms/data/QcTemplateData.java +++ b/src/main/java/com/xujie/sys/modules/pms/data/QcTemplateData.java @@ -99,6 +99,16 @@ public class QcTemplateData extends QueryPage { private List operationList; // 供应商集合 private List manufacturerList; + // 项目抽样数量 + private BigDecimal itemSamplingQuantity; + + public BigDecimal getItemSamplingQuantity() { + return itemSamplingQuantity; + } + + public void setItemSamplingQuantity(BigDecimal itemSamplingQuantity) { + this.itemSamplingQuantity = itemSamplingQuantity; + } public String getManufacturerID() { return manufacturerID; diff --git a/src/main/java/com/xujie/sys/modules/pms/service/Impl/QcServiceImpl.java b/src/main/java/com/xujie/sys/modules/pms/service/Impl/QcServiceImpl.java index dbf6e2c3..19004552 100644 --- a/src/main/java/com/xujie/sys/modules/pms/service/Impl/QcServiceImpl.java +++ b/src/main/java/com/xujie/sys/modules/pms/service/Impl/QcServiceImpl.java @@ -1569,7 +1569,11 @@ public class QcServiceImpl implements QcService { faiRecordData.setMaxValue(itemList.get(j).getMaxValue()); // 最大值 faiRecordData.setValueType(itemList.get(j).getValueType()); // 检测值类型 faiRecordData.setValueTypeDb(itemList.get(j).getValueTypeDb()); - faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + if (itemList.get(j).getItemSamplingQuantity() == null) { + faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + } else { + faiRecordData.setSamplingQty(itemList.get(j).getItemSamplingQuantity()); // 抽样数量 + } // 新增FAI明细记录信息 qcMapper.saveFAIDetailedRecord(faiRecordData); } @@ -1642,7 +1646,11 @@ public class QcServiceImpl implements QcService { faiRecordData.setMaxValue(itemList.get(j).getMaxValue()); // 最大值 faiRecordData.setValueType(itemList.get(j).getValueType()); // 检测值类型 faiRecordData.setValueTypeDb(itemList.get(j).getValueTypeDb()); - faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + if (itemList.get(j).getItemSamplingQuantity() == null) { + faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + } else { + faiRecordData.setSamplingQty(itemList.get(j).getItemSamplingQuantity()); // 抽样数量 + } // 新增FAI明细记录信息 qcMapper.saveFAIDetailedRecord(faiRecordData); } @@ -1706,7 +1714,11 @@ public class QcServiceImpl implements QcService { faiRecordData.setMaxValue(itemList.get(j).getMaxValue()); // 最大值 faiRecordData.setValueType(itemList.get(j).getValueType()); // 检测值类型 faiRecordData.setValueTypeDb(itemList.get(j).getValueTypeDb()); - faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + if (itemList.get(j).getItemSamplingQuantity() == null) { + faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + } else { + faiRecordData.setSamplingQty(itemList.get(j).getItemSamplingQuantity()); // 抽样数量 + } // 新增IPQC明细记录信息 qcMapper.saveFAIDetailedRecord(faiRecordData); } @@ -1959,7 +1971,11 @@ public class QcServiceImpl implements QcService { faiRecordData.setMaxValue(itemList.get(j).getMaxValue()); // 最大值 faiRecordData.setValueType(itemList.get(j).getValueType()); // 检测值类型 faiRecordData.setValueTypeDb(itemList.get(j).getValueTypeDb()); - faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + if (itemList.get(j).getItemSamplingQuantity() == null) { + faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + } else { + faiRecordData.setSamplingQty(itemList.get(j).getItemSamplingQuantity()); // 抽样数量 + } // 新增FQC明细记录信息 qcMapper.saveFQCDetailedRecord(faiRecordData); } @@ -2031,7 +2047,11 @@ public class QcServiceImpl implements QcService { faiRecordData.setMaxValue(itemList.get(j).getMaxValue()); // 最大值 faiRecordData.setValueType(itemList.get(j).getValueType()); // 检测值类型 faiRecordData.setValueTypeDb(itemList.get(j).getValueTypeDb()); - faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + if (itemList.get(j).getItemSamplingQuantity() == null) { + faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + } else { + faiRecordData.setSamplingQty(itemList.get(j).getItemSamplingQuantity()); // 抽样数量 + } // 新增FQC明细记录信息 qcMapper.saveFQCDetailedRecord(faiRecordData); } @@ -2095,7 +2115,11 @@ public class QcServiceImpl implements QcService { faiRecordData.setMaxValue(itemList.get(j).getMaxValue()); // 最大值 faiRecordData.setValueType(itemList.get(j).getValueType()); // 检测值类型 faiRecordData.setValueTypeDb(itemList.get(j).getValueTypeDb()); - faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + if (itemList.get(j).getItemSamplingQuantity() == null) { + faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + } else { + faiRecordData.setSamplingQty(itemList.get(j).getItemSamplingQuantity()); // 抽样数量 + } // 新增FQC明细记录信息 qcMapper.saveFQCDetailedRecord(faiRecordData); } @@ -2369,7 +2393,11 @@ public class QcServiceImpl implements QcService { faiRecordData.setMaxValue(itemList.get(j).getMaxValue()); // 最大值 faiRecordData.setValueType(itemList.get(j).getValueType()); // 检测值类型 faiRecordData.setValueTypeDb(itemList.get(j).getValueTypeDb()); - faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + if (itemList.get(j).getItemSamplingQuantity() == null) { + faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + } else { + faiRecordData.setSamplingQty(itemList.get(j).getItemSamplingQuantity()); // 抽样数量 + } // 新增IPQC明细记录信息 qcMapper.saveIPQCDetailedRecord(faiRecordData); } @@ -2393,10 +2421,6 @@ public class QcServiceImpl implements QcService { data.setInspectionCycle(partAttribute.get(0).getInspectionCycle()); } // 获取抽样数量 - - - - // 如果该检验模板有维护抽样方案 if (StringUtils.isNotBlank(partAttribute.get(0).getSamplingProgrammeNo())) { QcSamplingInspectionProgrammeData samplingInspectionProgrammeData = new QcSamplingInspectionProgrammeData(); @@ -2410,8 +2434,6 @@ public class QcServiceImpl implements QcService { } } } - - else if (partAttribute.get(0).getDefaultSamplingQuantity() != null) { // 没有维护抽样方案,再根据默认抽样数来确定 data.setSamplingQty(partAttribute.get(0).getDefaultSamplingQuantity()); @@ -2448,7 +2470,11 @@ public class QcServiceImpl implements QcService { faiRecordData.setMaxValue(itemList.get(j).getMaxValue()); // 最大值 faiRecordData.setValueType(itemList.get(j).getValueType()); // 检测值类型 faiRecordData.setValueTypeDb(itemList.get(j).getValueTypeDb()); - faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + if (itemList.get(j).getItemSamplingQuantity() == null) { + faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + } else { + faiRecordData.setSamplingQty(itemList.get(j).getItemSamplingQuantity()); // 抽样数量 + } // 新增IPQC明细记录信息 qcMapper.saveIPQCDetailedRecord(faiRecordData); } @@ -2512,7 +2538,11 @@ public class QcServiceImpl implements QcService { faiRecordData.setMaxValue(itemList.get(j).getMaxValue()); // 最大值 faiRecordData.setValueType(itemList.get(j).getValueType()); // 检测值类型 faiRecordData.setValueTypeDb(itemList.get(j).getValueTypeDb()); - faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + if (itemList.get(j).getItemSamplingQuantity() == null) { + faiRecordData.setSamplingQty(data.getSamplingQty()); // 抽样数量 + } else { + faiRecordData.setSamplingQty(itemList.get(j).getItemSamplingQuantity()); // 抽样数量 + } // 新增IPQC明细记录信息 qcMapper.saveIPQCDetailedRecord(faiRecordData); } @@ -2778,7 +2808,7 @@ public class QcServiceImpl implements QcService { List dataList = qcMapper.searchSamplingProgrammeDetails(samplingInspectionProgrammeData); // 根据抽样方案确定抽样数 for (QcSamplingInspectionProgrammeData programmeData : dataList) { - if (programmeData.getSamplingLevelNo().equals(partAttribute.get(0).getSamplingLevelNo()) && (recordData.getRollQty().compareTo(programmeData.getMinQty()) == 1 || recordData.getRollQty().compareTo(programmeData.getMinQty()) == 0) && (recordData.getRollQty().compareTo(programmeData.getMaxQty()) == -1 || recordData.getRollQty().compareTo(programmeData.getMaxQty()) == 0) ){ + if (programmeData.getSamplingLevelNo().equals(partAttribute.get(0).getSamplingLevelNo()) && (recordData.getRollCount().compareTo(programmeData.getMinQty()) == 1 || recordData.getRollCount().compareTo(programmeData.getMinQty()) == 0) && (recordData.getRollCount().compareTo(programmeData.getMaxQty()) == -1 || recordData.getRollCount().compareTo(programmeData.getMaxQty()) == 0) ){ qcFAIRecordData.setSamplingQty(programmeData.getSamplingQty()); } } @@ -2787,7 +2817,7 @@ public class QcServiceImpl implements QcService { qcFAIRecordData.setSamplingQty(partAttribute.get(0).getDefaultSamplingQuantity()); } else if (partAttribute.get(0).getDefaultSamplingProportion() != null) { // 也没有维护默认抽样数,最后根据默认抽样比例来确定 - BigDecimal d = partAttribute.get(0).getDefaultSamplingProportion().multiply(qcFAIRecordData.getRollQty()).divide(new BigDecimal(100), 3, BigDecimal.ROUND_HALF_UP); + BigDecimal d = partAttribute.get(0).getDefaultSamplingProportion().multiply(qcFAIRecordData.getRollCount()).divide(new BigDecimal(100), 3, BigDecimal.ROUND_HALF_UP); qcFAIRecordData.setSamplingQty(d); } @@ -2841,7 +2871,7 @@ public class QcServiceImpl implements QcService { List dataList = qcMapper.searchSamplingProgrammeDetails(samplingInspectionProgrammeData); // 根据抽样方案确定抽样数 for (QcSamplingInspectionProgrammeData programmeData : dataList) { - if (programmeData.getSamplingLevelNo().equals(familyAttribute.get(0).getSamplingLevelNo()) && (recordData.getRollQty().compareTo(programmeData.getMinQty()) == 1 || recordData.getRollQty().compareTo(programmeData.getMinQty()) == 0) && (recordData.getRollQty().compareTo(programmeData.getMaxQty()) == -1 || recordData.getRollQty().compareTo(programmeData.getMaxQty()) == 0) ){ + if (programmeData.getSamplingLevelNo().equals(familyAttribute.get(0).getSamplingLevelNo()) && (recordData.getRollCount().compareTo(programmeData.getMinQty()) == 1 || recordData.getRollCount().compareTo(programmeData.getMinQty()) == 0) && (recordData.getRollCount().compareTo(programmeData.getMaxQty()) == -1 || recordData.getRollCount().compareTo(programmeData.getMaxQty()) == 0) ){ qcFAIRecordData.setSamplingQty(programmeData.getSamplingQty()); } } @@ -2850,7 +2880,7 @@ public class QcServiceImpl implements QcService { qcFAIRecordData.setSamplingQty(familyAttribute.get(0).getDefaultSamplingQuantity()); } else if (familyAttribute.get(0).getDefaultSamplingProportion() != null) { // 也没有维护默认抽样数,最后根据默认抽样比例来确定 - qcFAIRecordData.setSamplingQty(familyAttribute.get(0).getDefaultSamplingProportion().multiply(qcFAIRecordData.getRollQty()).divide(new BigDecimal(100),3,BigDecimal.ROUND_HALF_UP)); + qcFAIRecordData.setSamplingQty(familyAttribute.get(0).getDefaultSamplingProportion().multiply(qcFAIRecordData.getRollCount()).divide(new BigDecimal(100),3,BigDecimal.ROUND_HALF_UP)); } // 获取根据该检验模板下维护的检验项目 diff --git a/src/main/resources/mapper/pms/QcMapper.xml b/src/main/resources/mapper/pms/QcMapper.xml index 81660e71..2fd9d7fd 100644 --- a/src/main/resources/mapper/pms/QcMapper.xml +++ b/src/main/resources/mapper/pms/QcMapper.xml @@ -99,7 +99,8 @@ qm.method_name, qm.method_remark, epi.inspection_type_no, - qit.inspection_type_name + qit.inspection_type_name, + epi.item_sampling_quantity FROM eam_properties_item as epi LEFT JOIN qc_method_item as qmi on epi.ItemNo = qmi.ItemNo and epi.site = qmi.site LEFT JOIN qc_method as qm on qmi.method_no = qm.method_no and qmi.site = qm.site @@ -137,8 +138,8 @@ - INSERT INTO eam_properties_item (site, ItemNo, ItemDesc, DefaultValue, ValueType, ValueType_DB, ValueChooseFlag, CreatedDate, CreatedBy, MaxValue, MinValue, ItemRemark, ItemType, update_date, update_by, inspection_type_no) - VALUES (#{site}, #{itemNo}, #{itemDesc}, #{defaultValue}, #{valueType}, #{valueTypeDb}, #{valueChooseFlag}, GetDate(), #{createdBy}, #{maxValue,jdbcType=DECIMAL}, #{minValue,jdbcType=DECIMAL}, #{itemRemark}, #{itemType}, getDate(), #{updateBy}, #{inspectionTypeNo}) + INSERT INTO eam_properties_item (site, ItemNo, ItemDesc, DefaultValue, ValueType, ValueType_DB, ValueChooseFlag, CreatedDate, CreatedBy, MaxValue, MinValue, ItemRemark, ItemType, update_date, update_by, inspection_type_no, item_sampling_quantity) + VALUES (#{site}, #{itemNo}, #{itemDesc}, #{defaultValue}, #{valueType}, #{valueTypeDb}, #{valueChooseFlag}, GetDate(), #{createdBy}, #{maxValue,jdbcType=DECIMAL}, #{minValue,jdbcType=DECIMAL}, #{itemRemark}, #{itemType}, getDate(), #{updateBy}, #{inspectionTypeNo}, #{itemSamplingQuantity}) @@ -160,7 +161,8 @@ ItemRemark = #{itemRemark}, update_date = getDate(), update_by = #{updateBy}, - inspection_type_no = #{inspectionTypeNo} + inspection_type_no = #{inspectionTypeNo}, + item_sampling_quantity = #{itemSamplingQuantity} WHERE site = #{site} and ItemNo = #{itemNo} and ItemType = #{itemType} @@ -436,7 +438,8 @@ b.ItemRemark, b.ItemType, a.object_id, - eo.objectDesc + eo.objectDesc, + b.item_sampling_quantity FROM qc_template_detailed a LEFT JOIN eam_properties_item b ON a.ItemNo = b.ItemNo and a.site = b.site LEFT JOIN eam_object eo ON a.object_id = eo.ObjectID and a.site = b.site @@ -1188,11 +1191,14 @@ FROM qc_sampling_inspection_programme site = #{query.site} + + AND sampling_programme_no LIKE '%' + #{query.samplingProgrammeNo}+'%' + - AND qa.sampling_programme_code LIKE '%' + #{query.samplingProgrammeCode}+'%' + AND sampling_programme_code LIKE '%' + #{query.samplingProgrammeCode}+'%' - AND pf.sampling_programme_desc LIKE '%' + #{query.samplingProgrammeDesc}+'%' + AND sampling_programme_desc LIKE '%' + #{query.samplingProgrammeDesc}+'%' @@ -1500,7 +1506,7 @@ CASE WHEN state = '待检验' THEN 1 WHEN state = '待审核' THEN 2 WHEN state = '已完成' THEN 3 - END + END, task_date desc @@ -1781,7 +1787,7 @@ CASE WHEN state = '待检验' THEN 1 WHEN state = '待审核' THEN 2 WHEN state = '已完成' THEN 3 - END + END, task_date desc @@ -1991,7 +1997,8 @@ qir.supplier_no, qir.site, qir.po_orderNo, - qir.po_itemNo + qir.po_itemNo, + qir.roll_count FROM qc_iqc_record as qir LEFT JOIN part p ON qir.part_no = p.part_no and qir.site = p.site WHERE qir.site = #{site} and qir.detail_flag = 'N' @@ -2034,13 +2041,15 @@ disposal_remark, inspector_date, inspector_no, + dbo.qc_get_inspector_name(site, inspector_no) as inspectorName, unqualified_quantity, submit_flag, roll_no, supplier_no, dbo.qc_get_supplier_name(site, supplier_no) as supplierDesc, po_orderNo, - po_itemNo + po_itemNo, + roll_count FROM qc_iqc_record site = #{query.site} @@ -2070,7 +2079,7 @@ CASE WHEN state = '待检验' THEN 1 WHEN state = '待审核' THEN 2 WHEN state = '已完成' THEN 3 - END + END, create_date desc @@ -2354,7 +2363,7 @@ CASE WHEN state = '待检验' THEN 1 WHEN state = '待审核' THEN 2 WHEN state = '已完成' THEN 3 - END + END, task_date desc