diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/OrderNoMakeUtil.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/OrderNoMakeUtil.java index b865b6b..8734d8f 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/OrderNoMakeUtil.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/util/OrderNoMakeUtil.java @@ -50,11 +50,19 @@ public class OrderNoMakeUtil { if (orderNoRule.getSerialNo() > 0 && orderNo.indexOf(PlatformConstWords.SERIAL_NO) != -1) { String newNo = orderNo.substring(0,orderNo.indexOf(PlatformConstWords.SERIAL_NO)); String oldNo = orderNoRule.getOrderNo().substring(0,orderNo.indexOf(PlatformConstWords.SERIAL_NO)); + + long serialNo = orderNoRule.getSerialNo() + orderNoRule.getSerialNoIncrement(); + // 前缀(日期)不同后是否重置流水号 if(!newNo.equals(oldNo) && orderNoRule.getIsCycle() == CommonEnumUtil.TRUE_OR_FALSE.TRUE.getValue()){ orderNoRule.setSerialNo(orderNoRule.getSerialNoSeed()); } else { - orderNoRule.setSerialNo(orderNoRule.getSerialNo() + orderNoRule.getSerialNoIncrement()); + orderNoRule.setSerialNo(serialNo); + } + + if (CommonEnumUtil.TRUE_OR_FALSE.valueOfBoolean(orderNoRule.getIsFixedLength()) + && String.valueOf(serialNo).length() > orderNoRule.getSerialNoLength()) { + orderNoRule.setSerialNo(orderNoRule.getSerialNoSeed()); } } else { orderNoRule.setSerialNo(orderNoRule.getSerialNoSeed() * orderNoRule.getSerialNoIncrement());