From 89424c883ac408d9136af3345136f73f38c0124c Mon Sep 17 00:00:00 2001
From: liding <756868258@qq.com>
Date: 星期三, 18 三月 2026 10:47:20 +0800
Subject: [PATCH] 1.库存导入(添加产品和规格型号)

---
 src/main/java/com/ruoyi/basic/service/impl/ProductModelServiceImpl.java |   24 ++++++++++++++++--------
 1 files changed, 16 insertions(+), 8 deletions(-)

diff --git a/src/main/java/com/ruoyi/basic/service/impl/ProductModelServiceImpl.java b/src/main/java/com/ruoyi/basic/service/impl/ProductModelServiceImpl.java
index 9382134..b72cf61 100644
--- a/src/main/java/com/ruoyi/basic/service/impl/ProductModelServiceImpl.java
+++ b/src/main/java/com/ruoyi/basic/service/impl/ProductModelServiceImpl.java
@@ -21,6 +21,7 @@
 import com.ruoyi.sales.mapper.SalesLedgerProductMapper;
 import com.ruoyi.sales.pojo.SalesLedgerProduct;
 import lombok.AllArgsConstructor;
+import org.springframework.dao.DuplicateKeyException;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.multipart.MultipartFile;
@@ -44,16 +45,23 @@
 
     @Override
     public int addOrEditProductModel(ProductModelDto productModelDto) {
-
-        if (productModelDto.getId() == null) {
-            ProductModel productModel = new ProductModel();
-            BeanUtils.copyProperties(productModelDto, productModel);
-            return productModelMapper.insert(productModel);
-        } else {
-            return productModelMapper.updateById(productModelDto);
+        ProductModel productModel = new ProductModel();
+        BeanUtils.copyProperties(productModelDto, productModel);
+        try {
+            if (productModelDto.getId() == null) {
+                int result = productModelMapper.insert(productModel);
+                productModelDto.setId(productModel.getId());
+                return result;
+            } else {
+                int result = productModelMapper.updateById(productModel);
+                productModelDto.setId(productModel.getId());
+                return result;
+            }
+        } catch (DuplicateKeyException e) {
+            // 鎹曡幏鏁版嵁搴撳敮涓�绾︽潫寮傚父
+            throw new RuntimeException("璇ヤ骇鍝佸凡瀛樺湪鐩稿悓鐨勮鏍煎瀷鍙峰拰鍗曚綅", e);
         }
     }
-
 
     @Override
     public int delProductModel(Long[] ids) {

--
Gitblit v1.9.3