From f7273277023f3497ac071bf98f556a569cb4dd25 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期四, 17 九月 2026 16:24:10 +0800
Subject: [PATCH] feat(mes): 重构袋码生成与物料分类功能
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/bagcode/MesProBagCodeService.java | 45 ++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 44 insertions(+), 1 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/bagcode/MesProBagCodeService.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/bagcode/MesProBagCodeService.java
index 5608218..546f9d6 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/bagcode/MesProBagCodeService.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/bagcode/MesProBagCodeService.java
@@ -1,9 +1,14 @@
package cn.iocoder.yudao.module.mes.service.pro.bagcode;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
+import cn.iocoder.yudao.module.mes.controller.admin.pro.bagcode.vo.MesProBagCodeBindBatchReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.pro.bagcode.vo.MesProBagCodeBindReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.pro.bagcode.vo.MesProBagCodeGenerateReqVO;
+import cn.iocoder.yudao.module.mes.controller.admin.pro.bagcode.vo.MesProBagCodeGenerateRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.pro.bagcode.vo.MesProBagCodePageReqVO;
+import cn.iocoder.yudao.module.mes.controller.admin.pro.bagcode.vo.MesProBagCodeRawGenerateReqVO;
+import cn.iocoder.yudao.module.mes.controller.admin.pro.bagcode.vo.MesProBagCodeReplaceReqVO;
+import cn.iocoder.yudao.module.mes.controller.admin.pro.bagcode.vo.MesProBagCodeReplaceRespVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.pro.bagcode.MesProBagCodeDO;
import jakarta.validation.Valid;
@@ -25,7 +30,23 @@
* @param generateReqVO 鐢熸垚淇℃伅
* @return 鐢熸垚缁� UUID锛堟爣璁板悓涓�娆$敓鎴愮殑鏁版嵁鍖咃級
*/
- String generateBagCodes(@Valid MesProBagCodeGenerateReqVO generateReqVO);
+ MesProBagCodeGenerateRespVO generateBagCodes(@Valid MesProBagCodeGenerateReqVO generateReqVO);
+
+ /**
+ * 鐢熸垚鍘熷琚嬬爜锛氫粎閫夊搧绉�+琚嬬爜鏁伴噺锛屼笉鏍¢獙璁¢噺鍗曚綅绫诲瀷銆佷笉鐢熸垚鎵樼洏锛�
+ * 琚嬬爜甯﹀搧绉嶅啑浣欙紝鍚庣画鍙甯稿綍鍏ユ壒娆�/缁戝畾鎵樼洏
+ *
+ * @param rawGenerateReqVO 鐢熸垚淇℃伅
+ * @return 鐢熸垚缁� UUID 涓庢暟閲忥紙type/perPallet/palletIds 涓虹┖锛�
+ */
+ MesProBagCodeGenerateRespVO generateRawBagCodes(@Valid MesProBagCodeRawGenerateReqVO rawGenerateReqVO);
+
+ void bindBatch(@Valid MesProBagCodeBindBatchReqVO bindReqVO);
+
+ /**
+ * 浣滃簾鐮存崯琚嬬爜骞跺湪鍘熸壒娆$敓鎴愮瓑閲忔浛鎹㈣鐮�
+ */
+ MesProBagCodeReplaceRespVO replaceBagCodes(@Valid MesProBagCodeReplaceReqVO replaceReqVO);
/**
* 鍒犻櫎鐢熸垚缁勶紙浠�"宸茬敓鎴�"鐘舵�佷笖鏈粦瀹氭墭鐩樼殑琚嬬爜鍏佽鍒犻櫎锛�
@@ -80,6 +101,13 @@
MesProBagCodeDO getBagCodeByCode(String code);
/**
+ * 鏌ヨ琚嬬爜鏇挎崲璁板綍
+ */
+ cn.iocoder.yudao.module.mes.dal.dataobject.pro.bagcode.MesProBagCodeReplaceDO getReplacementByOldBagCodeId(Long oldBagCodeId);
+
+ cn.iocoder.yudao.module.mes.dal.dataobject.pro.bagcode.MesProBagCodeReplaceDO getReplacementByNewBagCodeId(Long newBagCodeId);
+
+ /**
* 鑾峰緱琚嬬爜鍒嗛〉
*
* @param pageReqVO 鍒嗛〉鏌ヨ
@@ -111,4 +139,19 @@
*/
List<MesProBagCodeDO> getBagCodeListByBatchId(Long batchId);
+ /**
+ * 鏍囪琚嬬爜涓哄凡鍑哄簱锛堣褰曢攢鍞嚭搴撳崟缂栧彿鍜屽嚭搴撴椂闂达級
+ *
+ * @param id 琚嬬爜缂栧彿
+ * @param salesId 閿�鍞嚭搴撳崟缂栧彿
+ */
+ void markOutbound(Long id, Long salesId);
+
+ /**
+ * 娓呴櫎琚嬬爜鐨勫嚭搴撴爣璁帮紙鍙栨秷鍑哄簱鍗曟椂浣跨敤锛�
+ *
+ * @param id 琚嬬爜缂栧彿
+ */
+ void clearOutbound(Long id);
+
}
--
Gitblit v1.9.3