修复gqxnyPrintStrategy空指针问题

tags/yfai-pcn-ext-v1.0
臧学普 10 months ago
parent ea346dc813
commit 0a4284cd0a

@ -121,16 +121,17 @@ public class GqxnyPrintStrategy implements IPrintTemplateStrategyService {
}else {
String sn = mesProduceSnPrintModel.getProductSn();
MesProduceSn mesProduceSn = mesProduceSnPrintModel.getMesProduceSnList().get(0);
int versionNoLength = numberRule.getSpiltRule().substring(numberRule.getSpiltRule().lastIndexOf(",") + 1).length();
//零件长度17位拓展2位,供应商7位,扩展位3个0,产线1年月日流水号4位扩展位4位标识+
//{custPartNo}{spiltrule}{custCode}{spiltrule}{spiltrule}{year}{serialNo}{spiltrule}{spiltrule}
//客户零件号-扩展位-客户代码-预留位000-产线1-年月日-条码-扩展0000-追溯位+
//splitRule 00,000,1,0000,+
//如下目的主要是截取流水号,主要把流水号转换为32位
Integer serialNoLength = numberRule.getSerialnoLength();
String snPrefix = sn.substring(0, sn.length() - versionNoLength - serialNoLength);
String snSuffix = sn.substring(sn.length() - versionNoLength);
String serialNo = sn.substring(sn.length() - versionNoLength - serialNoLength, sn.length() - versionNoLength);
String serialNo = sn.substring(sn.length()-serialNoLength-5, sn.length()-5);
String serialNo34 = toBase34(Integer.parseInt(serialNo));
serialNo34 = stringFormat(serialNo34, 4, false, "0");
sn = snPrefix + serialNo34 + snSuffix;
//封装打印信息
MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, serialNo, custPartNo, organizeName);
MesProduceSnPrintDataModel printDataModel = getModel(mesProduceSn, serialNo34, custPartNo, organizeName);
printDataModel.setBarcode(sn);
mesProduceSnPrintModel.getMesProduceSnPrintDataModelList().add(printDataModel);
//保存打印记录

Loading…
Cancel
Save