From 7580d02bd3f9399143a6a388732658bea2610bc4 Mon Sep 17 00:00:00 2001
From: tuqin <tuqin@tuqin.cn>
Date: 星期二, 29 九月 2026 15:05:19 +0800
Subject: [PATCH] feat: 业务编码统一为16位纯数字并保证全系统唯一
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/bagcode/MesProBagCodeServiceImpl.java | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/bagcode/MesProBagCodeServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/bagcode/MesProBagCodeServiceImpl.java
index c8f11c4..591eaf2 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/bagcode/MesProBagCodeServiceImpl.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/bagcode/MesProBagCodeServiceImpl.java
@@ -25,6 +25,7 @@
import cn.iocoder.yudao.module.mes.dal.mysql.pro.bagcode.MesProBagCodeReplaceMapper;
import cn.iocoder.yudao.module.mes.dal.mysql.pro.batch.MesProBatchMapper;
import cn.iocoder.yudao.module.mes.dal.mysql.pro.pallet.MesProPalletMapper;
+import cn.iocoder.yudao.module.mes.dal.redis.MesCodeRedisDAO;
import cn.iocoder.yudao.module.mes.enums.pro.MesProBagCodeStatusEnum;
import cn.iocoder.yudao.module.mes.enums.pro.MesProBatchStatusEnum;
import cn.iocoder.yudao.module.mes.enums.pro.MesProPalletStatusEnum;
@@ -85,6 +86,9 @@
* 璁¢噺鍗曚綅绫诲瀷銆孨鍗冨厠銆嶏細姣忔墭鐩樿 N 涓鐮�
*/
private static final Pattern KG_TYPE_PATTERN = Pattern.compile("^(\\d{1,5})鍗冨厠$");
+
+ @Resource
+ private MesCodeRedisDAO codeRedisDao;
@Override
@Transactional(rollbackFor = Exception.class)
@@ -163,7 +167,7 @@
int bagNo = startNo + i;
bagCodes.add(new MesProBagCodeDO()
.setUuid(uuid)
- .setCode("BAG-" + StrUtil.padPre(String.valueOf(bagNo), 8, '0'))
+ .setCode(codeRedisDao.generate())
.setBagNo(bagNo)
.setItemId(item.getId())
.setItemCode(item.getCode())
@@ -339,7 +343,7 @@
MesProPalletDO pallet = oldBagCode.getPalletId() == null ? null : palletMap.get(oldBagCode.getPalletId());
MesProBagCodeDO newBagCode = new MesProBagCodeDO()
.setUuid(replaceUuid)
- .setCode(batch.getCode() + "-" + StrUtil.padPre(String.valueOf(newBagNo), 4, '0'))
+ .setCode(codeRedisDao.generate())
.setBagNo(newBagNo)
.setBatchId(batch.getId())
.setBatchCode(batch.getCode())
--
Gitblit v1.9.3