From cc4d3f5ca110f295f74fd1279ab39ef4fcb9bb3f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E6=81=92=E6=9D=B0?= <2658502433@qq.com> Date: Mon, 11 Nov 2024 17:42:08 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E5=8A=A8=E7=94=9F=E6=88=90=E9=87=87?= =?UTF-8?q?=E8=B4=AD=E5=8D=95=E5=8F=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BpProcureOrderServiceImpl.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpProcureOrderServiceImpl.java b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpProcureOrderServiceImpl.java index f458c2f3..7c22e017 100644 --- a/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpProcureOrderServiceImpl.java +++ b/op-modules/op-wms/src/main/java/com/op/wms/service/impl/BpProcureOrderServiceImpl.java @@ -1,6 +1,7 @@ package com.op.wms.service.impl; import java.util.List; +import java.util.concurrent.atomic.AtomicInteger; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder; @@ -66,6 +67,22 @@ public class BpProcureOrderServiceImpl implements IBpProcureOrderService bpProcureOrder.setID(IdUtils.fastSimpleUUID()); BaseProduct baseProduct = baseProductMapper.selectBaseProductByProductName(bpProcureOrder.getMaterialName()); bpProcureOrder.setMaterialCode(baseProduct.getProductCode()); + AtomicInteger SEQUENCE = new AtomicInteger(101923); + // 生成序列号,确保唯一性 + int sequence = SEQUENCE.getAndIncrement(); + + // 序列号超过8位数范围时重置(理论上不会发生,除非你的程序运行了很长时间) + if (sequence > 99999999) { + SEQUENCE.set(0); + sequence = SEQUENCE.getAndIncrement(); + } + + // 格式化为8位数字,前面补零 + String formattedSequence = String.format("%08d", sequence); + + // 拼接上4作为前缀 + String s ="4" + formattedSequence; + bpProcureOrder.setProcureCode(s); return bpProcureOrderMapper.insertBpProcureOrder(bpProcureOrder); }