From 0dc4d80053daee12a99743bae9653231470b717e Mon Sep 17 00:00:00 2001 From: jason Date: Tue, 18 Feb 2025 16:04:19 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=87=AA=E5=AE=9A=E4=B9=89?= =?UTF-8?q?=E6=89=93=E5=8D=B0=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../print/strategy/CustomFieldPrintStrategy.java | 29 ++++++++++++++++------ .../ext/mes/pcn/pojo/util/MesPcnExtConstWords.java | 4 +++ 2 files changed, 26 insertions(+), 7 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/CustomFieldPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/CustomFieldPrintStrategy.java index 7e947a1..38857dc 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/CustomFieldPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/CustomFieldPrintStrategy.java @@ -40,7 +40,7 @@ import java.util.*; * @CreateDate 2024/9/26 18:20 * @Modify: **/ -@Component +@Component(value = "CustomFieldPrintStrategy") @Slf4j public class CustomFieldPrintStrategy implements IPrintTemplateStrategyService { @Autowired @@ -83,15 +83,16 @@ public class CustomFieldPrintStrategy implements IPrintTemplateStrategyService { MesProduceSn produceSn = generateMesProduceSn(mesPart, syncFuncService.syncSerialNo(genSerialNoModel.partSnParam(mesPart.getPartSnParam()), mesProduceSnPrintModel.getUserName(), organizeCode, 1).getResultList().get(0).toString(), mesProduceSnPrintModel.getUserName(), mesProduceSnPrintModel.getQty()); //封装打印信息 MesProduceSnPrintDataModel printDataModel = getModel(produceSn, customerPart); - mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); +// mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); + mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().clear(); mesProduceSnPrintModel.getMesProduceSnList().add(produceSn); + Map printTemplateData = new HashMap<>(getPrintContextMap(produceSn, customerPart)); if (!CollectionUtils.isEmpty(fieldValueList)) { - Map printTemplateData = new HashMap<>(); for (MesLabelTemplateFieldValue fieldValue : fieldValueList) { printTemplateData.put(fieldValue.getTemplateParam(), fieldValue.getFieldValue()); } - mesProduceSnPrintModel.getPrintContextList().add(printTemplateData); } + mesProduceSnPrintModel.getPrintContextList().add(printTemplateData); //保存打印记录 mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(), organizeCode, printDataModel)); } @@ -99,14 +100,15 @@ public class CustomFieldPrintStrategy implements IPrintTemplateStrategyService { MesProduceSn mesProduceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0); //封装打印信息 MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, customerPart); - mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); +// mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel); + mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().clear(); + Map printTemplateData = new HashMap<>(getPrintContextMap(mesProduceSn, customerPart)); if (!CollectionUtils.isEmpty(fieldValueList)) { - Map printTemplateData = new HashMap<>(); for (MesLabelTemplateFieldValue fieldValue : fieldValueList) { printTemplateData.put(fieldValue.getTemplateParam(), fieldValue.getFieldValue()); } - mesProduceSnPrintModel.getPrintContextList().add(printTemplateData); } + mesProduceSnPrintModel.getPrintContextList().add(printTemplateData); //保存打印记录 mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesPrintedSnLog(mesProduceSnPrintModel.getUserName(), organizeCode, printDataModel)); } @@ -148,6 +150,19 @@ public class CustomFieldPrintStrategy implements IPrintTemplateStrategyService { return mesProduceSnPrintDataModel; } + private Map getPrintContextMap(MesProduceSn produceSn, MesCustomerPart customerPart) { + Map result = new HashMap<>(); + result.put(MesPcnExtConstWords.PART_NO, produceSn.getPartNo()); + result.put(MesPcnExtConstWords.PART_NAME, produceSn.getPartName()); + if (!Objects.isNull(customerPart)) { + result.put(MesPcnExtConstWords.CUST_PART_NO, customerPart.getCustPartNo()); + } + result.put(MesPcnExtConstWords.PRINT_BAR_CODE, produceSn.getProductSn()); + result.put(MesPcnExtConstWords.PRINT_DATE, TimeTool.getNowTime(true)); + result.put(MesPcnExtConstWords.USER_NAME, produceSn.getCreateUser()); + return result; + } + private List queryMesLabelTemplateParamPartValue(String partNo, String labelTemplate, String organizeCode) { if (StringUtil.isEmpty(labelTemplate)) { MesPcnException.throwMesBusiException("零件号【%s】未维护\"零件条码匹配模板\"字段值", partNo); diff --git a/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java b/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java index 55cb9b5..44fb47e 100644 --- a/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java +++ b/modules/i3plus-ext-mes-pcn-pojo/src/main/java/cn/estsh/i3plus/ext/mes/pcn/pojo/util/MesPcnExtConstWords.java @@ -764,6 +764,8 @@ public class MesPcnExtConstWords { public static final String QR_CODE = "qrCode"; //条形码 public static final String BAR_CODE = "barCode"; + //打印条形码 + public static final String PRINT_BAR_CODE = "barcode"; //竖杠 public static final String VERTICAL_BAR = "|"; @@ -793,6 +795,8 @@ public class MesPcnExtConstWords { public static final String PARAM = "param"; //成品零件号 public static final String FG_PART_NO = "fgPartNo"; + // 打印日期 + public static final String PRINT_DATE = "printDate"; // 打印时间 public static final String PRINT_TIME = "printTime"; //替换数