From 8655501ffb8dbdaf2508e575933063e6731be714 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期五, 28 八月 2026 17:14:40 +0800
Subject: [PATCH] refactor(mes): 重构MES生产批次和袋码管理功能

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/pro/bagcode/MesProBagCodeService.java |   35 ++++++++++++++++++++++++++++++++++-
 1 files changed, 34 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..6ffee5f 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,13 @@
 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.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 +29,14 @@
      * @param generateReqVO 鐢熸垚淇℃伅
      * @return 鐢熸垚缁� UUID锛堟爣璁板悓涓�娆$敓鎴愮殑鏁版嵁鍖咃級
      */
-    String generateBagCodes(@Valid MesProBagCodeGenerateReqVO generateReqVO);
+    MesProBagCodeGenerateRespVO generateBagCodes(@Valid MesProBagCodeGenerateReqVO generateReqVO);
+
+    void bindBatch(@Valid MesProBagCodeBindBatchReqVO bindReqVO);
+
+    /**
+     * 浣滃簾鐮存崯琚嬬爜骞跺湪鍘熸壒娆$敓鎴愮瓑閲忔浛鎹㈣鐮�
+     */
+    MesProBagCodeReplaceRespVO replaceBagCodes(@Valid MesProBagCodeReplaceReqVO replaceReqVO);
 
     /**
      * 鍒犻櫎鐢熸垚缁勶紙浠�"宸茬敓鎴�"鐘舵�佷笖鏈粦瀹氭墭鐩樼殑琚嬬爜鍏佽鍒犻櫎锛�
@@ -80,6 +91,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 +129,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