diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/MesNoSortCustSnNumberRuleStrategyService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/MesNoSortCustSnNumberRuleStrategyService.java index 6f9e8ab..9d66184 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/MesNoSortCustSnNumberRuleStrategyService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/numberrule/MesNoSortCustSnNumberRuleStrategyService.java @@ -1,6 +1,7 @@ package cn.estsh.i3plus.ext.mes.pcn.apiservice.serviceimpl.numberrule; import cn.estsh.i3plus.ext.mes.pcn.api.base.IMesCustomerPartService; +import cn.estsh.i3plus.ext.mes.pcn.api.busi.IMesCustomerSnTransformService; import cn.estsh.i3plus.ext.mes.pcn.apiservice.util.MesPcnException; import cn.estsh.i3plus.mes.pcn.api.iservice.busi.INumberRulePackAttributeStrategyService; import cn.estsh.i3plus.pojo.mes.bean.MesCustomerPart; @@ -14,7 +15,7 @@ import java.util.Date; import java.util.Map; /** - * @Description : 非排序客户条码打印 + * @Description : 非排序客户条码打印(武汉“通用”定制化开发) * @Reference : * @Author : junsheng.li * @CreateDate 2024/11/16 10:56 @@ -26,6 +27,9 @@ public class MesNoSortCustSnNumberRuleStrategyService implements INumberRulePack @Autowired private IMesCustomerPartService mesCustomerPartService; + @Autowired + private IMesCustomerSnTransformService mesCustomerSnTransformService; + @Override public GenSerialNoModel execute(GenSerialNoModel genSerialNoModel) { Map dataMap = genSerialNoModel.getDataMap(); @@ -47,4 +51,9 @@ public class MesNoSortCustSnNumberRuleStrategyService implements INumberRulePack genSerialNoModel.setDay(String.format("%03d",custCalendar.get(Calendar.DAY_OF_YEAR))); return genSerialNoModel; } + + @Override + public String transform(String serialNo) { + return mesCustomerSnTransformService.transformBarCodeGm(serialNo); + } } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuhanSnPrintStrategy.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuhanSnPrintStrategy.java index 15cb09e..03e82ee 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuhanSnPrintStrategy.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/print/strategy/WuhanSnPrintStrategy.java @@ -83,7 +83,7 @@ public class WuhanSnPrintStrategy implements IPrintTemplateStrategyService { genSerialNoModel.putDataMap(MesCustomerPart.class.getSimpleName(),customerPart).partSnParam(mesPart.getPartSnParam()); for (int i = 0; i < model.getPrintQty(); i++) { //保存条码信息 - MesProduceSn produceSn = generateMesProduceSn(mesPart, getCustSn(genSerialNoModel, model), model.getUserName(), model.getQty()); + MesProduceSn produceSn = generateMesProduceSn(mesPart, syncFuncService.syncSerialNo(genSerialNoModel, model.getUserName(), model.getOrganizeCode(), 1).getResultList().get(0).toString(), model.getUserName(), model.getQty()); Map printMap = getPrintMap(produceSn.getCustSn(), custPartNoPrefix, custPartNoAfterFour, numberRule); //封装打印信息 MesProduceSnPrintDataModel printDataModel = getModel(mesPart, produceSn.getCustSn(), model.getUserName(), JSONObject.toJSONString(printMap)); @@ -268,23 +268,4 @@ public class WuhanSnPrintStrategy implements IPrintTemplateStrategyService { return resultMap; } - public String getCustSn(GenSerialNoModel genSerialNoModel, MesProduceSnPrintModel model) { - String custSn = syncFuncService.syncSerialNo(genSerialNoModel, model.getUserName(), model.getOrganizeCode(), 1).getResultList().get(0).toString(); - String[] split = custSn.split("%RS%"); - StringBuilder rsStr = new StringBuilder(); - for (int i = 0; i < split.length - 1; i++) { - rsStr.append(split[i]).append((char) 30); - } - - rsStr.append(split[split.length - 1]); - StringBuilder gsStr = new StringBuilder(); - String[] split1 = rsStr.toString().split("%GS%"); - for (int i = 0; i < split1.length - 1; i++) { - gsStr.append(split1[i]).append((char) 29); - } - gsStr.append(split1[split1.length - 1]); - String[] split2 = gsStr.toString().split("%EOT%"); - return split2[0] + (char) 4; - } - }