diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/YfaiPackageNumberRuleStrategyService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/YfaiPackageNumberRuleStrategyService.java index 073d2c0..1a0abc7 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/YfaiPackageNumberRuleStrategyService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/YfaiPackageNumberRuleStrategyService.java @@ -33,7 +33,7 @@ public class YfaiPackageNumberRuleStrategyService implements INumberRulePackAttr //| {SPILTRULE} //C901 {ORG} //| {SPILTRULE} -//401007574AAABN {PARTNO} +//401007574AAABN {PARTNO} ----- 20250612调整 wms会扫描 packageOneCode, 这个里面没有零件号, 所以变更 此段内容 为 {DYNAMICRULE} //| {SPILTRULE} //9.0 {DYNAMICRULE} 标包 一位小数 //| {SPILTRULE} @@ -45,6 +45,7 @@ public class YfaiPackageNumberRuleStrategyService implements INumberRulePackAttr //| {SPILTRULE} private final static String DR_QTY = "DR_QTY"; + private final static String DR_PARTNO = "DR_PARTNO"; @Override public GenSerialNoModel execute(GenSerialNoModel genSerialNoModel) { @@ -59,6 +60,7 @@ public class YfaiPackageNumberRuleStrategyService implements INumberRulePackAttr genSerialNoModel.setDynamicRule( new StringJoiner(MesPcnExtConstWords.COMMA) .add(((new SimpleDateFormat(MesPcnExtConstWords.DATE_FORMAT_SHORT)).format(new Date()))) + .add(DR_PARTNO) //.add(String.format("%.1f", qty)) .add(DR_QTY) .add(unit) @@ -87,6 +89,7 @@ public class YfaiPackageNumberRuleStrategyService implements INumberRulePackAttr Double qty = (!CollectionUtils.isEmpty(dataMap) && dataMap.containsKey(MesPcnExtConstWords.QTY)) ? (Double) dataMap.get(MesPcnExtConstWords.QTY) : null; if (StringUtils.isEmpty(qty)) qty = null != packageRuleContext ? packageRuleContext.getPackSpecQty() : new Double(1); serialNo = serialNo.replace(DR_QTY, String.format("%.1f", qty)); + serialNo = serialNo.replace(DR_PARTNO, genSerialNoModel.getPartNo()); genSerialNoModel.putDataMap(serialNo, packageOneCode); return serialNo; } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/ChengDuSplitFixCharPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/ChengDuSplitFixCharPrintStrategy.java index e2a2358..5b7b2a7 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/ChengDuSplitFixCharPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/ChengDuSplitFixCharPrintStrategy.java @@ -77,7 +77,7 @@ public class ChengDuSplitFixCharPrintStrategy implements IPrintTemplateStrategyS MesProduceSnPrintDataModel printDataModel = getModel(produceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().clear(); mesProduceSnPrintModel.getMesProduceSnList().add(produceSn); - Map printTemplateData = new HashMap<>(getPrintContextMap(produceSn, custPartNo)); + Map printTemplateData = new HashMap<>(getPrintContextMap(produceSn, custPartNo, isStep)); mesProduceSnPrintModel.getPrintContextList().add(printTemplateData); //保存打印记录 mesProduceSnPrintModel.getMesPrintedSnLogList().add(mesPrintedSnLogService.getMesCustomPrintedSnLog(mesProduceSnPrintModel.getUserName(), organizeCode, printDataModel, printTemplateData)); @@ -87,7 +87,7 @@ public class ChengDuSplitFixCharPrintStrategy implements IPrintTemplateStrategyS //封装打印信息 MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, custPartNo); mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().clear(); - Map printTemplateData = new HashMap<>(getPrintContextMap(mesProduceSn, custPartNo)); + Map printTemplateData = new HashMap<>(getPrintContextMap(mesProduceSn, custPartNo, isStep)); List> printDataMapList = new ArrayList<>(); printDataMapList.add(printTemplateData); mesProduceSnPrintModel.getPrintContextList().add(packResultMap(mesProduceSnPrintModel, printDataMapList)); @@ -131,7 +131,7 @@ public class ChengDuSplitFixCharPrintStrategy implements IPrintTemplateStrategyS return mesProduceSnPrintDataModel; } - private Map getPrintContextMap(MesProduceSn produceSn, String custPartNo) { + private Map getPrintContextMap(MesProduceSn produceSn, String custPartNo, boolean isStep) { Map result = new HashMap<>(); String[] splitSn = produceSn.getProductSn().split("#"); if (splitSn.length < 3) { @@ -173,7 +173,11 @@ public class ChengDuSplitFixCharPrintStrategy implements IPrintTemplateStrategyS log.error("ChengDuSplitFixCharPrintStrategy --- execute --- 报错:{}", e.getMessage()); return result; } - result.put(MesPcnExtConstWords.CUST_SN_DATA_MATRIX, "data:image/jpeg;base64," + Base64.getEncoder().encodeToString(dataMatrixCode.toByteArray())); + String encoderCode = Base64.getEncoder().encodeToString(dataMatrixCode.toByteArray()); + if (!isStep) { + encoderCode = "data:image/jpeg;base64," + encoderCode; + } + result.put(MesPcnExtConstWords.CUST_SN_DATA_MATRIX, encoderCode); return result; }