diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 965bc72..440d296 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -112,7 +112,7 @@ @ApiModelProperty(value = "预约送达时间", dataType = "String") private String planDeliverTime; - @ApiModelProperty(value = "预约取样时间/要求检完时间", dataType = "String") + @ApiModelProperty(value = "预约取样日期/要求检完时间", dataType = "String") private String requireOverTime; @ApiModelProperty(value = "委托方id(客户id)", dataType = "Long") diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 965bc72..440d296 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -112,7 +112,7 @@ @ApiModelProperty(value = "预约送达时间", dataType = "String") private String planDeliverTime; - @ApiModelProperty(value = "预约取样时间/要求检完时间", dataType = "String") + @ApiModelProperty(value = "预约取样日期/要求检完时间", dataType = "String") private String requireOverTime; @ApiModelProperty(value = "委托方id(客户id)", dataType = "Long") diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/customer/CustomerSampleInfo.java b/casic-metering-model/src/main/java/com/casic/missiles/model/customer/CustomerSampleInfo.java index 79f1880..a558165 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/customer/CustomerSampleInfo.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/customer/CustomerSampleInfo.java @@ -96,6 +96,9 @@ @ApiModelProperty(value = "外观状态", dataType = "String") private String appearanceStatus; + @ApiModelProperty(value = "证书要求", dataType = "String") + private String certificateRequire; + @ApiModelProperty(value = "检定项目/检测项目", dataType = "String") private String measureContent; diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 965bc72..440d296 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -112,7 +112,7 @@ @ApiModelProperty(value = "预约送达时间", dataType = "String") private String planDeliverTime; - @ApiModelProperty(value = "预约取样时间/要求检完时间", dataType = "String") + @ApiModelProperty(value = "预约取样日期/要求检完时间", dataType = "String") private String requireOverTime; @ApiModelProperty(value = "委托方id(客户id)", dataType = "Long") diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/customer/CustomerSampleInfo.java b/casic-metering-model/src/main/java/com/casic/missiles/model/customer/CustomerSampleInfo.java index 79f1880..a558165 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/customer/CustomerSampleInfo.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/customer/CustomerSampleInfo.java @@ -96,6 +96,9 @@ @ApiModelProperty(value = "外观状态", dataType = "String") private String appearanceStatus; + @ApiModelProperty(value = "证书要求", dataType = "String") + private String certificateRequire; + @ApiModelProperty(value = "检定项目/检测项目", dataType = "String") private String measureContent; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/register/data/order/CalibrationOrderPrintFileData.java b/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/register/data/order/CalibrationOrderPrintFileData.java new file mode 100644 index 0000000..e9bc57e --- /dev/null +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/register/data/order/CalibrationOrderPrintFileData.java @@ -0,0 +1,103 @@ +package com.casic.missiles.service.listeners.register.data.order; + +import com.casic.missiles.dto.business.file.FilePrintRegister; +import com.casic.missiles.enums.notifyevent.PrintFileDataBeanNameAliasEnum; +import com.casic.missiles.model.business.BusinessOrder; +import com.casic.missiles.model.customer.CustomerSampleInfo; +import com.casic.missiles.service.listeners.register.data.PrintFileDataGeneric; +import com.casic.missiles.service.listeners.register.data.PrintFileDataSupport; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Component; +import org.springframework.util.CollectionUtils; + +import java.util.*; + +/** + * 检定或校准委托单参数生成 + */ +@Component(PrintFileDataBeanNameAliasEnum.CALIBRATION_ORDER_BEAN) +public class CalibrationOrderPrintFileData extends PrintFileDataSupport implements PrintFileDataGeneric { + @Value("${casic.template.calibrationOrder}") + private String calibrationOrderTemplateName; + + @Override + public FilePrintRegister CustomizedPrintFileRegister(Object object, String templateFileDir) { + BusinessOrder metaData = (BusinessOrder) object; + //初始化,生成模板文件 + FilePrintRegister filePrintRegister = initialization(templateFileDir, metaData.getId(), getTemplateName(calibrationOrderTemplateName)); + //关联数据 + this.orderBaseInfoPopulate(filePrintRegister, metaData) + //样品数据 + .sampleInfoPopulate(filePrintRegister, metaData.getCustomerSampleInfoList()); + return filePrintRegister; + } + + private CalibrationOrderPrintFileData sampleInfoPopulate(FilePrintRegister filePrintRegister, List customerSampleInfoList) { + List> sampleList = new ArrayList<>(); + if(!CollectionUtils.isEmpty(customerSampleInfoList)){ + for (int i = 0; i < customerSampleInfoList.size(); i++) { + customerSampleInfoList.get(i).setSeq(i + 1); + Map map = new HashMap<>(); + map.put("seq", customerSampleInfoList.get(i).getSeq()); + map.put("sampleName", customerSampleInfoList.get(i).getSampleName()); + map.put("sampleModel", customerSampleInfoList.get(i).getSampleModel()); + map.put("manufacturingNo", customerSampleInfoList.get(i).getManufacturingNo()); + map.put("sampleNo", customerSampleInfoList.get(i).getSampleNo()); + map.put("certificateRequire", customerSampleInfoList.get(i).getCertificateRequire()); + map.put("appearanceStatus", customerSampleInfoList.get(i).getAppearanceStatus()); + map.put("specialRequire", customerSampleInfoList.get(i).getSpecialRequire()); + map.put("remark", customerSampleInfoList.get(i).getRemark()); + sampleList.add(map); + } + } + filePrintRegister.getParams().put("sampleList", sampleList); + return this; + } + + private CalibrationOrderPrintFileData orderBaseInfoPopulate(FilePrintRegister filePrintRegister, BusinessOrder metaData) { + Map map = new HashMap<>(); + map.put("orderCode", metaData.getOrderCode()); + map.put("customerName", metaData.getCustomerName()); + map.put("customerAddress", metaData.getCustomerAddress()); + map.put("deliverer", metaData.getDeliverer()); + map.put("fixedTel", metaData.getFixedTel()); + map.put("delivererTel", metaData.getDelivererTel()); + map.put("postalCode", metaData.getPostalCode()); + map.put("certificationCompany", metaData.getCertificationCompany()); + map.put("certificationCompanyAddress", metaData.getCertificationCompanyAddress()); + map.put("invoiceCompany", metaData.getInvoiceCompany()); + map.put("email", metaData.getEmail()); + map.put("requireOverTime", metaData.getRequireOverTime()); + map.put("staffNo", metaData.getStaffNo()); + map.put("receiveDate", metaData.getReceiveDate()); + map.put("type1", "\u25CB"); + map.put("type2", "\u25CB"); + map.put("type3", "\u25CB"); + map.put("type4", "\u25CB"); + map.put("type5", "\u25CB"); + if(Objects.nonNull(metaData.getContactReturn()) && 1 == metaData.getContactReturn()){ + map.put("type1", "\u2299"); + } + if(Objects.nonNull(metaData.getDirectReturn()) && 1 == metaData.getDirectReturn()){ + map.put("type2", "\u2299"); + } + if(Objects.nonNull(metaData.getNeedAccordDeclare()) && 1 == metaData.getNeedAccordDeclare()){ + map.put("type3", "\u2299"); + } + if(Objects.nonNull(metaData.getAccordLab()) && 1 == metaData.getAccordLab()){ + map.put("type4", "\u2299"); + } + if(Objects.nonNull(metaData.getNeedAdvice()) && 1 == metaData.getNeedAdvice()){ + map.put("type5", "\u2299"); + } + if(Objects.nonNull(metaData.getAgreeOther()) && 1 == metaData.getAgreeOther()){ + map.put("type6", "\u2299"); + } + Map params = new HashMap<>(); + params.putAll(map); + filePrintRegister.setParams(params); + return this; + } + + +} diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java index 965bc72..440d296 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/business/BusinessOrder.java @@ -112,7 +112,7 @@ @ApiModelProperty(value = "预约送达时间", dataType = "String") private String planDeliverTime; - @ApiModelProperty(value = "预约取样时间/要求检完时间", dataType = "String") + @ApiModelProperty(value = "预约取样日期/要求检完时间", dataType = "String") private String requireOverTime; @ApiModelProperty(value = "委托方id(客户id)", dataType = "Long") diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/customer/CustomerSampleInfo.java b/casic-metering-model/src/main/java/com/casic/missiles/model/customer/CustomerSampleInfo.java index 79f1880..a558165 100644 --- a/casic-metering-model/src/main/java/com/casic/missiles/model/customer/CustomerSampleInfo.java +++ b/casic-metering-model/src/main/java/com/casic/missiles/model/customer/CustomerSampleInfo.java @@ -96,6 +96,9 @@ @ApiModelProperty(value = "外观状态", dataType = "String") private String appearanceStatus; + @ApiModelProperty(value = "证书要求", dataType = "String") + private String certificateRequire; + @ApiModelProperty(value = "检定项目/检测项目", dataType = "String") private String measureContent; diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/register/data/order/CalibrationOrderPrintFileData.java b/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/register/data/order/CalibrationOrderPrintFileData.java new file mode 100644 index 0000000..e9bc57e --- /dev/null +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/register/data/order/CalibrationOrderPrintFileData.java @@ -0,0 +1,103 @@ +package com.casic.missiles.service.listeners.register.data.order; + +import com.casic.missiles.dto.business.file.FilePrintRegister; +import com.casic.missiles.enums.notifyevent.PrintFileDataBeanNameAliasEnum; +import com.casic.missiles.model.business.BusinessOrder; +import com.casic.missiles.model.customer.CustomerSampleInfo; +import com.casic.missiles.service.listeners.register.data.PrintFileDataGeneric; +import com.casic.missiles.service.listeners.register.data.PrintFileDataSupport; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.stereotype.Component; +import org.springframework.util.CollectionUtils; + +import java.util.*; + +/** + * 检定或校准委托单参数生成 + */ +@Component(PrintFileDataBeanNameAliasEnum.CALIBRATION_ORDER_BEAN) +public class CalibrationOrderPrintFileData extends PrintFileDataSupport implements PrintFileDataGeneric { + @Value("${casic.template.calibrationOrder}") + private String calibrationOrderTemplateName; + + @Override + public FilePrintRegister CustomizedPrintFileRegister(Object object, String templateFileDir) { + BusinessOrder metaData = (BusinessOrder) object; + //初始化,生成模板文件 + FilePrintRegister filePrintRegister = initialization(templateFileDir, metaData.getId(), getTemplateName(calibrationOrderTemplateName)); + //关联数据 + this.orderBaseInfoPopulate(filePrintRegister, metaData) + //样品数据 + .sampleInfoPopulate(filePrintRegister, metaData.getCustomerSampleInfoList()); + return filePrintRegister; + } + + private CalibrationOrderPrintFileData sampleInfoPopulate(FilePrintRegister filePrintRegister, List customerSampleInfoList) { + List> sampleList = new ArrayList<>(); + if(!CollectionUtils.isEmpty(customerSampleInfoList)){ + for (int i = 0; i < customerSampleInfoList.size(); i++) { + customerSampleInfoList.get(i).setSeq(i + 1); + Map map = new HashMap<>(); + map.put("seq", customerSampleInfoList.get(i).getSeq()); + map.put("sampleName", customerSampleInfoList.get(i).getSampleName()); + map.put("sampleModel", customerSampleInfoList.get(i).getSampleModel()); + map.put("manufacturingNo", customerSampleInfoList.get(i).getManufacturingNo()); + map.put("sampleNo", customerSampleInfoList.get(i).getSampleNo()); + map.put("certificateRequire", customerSampleInfoList.get(i).getCertificateRequire()); + map.put("appearanceStatus", customerSampleInfoList.get(i).getAppearanceStatus()); + map.put("specialRequire", customerSampleInfoList.get(i).getSpecialRequire()); + map.put("remark", customerSampleInfoList.get(i).getRemark()); + sampleList.add(map); + } + } + filePrintRegister.getParams().put("sampleList", sampleList); + return this; + } + + private CalibrationOrderPrintFileData orderBaseInfoPopulate(FilePrintRegister filePrintRegister, BusinessOrder metaData) { + Map map = new HashMap<>(); + map.put("orderCode", metaData.getOrderCode()); + map.put("customerName", metaData.getCustomerName()); + map.put("customerAddress", metaData.getCustomerAddress()); + map.put("deliverer", metaData.getDeliverer()); + map.put("fixedTel", metaData.getFixedTel()); + map.put("delivererTel", metaData.getDelivererTel()); + map.put("postalCode", metaData.getPostalCode()); + map.put("certificationCompany", metaData.getCertificationCompany()); + map.put("certificationCompanyAddress", metaData.getCertificationCompanyAddress()); + map.put("invoiceCompany", metaData.getInvoiceCompany()); + map.put("email", metaData.getEmail()); + map.put("requireOverTime", metaData.getRequireOverTime()); + map.put("staffNo", metaData.getStaffNo()); + map.put("receiveDate", metaData.getReceiveDate()); + map.put("type1", "\u25CB"); + map.put("type2", "\u25CB"); + map.put("type3", "\u25CB"); + map.put("type4", "\u25CB"); + map.put("type5", "\u25CB"); + if(Objects.nonNull(metaData.getContactReturn()) && 1 == metaData.getContactReturn()){ + map.put("type1", "\u2299"); + } + if(Objects.nonNull(metaData.getDirectReturn()) && 1 == metaData.getDirectReturn()){ + map.put("type2", "\u2299"); + } + if(Objects.nonNull(metaData.getNeedAccordDeclare()) && 1 == metaData.getNeedAccordDeclare()){ + map.put("type3", "\u2299"); + } + if(Objects.nonNull(metaData.getAccordLab()) && 1 == metaData.getAccordLab()){ + map.put("type4", "\u2299"); + } + if(Objects.nonNull(metaData.getNeedAdvice()) && 1 == metaData.getNeedAdvice()){ + map.put("type5", "\u2299"); + } + if(Objects.nonNull(metaData.getAgreeOther()) && 1 == metaData.getAgreeOther()){ + map.put("type6", "\u2299"); + } + Map params = new HashMap<>(); + params.putAll(map); + filePrintRegister.setParams(params); + return this; + } + + +} diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/register/data/order/TestOrderPrintFileData.java b/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/register/data/order/TestOrderPrintFileData.java index 0b713c2..1156f4f 100644 --- a/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/register/data/order/TestOrderPrintFileData.java +++ b/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/register/data/order/TestOrderPrintFileData.java @@ -10,10 +10,7 @@ import org.springframework.stereotype.Component; import org.springframework.util.CollectionUtils; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; /** * 检测委托单参数生成 @@ -58,23 +55,31 @@ } private TestOrderPrintFileData orderBaseInfoPopulate(FilePrintRegister filePrintRegister, BusinessOrder metaData) { - Map environmentDataParams = new HashMap<>(); - environmentDataParams.put("orderCode", metaData.getOrderCode()); - environmentDataParams.put("customerName", metaData.getCustomerName()); - environmentDataParams.put("customerAddress", metaData.getCustomerAddress()); - environmentDataParams.put("deliverer", metaData.getDeliverer()); - environmentDataParams.put("fixedTel", metaData.getFixedTel()); - environmentDataParams.put("delivererTel", metaData.getDelivererTel()); - environmentDataParams.put("postalCode", metaData.getPostalCode()); - environmentDataParams.put("certificationCompany", metaData.getCertificationCompany()); - environmentDataParams.put("certificationCompanyAddress", metaData.getCertificationCompanyAddress()); - environmentDataParams.put("invoiceCompany", metaData.getInvoiceCompany()); - environmentDataParams.put("email", metaData.getEmail()); - environmentDataParams.put("requireOverTime", metaData.getRequireOverTime()); - environmentDataParams.put("staffNo", metaData.getStaffNo()); - environmentDataParams.put("receiveDate", metaData.getReceiveDate()); + Map map = new HashMap<>(); + map.put("orderCode", metaData.getOrderCode()); + map.put("customerName", metaData.getCustomerName()); + map.put("customerAddress", metaData.getCustomerAddress()); + map.put("deliverer", metaData.getDeliverer()); + map.put("fixedTel", metaData.getFixedTel()); + map.put("delivererTel", metaData.getDelivererTel()); + map.put("postalCode", metaData.getPostalCode()); + map.put("certificationCompany", metaData.getCertificationCompany()); + map.put("certificationCompanyAddress", metaData.getCertificationCompanyAddress()); + map.put("invoiceCompany", metaData.getInvoiceCompany()); + map.put("email", metaData.getEmail()); + map.put("requireOverTime", metaData.getRequireOverTime()); + map.put("staffNo", metaData.getStaffNo()); + map.put("receiveDate", metaData.getReceiveDate()); + map.put("type1", "\u25CB"); + map.put("type2", "\u25CB"); + if(Objects.nonNull(metaData.getContactReturn()) && 1 == metaData.getContactReturn()){ + map.put("type1", "\u2299"); + } + if(Objects.nonNull(metaData.getDirectReturn()) && 1 == metaData.getDirectReturn()){ + map.put("type2", "\u2299"); + } Map params = new HashMap<>(); - params.putAll(environmentDataParams); + params.putAll(map); filePrintRegister.setParams(params); return this; }