From df1917ff3b5be2a5fbd180cf9db7307dce919043 Mon Sep 17 00:00:00 2001
From: xiaoyi <908147524@qq.com>
Date: 星期一, 24 八月 2026 16:31:53 +0800
Subject: [PATCH] feat 功能修正

---
 yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageServiceImpl.java |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageServiceImpl.java
index edf4aad..64a29ac 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageServiceImpl.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/wm/packages/MesWmPackageServiceImpl.java
@@ -44,6 +44,7 @@
     private CrmCustomerApi customerApi;
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public Long createPackage(MesWmPackageSaveReqVO createReqVO) {
         // 鏍¢獙缂栫爜鍞竴鎬�
         validateCodeUnique(null, createReqVO.getCode());
@@ -61,6 +62,7 @@
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public void updatePackage(MesWmPackageSaveReqVO updateReqVO) {
         // 鏍¢獙瀛樺湪涓斾负鑽夌
         validatePackageExistsAndDraft(updateReqVO.getId());
@@ -101,9 +103,15 @@
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public void finishPackage(Long id) {
         // 鏍¢獙瀛樺湪涓斾负鑽夌
         validatePackageExistsAndDraft(id);
+
+        // 瑁呯鍗曞繀椤诲瓨鍦ㄨ绠辨槑缁�
+        if (packageLineService.getPackageLineCountByPackageId(id) == 0) {
+            throw exception(WM_PACKAGE_LINE_NOT_EXISTS);
+        }
 
         // 鏇存柊鐘舵�佷负宸插畬鎴�
         packageMapper.updateById(new MesWmPackageDO()
@@ -116,6 +124,7 @@
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public void addChildPackage(Long parentId, Long childId) {
         // 鏍¢獙鐖剁瀛樺湪涓斾负鑽夌
         validatePackageExistsAndDraft(parentId);
@@ -129,6 +138,7 @@
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public void removeChildPackage(Long childId) {
         // 鏍¢獙瀛愮瀛樺湪
         MesWmPackageDO child = validatePackageExists(childId);

--
Gitblit v1.9.3