diff --git a/src/main/java/com/xujie/sys/modules/pms/mapper/QcMapper.java b/src/main/java/com/xujie/sys/modules/pms/mapper/QcMapper.java index be7c9d97..ab6ddce1 100644 --- a/src/main/java/com/xujie/sys/modules/pms/mapper/QcMapper.java +++ b/src/main/java/com/xujie/sys/modules/pms/mapper/QcMapper.java @@ -232,7 +232,7 @@ public interface QcMapper { List selectFAIBasicData(); - QcFAIRecordData selectPartAttributeByPartNo(String partNo, String attributeType, String inspectionTypeNo); + List selectPartAttributeByPartNo(String partNo, String attributeType, String inspectionTypeNo); String queryLastFAIInspectionNo(QcFAIRecordData data); 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 ee9252bd..2d611bbe 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 @@ -1505,46 +1505,46 @@ public class QcServiceImpl implements QcService { String partNo = recordData.getPartNo(); String attributeType1 = "A"; // 获取该物料属性下维护的FAI检验模板 - QcFAIRecordData partAttribute = qcMapper.selectPartAttributeByPartNo(partNo, attributeType1, qcFAIRecordData.getInspectionTypeNo()); + List partAttribute = qcMapper.selectPartAttributeByPartNo(partNo, attributeType1, qcFAIRecordData.getInspectionTypeNo()); if (partAttribute != null){ - qcFAIRecordData.setInspectionCycle(partAttribute.getInspectionCycle()); // 检验周期 + qcFAIRecordData.setInspectionCycle(partAttribute.get(0).getInspectionCycle()); // 检验周期 // 获取抽样数量 QcSamplingInspectionProgrammeData samplingInspectionProgrammeData = new QcSamplingInspectionProgrammeData(); - samplingInspectionProgrammeData.setSamplingProgrammeNo(partAttribute.getSamplingProgrammeNo()); + samplingInspectionProgrammeData.setSamplingProgrammeNo(partAttribute.get(0).getSamplingProgrammeNo()); // 获取抽样方案维护的矩阵详情 List dataList = qcMapper.searchSamplingProgrammeDetails(samplingInspectionProgrammeData); // 先根据抽样方案确定抽样数 for (QcSamplingInspectionProgrammeData programmeData : dataList) { - if (programmeData.getSamplingLevelNo() == partAttribute.getSamplingLevelNo() && (qcFAIRecordData.getRollQty().compareTo(programmeData.getMinQty()) == 1 || qcFAIRecordData.getRollQty().compareTo(programmeData.getMinQty()) == 0) && (qcFAIRecordData.getRollQty().compareTo(programmeData.getMaxQty()) == -1 || qcFAIRecordData.getRollQty().compareTo(programmeData.getMaxQty()) == 0) ){ + if (programmeData.getSamplingLevelNo() == partAttribute.get(0).getSamplingLevelNo() && (qcFAIRecordData.getRollQty().compareTo(programmeData.getMinQty()) == 1 || qcFAIRecordData.getRollQty().compareTo(programmeData.getMinQty()) == 0) && (qcFAIRecordData.getRollQty().compareTo(programmeData.getMaxQty()) == -1 || qcFAIRecordData.getRollQty().compareTo(programmeData.getMaxQty()) == 0) ){ qcFAIRecordData.setSamplingQty(programmeData.getSamplingQty()); } } // 再根据默认抽样数来确定 if (qcFAIRecordData.getSamplingQty() == null){ - qcFAIRecordData.setSamplingQty(partAttribute.getDefaultSamplingQuantity()); + qcFAIRecordData.setSamplingQty(partAttribute.get(0).getDefaultSamplingQuantity()); } // 再根据默认抽样比例来确定 if (qcFAIRecordData.getSamplingQty() == null){ - qcFAIRecordData.setSamplingQty(partAttribute.getDefaultSamplingProportion().multiply(qcFAIRecordData.getRollQty()).divide(new BigDecimal(100),3,BigDecimal.ROUND_HALF_UP)); + qcFAIRecordData.setSamplingQty(partAttribute.get(0).getDefaultSamplingProportion().multiply(qcFAIRecordData.getRollQty()).divide(new BigDecimal(100),3,BigDecimal.ROUND_HALF_UP)); } // 获取根据该检验模板下维护的检验项目 QcTemplateData templateData = new QcTemplateData(); - templateData.setTemplateId(partAttribute.getTemplateId()); + templateData.setTemplateId(partAttribute.get(0).getTemplateId()); templateData.setItemType("D"); List itemList = qcMapper.templateDetailsSearch(templateData); QcFAIRecordData faiRecordData = new QcFAIRecordData(); faiRecordData.setInspectionNo(qcFAIRecordData.getInspectionNo()); // 检验单号 faiRecordData.setOrderNo(qcFAIRecordData.getOrderNo()); // 工单号 - faiRecordData.setTemplateId(partAttribute.getTemplateId()); // 模板编码 - faiRecordData.setSamplingLevelNo(partAttribute.getSamplingLevelNo()); // 检验水平编码 - faiRecordData.setSamplingLevelDesc(partAttribute.getSamplingLevelDesc()); // 检验水平名称 - faiRecordData.setSamplingProgrammeNo(partAttribute.getSamplingProgrammeNo()); // 抽样方案编码 - faiRecordData.setSamplingProgrammeDesc(partAttribute.getSamplingProgrammeDesc()); // 抽样方案名称 - faiRecordData.setAql(partAttribute.getAql()); // aql - faiRecordData.setAc(partAttribute.getAc()); // ac - faiRecordData.setRe(partAttribute.getRe()); // re + faiRecordData.setTemplateId(partAttribute.get(0).getTemplateId()); // 模板编码 + faiRecordData.setSamplingLevelNo(partAttribute.get(0).getSamplingLevelNo()); // 检验水平编码 + faiRecordData.setSamplingLevelDesc(partAttribute.get(0).getSamplingLevelDesc()); // 检验水平名称 + faiRecordData.setSamplingProgrammeNo(partAttribute.get(0).getSamplingProgrammeNo()); // 抽样方案编码 + faiRecordData.setSamplingProgrammeDesc(partAttribute.get(0).getSamplingProgrammeDesc()); // 抽样方案名称 + faiRecordData.setAql(partAttribute.get(0).getAql()); // aql + faiRecordData.setAc(partAttribute.get(0).getAc()); // ac + faiRecordData.setRe(partAttribute.get(0).getRe()); // re for (QcTemplateData itemData : itemList) { faiRecordData.setItemNo(itemData.getItemNo()); // 项目编码 faiRecordData.setItemDesc(itemData.getItemDesc()); // 项目名称 @@ -1817,46 +1817,46 @@ public class QcServiceImpl implements QcService { String partNo = recordData.getPartNo(); String attributeType1 = "A"; // 获取该物料属性下维护的IPQC检验模板 - QcFAIRecordData partAttribute = qcMapper.selectPartAttributeByPartNo(partNo, attributeType1, qcFAIRecordData.getInspectionTypeNo()); + List partAttribute = qcMapper.selectPartAttributeByPartNo(partNo, attributeType1, qcFAIRecordData.getInspectionTypeNo()); if (partAttribute != null){ - qcFAIRecordData.setInspectionCycle(partAttribute.getInspectionCycle()); + qcFAIRecordData.setInspectionCycle(partAttribute.get(0).getInspectionCycle()); // 获取抽样数量 QcSamplingInspectionProgrammeData samplingInspectionProgrammeData = new QcSamplingInspectionProgrammeData(); - samplingInspectionProgrammeData.setSamplingProgrammeNo(partAttribute.getSamplingProgrammeNo()); + samplingInspectionProgrammeData.setSamplingProgrammeNo(partAttribute.get(0).getSamplingProgrammeNo()); // 获取抽样方案维护的矩阵详情 List dataList = qcMapper.searchSamplingProgrammeDetails(samplingInspectionProgrammeData); // 先根据抽样方案确定抽样数 for (QcSamplingInspectionProgrammeData ProgrammeData : dataList) { - if (ProgrammeData.getSamplingLevelNo() == partAttribute.getSamplingLevelNo() && (qcFAIRecordData.getRollQty().compareTo(ProgrammeData.getMinQty()) == 1 || qcFAIRecordData.getRollQty().compareTo(ProgrammeData.getMinQty()) == 0) && (qcFAIRecordData.getRollQty().compareTo(ProgrammeData.getMaxQty()) == -1 || qcFAIRecordData.getRollQty().compareTo(ProgrammeData.getMaxQty()) == 0) ){ + if (ProgrammeData.getSamplingLevelNo() == partAttribute.get(0).getSamplingLevelNo() && (qcFAIRecordData.getRollQty().compareTo(ProgrammeData.getMinQty()) == 1 || qcFAIRecordData.getRollQty().compareTo(ProgrammeData.getMinQty()) == 0) && (qcFAIRecordData.getRollQty().compareTo(ProgrammeData.getMaxQty()) == -1 || qcFAIRecordData.getRollQty().compareTo(ProgrammeData.getMaxQty()) == 0) ){ qcFAIRecordData.setSamplingQty(ProgrammeData.getSamplingQty()); } } // 再根据默认抽样数来确定 if (qcFAIRecordData.getSamplingQty() == null){ - qcFAIRecordData.setSamplingQty(partAttribute.getDefaultSamplingQuantity()); + qcFAIRecordData.setSamplingQty(partAttribute.get(0).getDefaultSamplingQuantity()); } // 再根据默认抽样比例来确定 if (qcFAIRecordData.getSamplingQty() == null){ - qcFAIRecordData.setSamplingQty(partAttribute.getDefaultSamplingProportion().multiply(qcFAIRecordData.getRollQty()).divide(new BigDecimal(100),3,BigDecimal.ROUND_HALF_UP)); + qcFAIRecordData.setSamplingQty(partAttribute.get(0).getDefaultSamplingProportion().multiply(qcFAIRecordData.getRollQty()).divide(new BigDecimal(100),3,BigDecimal.ROUND_HALF_UP)); } // 获取根据该检验模板下维护的检验项目 QcTemplateData templateData = new QcTemplateData(); - templateData.setTemplateId(partAttribute.getTemplateId()); + templateData.setTemplateId(partAttribute.get(0).getTemplateId()); templateData.setItemType("D"); List itemList = qcMapper.templateDetailsSearch(templateData); QcFAIRecordData faiRecordData = new QcFAIRecordData(); faiRecordData.setInspectionNo(qcFAIRecordData.getInspectionNo()); // 检验单号 faiRecordData.setOrderNo(qcFAIRecordData.getOrderNo()); // 工单号 - faiRecordData.setTemplateId(partAttribute.getTemplateId()); // 模板编码 - faiRecordData.setSamplingLevelNo(partAttribute.getSamplingLevelNo()); // 检验水平编码 - faiRecordData.setSamplingLevelDesc(partAttribute.getSamplingLevelDesc()); // 检验水平名称 - faiRecordData.setSamplingProgrammeNo(partAttribute.getSamplingProgrammeNo()); // 抽样方案编码 - faiRecordData.setSamplingProgrammeDesc(partAttribute.getSamplingProgrammeDesc()); // 抽样方案名称 - faiRecordData.setAql(partAttribute.getAql()); // aql - faiRecordData.setAc(partAttribute.getAc()); // ac - faiRecordData.setRe(partAttribute.getRe()); // re + faiRecordData.setTemplateId(partAttribute.get(0).getTemplateId()); // 模板编码 + faiRecordData.setSamplingLevelNo(partAttribute.get(0).getSamplingLevelNo()); // 检验水平编码 + faiRecordData.setSamplingLevelDesc(partAttribute.get(0).getSamplingLevelDesc()); // 检验水平名称 + faiRecordData.setSamplingProgrammeNo(partAttribute.get(0).getSamplingProgrammeNo()); // 抽样方案编码 + faiRecordData.setSamplingProgrammeDesc(partAttribute.get(0).getSamplingProgrammeDesc()); // 抽样方案名称 + faiRecordData.setAql(partAttribute.get(0).getAql()); // aql + faiRecordData.setAc(partAttribute.get(0).getAc()); // ac + faiRecordData.setRe(partAttribute.get(0).getRe()); // re for (QcTemplateData itemData : itemList) { faiRecordData.setItemNo(itemData.getItemNo()); // 项目编码 faiRecordData.setItemDesc(itemData.getItemDesc()); // 项目名称 @@ -2171,45 +2171,45 @@ public class QcServiceImpl implements QcService { String partNo = data.getPartNo(); String attributeType1 = "A"; // 获取该物料属性下维护的IPQC检验模板 - QcFAIRecordData partAttribute = qcMapper.selectPartAttributeByPartNo(partNo, attributeType1, data.getInspectionTypeNo()); + List partAttribute = qcMapper.selectPartAttributeByPartNo(partNo, attributeType1, data.getInspectionTypeNo()); if (partAttribute != null){ - data.setInspectionCycle(partAttribute.getInspectionCycle()); + data.setInspectionCycle(partAttribute.get(0).getInspectionCycle()); // 获取抽样数量 QcSamplingInspectionProgrammeData samplingInspectionProgrammeData = new QcSamplingInspectionProgrammeData(); - samplingInspectionProgrammeData.setSamplingProgrammeNo(partAttribute.getSamplingProgrammeNo()); + samplingInspectionProgrammeData.setSamplingProgrammeNo(partAttribute.get(0).getSamplingProgrammeNo()); // 获取抽样方案维护的矩阵详情 List dataList = qcMapper.searchSamplingProgrammeDetails(samplingInspectionProgrammeData); // 先根据抽样方案确定抽样数 for (int a = 0; a < dataList.size(); a++) { - if (dataList.get(a).getSamplingLevelNo() == partAttribute.getSamplingLevelNo() && (data.getRollQty().compareTo(dataList.get(a).getMinQty()) == 1 || data.getRollQty().compareTo(dataList.get(a).getMinQty()) == 0) && (data.getRollQty().compareTo(dataList.get(a).getMaxQty()) == -1 || data.getRollQty().compareTo(dataList.get(a).getMaxQty()) == 0) ){ + if (dataList.get(a).getSamplingLevelNo() == partAttribute.get(0).getSamplingLevelNo() && (data.getRollQty().compareTo(dataList.get(a).getMinQty()) == 1 || data.getRollQty().compareTo(dataList.get(a).getMinQty()) == 0) && (data.getRollQty().compareTo(dataList.get(a).getMaxQty()) == -1 || data.getRollQty().compareTo(dataList.get(a).getMaxQty()) == 0) ){ data.setSamplingQty(dataList.get(a).getSamplingQty()); } } // 再根据默认抽样数来确定 if (data.getSamplingQty() == null){ - data.setSamplingQty(partAttribute.getDefaultSamplingQuantity()); + data.setSamplingQty(partAttribute.get(0).getDefaultSamplingQuantity()); } // 再根据默认抽样比例来确定 if (data.getSamplingQty() == null){ - data.setSamplingQty(partAttribute.getDefaultSamplingProportion().multiply(data.getRollQty()).divide(new BigDecimal(100),3,BigDecimal.ROUND_HALF_UP)); + data.setSamplingQty(partAttribute.get(0).getDefaultSamplingProportion().multiply(data.getRollQty()).divide(new BigDecimal(100),3,BigDecimal.ROUND_HALF_UP)); } // 获取根据该检验模板下维护的检验项目 QcTemplateData templateData = new QcTemplateData(); - templateData.setTemplateId(partAttribute.getTemplateId()); + templateData.setTemplateId(partAttribute.get(0).getTemplateId()); templateData.setItemType("D"); List itemList = qcMapper.templateDetailsSearch(templateData); QcFAIRecordData faiRecordData = new QcFAIRecordData(); faiRecordData.setInspectionNo(data.getInspectionNo()); // 检验单号 faiRecordData.setOrderNo(data.getOrderNo()); // 工单号 - faiRecordData.setTemplateId(partAttribute.getTemplateId()); // 模板编码 - faiRecordData.setSamplingLevelNo(partAttribute.getSamplingLevelNo()); // 检验水平编码 - faiRecordData.setSamplingLevelDesc(partAttribute.getSamplingLevelDesc()); // 检验水平名称 - faiRecordData.setSamplingProgrammeNo(partAttribute.getSamplingProgrammeNo()); // 抽样方案编码 - faiRecordData.setSamplingProgrammeDesc(partAttribute.getSamplingProgrammeDesc()); // 抽样方案名称 - faiRecordData.setAql(partAttribute.getAql()); // aql - faiRecordData.setAc(partAttribute.getAc()); // ac - faiRecordData.setRe(partAttribute.getRe()); // re + faiRecordData.setTemplateId(partAttribute.get(0).getTemplateId()); // 模板编码 + faiRecordData.setSamplingLevelNo(partAttribute.get(0).getSamplingLevelNo()); // 检验水平编码 + faiRecordData.setSamplingLevelDesc(partAttribute.get(0).getSamplingLevelDesc()); // 检验水平名称 + faiRecordData.setSamplingProgrammeNo(partAttribute.get(0).getSamplingProgrammeNo()); // 抽样方案编码 + faiRecordData.setSamplingProgrammeDesc(partAttribute.get(0).getSamplingProgrammeDesc()); // 抽样方案名称 + faiRecordData.setAql(partAttribute.get(0).getAql()); // aql + faiRecordData.setAc(partAttribute.get(0).getAc()); // ac + faiRecordData.setRe(partAttribute.get(0).getRe()); // re for (int j = 0; j < itemList.size(); j++) { faiRecordData.setItemNo(itemList.get(j).getItemNo()); // 项目编码 faiRecordData.setItemDesc(itemList.get(j).getItemDesc()); // 项目名称 @@ -2310,51 +2310,50 @@ public class QcServiceImpl implements QcService { } // 主记录信息赋值 qcFAIRecordData.setInspectionNo(recordData.getInspectionNo()); // 检验单号 - qcFAIRecordData.setInspectionTypeNo("103"); // 检验类型编 + qcFAIRecordData.setInspectionTypeNo("105"); // 检验类型编 qcFAIRecordData.setPartDesc(recordData.getPartDesc()); // 明细记录信息赋值 String partNo = recordData.getPartNo(); String attributeType1 = "A"; // 获取该物料属性下维护的IQC检验模板 - QcFAIRecordData partAttribute = qcMapper.selectPartAttributeByPartNo(partNo, attributeType1, qcFAIRecordData.getInspectionTypeNo()); + List partAttribute = qcMapper.selectPartAttributeByPartNo(partNo, attributeType1, qcFAIRecordData.getInspectionTypeNo()); if (partAttribute != null){ - qcFAIRecordData.setInspectionCycle(partAttribute.getInspectionCycle()); // 检验周期 - + qcFAIRecordData.setInspectionCycle(partAttribute.get(0).getInspectionCycle()); // 检验周期 // 获取抽样数量 QcSamplingInspectionProgrammeData samplingInspectionProgrammeData = new QcSamplingInspectionProgrammeData(); - samplingInspectionProgrammeData.setSamplingProgrammeNo(partAttribute.getSamplingProgrammeNo()); + samplingInspectionProgrammeData.setSamplingProgrammeNo(partAttribute.get(0).getSamplingProgrammeNo()); // 获取抽样方案维护的矩阵详情 List dataList = qcMapper.searchSamplingProgrammeDetails(samplingInspectionProgrammeData); // 先根据抽样方案确定抽样数 for (QcSamplingInspectionProgrammeData programmeData : dataList) { - if (programmeData.getSamplingLevelNo() == partAttribute.getSamplingLevelNo() && (qcFAIRecordData.getRollQty().compareTo(programmeData.getMinQty()) == 1 || qcFAIRecordData.getRollQty().compareTo(programmeData.getMinQty()) == 0) && (qcFAIRecordData.getRollQty().compareTo(programmeData.getMaxQty()) == -1 || qcFAIRecordData.getRollQty().compareTo(programmeData.getMaxQty()) == 0) ){ + if (programmeData.getSamplingLevelNo() == partAttribute.get(0).getSamplingLevelNo() && (qcFAIRecordData.getRollQty().compareTo(programmeData.getMinQty()) == 1 || qcFAIRecordData.getRollQty().compareTo(programmeData.getMinQty()) == 0) && (qcFAIRecordData.getRollQty().compareTo(programmeData.getMaxQty()) == -1 || qcFAIRecordData.getRollQty().compareTo(programmeData.getMaxQty()) == 0) ){ qcFAIRecordData.setSamplingQty(programmeData.getSamplingQty()); } } // 再根据默认抽样数来确定 if (qcFAIRecordData.getSamplingQty() == null){ - qcFAIRecordData.setSamplingQty(partAttribute.getDefaultSamplingQuantity()); + qcFAIRecordData.setSamplingQty(partAttribute.get(0).getDefaultSamplingQuantity()); } // 再根据默认抽样比例来确定 if (qcFAIRecordData.getSamplingQty() == null){ - qcFAIRecordData.setSamplingQty(partAttribute.getDefaultSamplingProportion().multiply(qcFAIRecordData.getRollQty()).divide(new BigDecimal(100),3,BigDecimal.ROUND_HALF_UP)); + qcFAIRecordData.setSamplingQty(partAttribute.get(0).getDefaultSamplingProportion().multiply(qcFAIRecordData.getRollQty()).divide(new BigDecimal(100),3,BigDecimal.ROUND_HALF_UP)); } // 获取根据该检验模板下维护的检验项目 QcTemplateData templateData = new QcTemplateData(); - templateData.setTemplateId(partAttribute.getTemplateId()); + templateData.setTemplateId(partAttribute.get(0).getTemplateId()); templateData.setItemType("D"); List itemList = qcMapper.templateDetailsSearch(templateData); QcFAIRecordData faiRecordData = new QcFAIRecordData(); faiRecordData.setInspectionNo(qcFAIRecordData.getInspectionNo()); // 检验单号 - faiRecordData.setTemplateId(partAttribute.getTemplateId()); // 模板编码 - faiRecordData.setSamplingLevelNo(partAttribute.getSamplingLevelNo()); // 检验水平编码 - faiRecordData.setSamplingLevelDesc(partAttribute.getSamplingLevelDesc()); // 检验水平名称 - faiRecordData.setSamplingProgrammeNo(partAttribute.getSamplingProgrammeNo()); // 抽样方案编码 - faiRecordData.setSamplingProgrammeDesc(partAttribute.getSamplingProgrammeDesc()); // 抽样方案名称 - faiRecordData.setAql(partAttribute.getAql()); // aql - faiRecordData.setAc(partAttribute.getAc()); // ac - faiRecordData.setRe(partAttribute.getRe()); // re + faiRecordData.setTemplateId(partAttribute.get(0).getTemplateId()); // 模板编码 + faiRecordData.setSamplingLevelNo(partAttribute.get(0).getSamplingLevelNo()); // 检验水平编码 + faiRecordData.setSamplingLevelDesc(partAttribute.get(0).getSamplingLevelDesc()); // 检验水平名称 + faiRecordData.setSamplingProgrammeNo(partAttribute.get(0).getSamplingProgrammeNo()); // 抽样方案编码 + faiRecordData.setSamplingProgrammeDesc(partAttribute.get(0).getSamplingProgrammeDesc()); // 抽样方案名称 + faiRecordData.setAql(partAttribute.get(0).getAql()); // aql + faiRecordData.setAc(partAttribute.get(0).getAc()); // ac + faiRecordData.setRe(partAttribute.get(0).getRe()); // re for (QcTemplateData itemData : itemList) { faiRecordData.setItemNo(itemData.getItemNo()); // 项目编码 faiRecordData.setItemDesc(itemData.getItemDesc()); // 项目名称