diff --git a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java index 51eadee71..09a7230ff 100644 --- a/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java +++ b/op-modules/op-plan/src/main/java/com/op/plan/service/impl/ProOrderWorkorderServiceImpl.java @@ -1315,6 +1315,7 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { while(pall.compareTo(BigDecimal.ZERO)>0){ pw = new ProOrderWorkorder(); + pw.setProductCode(pow.getProductCode()); pw.setProductName(pow.getProductName()); pw.setWorkorderCode(pow.getWorkorderCode()); pw.setBatchCode(pow.getBatchCode()); @@ -1328,13 +1329,9 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { pw.setUnit(pow.getUnit()); pw.setUmrez(pw.getBatchQuantity().multiply(pow.getUmrez()));//子单数量 pw.setPalletNo(i++); - //批次+板号+物料+工单号 - pw.setPalletCode( - pow.getBatchCode() + "-" - + pw.getPalletNo() + "-" - + pow.getProductCode().replace("0000000","") + "-" - + pow.getWorkorderCode().replace("000","") - );//workorderCode 实际上是订单号 + //托盘号:工单+板号 + pw.setPalletCode(trimZero(pow.getWorkorderCode()) + "-" + pw.getPalletNo()); + //workorderCode 实际上是订单号 pw.setCreateTime(nowDate); pw.setCreateBy(SecurityUtils.getUsername()); pw.setAddFlag("0");//增打标志 @@ -1359,14 +1356,12 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { List dtos1 = proOrderWorkorderMapper.getPreIdCardList(proOrderWorkorder); ProOrderWorkorder pow = dtos1.get(0); proOrderWorkorder.setPalletNo(palletNo); - //批次+板号+物料+工单号 + //托盘号:工单+板号 // String uniqueBarCode = pow.getProductCode().replace("0000000","") + "-" + // pow.getWorkorderCode() + "-" + proOrderWorkorder.getBatchCode() + "-" + palletNo;//订单号+批次+板次 唯一二维码标识 - String uniqueBarCode = proOrderWorkorder.getBatchCode() + "-" - + palletNo + "-" - + pow.getProductCode().replace("0000000","") + "-" - + pow.getWorkorderCode().replace("000",""); + String uniqueBarCode = trimZero(pow.getWorkorderCode()) + "-" + palletNo; ProOrderWorkorder pw = new ProOrderWorkorder(); + pw.setProductCode(pow.getProductCode());//产品编码 pw.setProductName(pow.getProductName());//产品名 pw.setWorkorderCode(pow.getWorkorderCode());//工单号 实际是订单号 pw.setBatchCode(proOrderWorkorder.getBatchCode());//批次号 @@ -1408,6 +1403,14 @@ public class ProOrderWorkorderServiceImpl implements IProOrderWorkorderService { return dtos; } + //剔除字符串前面的0 + public String trimZero(String str){ + if(str == null || str.isEmpty()){ + throw new RuntimeException("工单号为空"); + } + return str.replaceFirst("^0+", ""); + } + @Override @DS("#header.poolName") public List getIdCardListRefresh(ProOrderWorkorder proOrderWorkorder) {