From 974edeb0c94bc9140dfdcc74d0d799994c959c9f Mon Sep 17 00:00:00 2001
From: chenhj <1263187585@qq.com>
Date: 星期三, 14 一月 2026 09:35:08 +0800
Subject: [PATCH] Merge branch 'jtwy' of http://114.132.189.42:9002/r/product-inventory-management-after into jtwy

---
 src/main/java/com/ruoyi/basic/service/impl/ProductModelServiceImpl.java |   24 +++++++++++++++++++++++-
 1 files changed, 23 insertions(+), 1 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 eb9eedb..bc3840f 100644
--- a/src/main/java/com/ruoyi/basic/service/impl/ProductModelServiceImpl.java
+++ b/src/main/java/com/ruoyi/basic/service/impl/ProductModelServiceImpl.java
@@ -1,6 +1,7 @@
 package com.ruoyi.basic.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -13,10 +14,15 @@
 import com.ruoyi.basic.service.IProductModelService;
 import com.ruoyi.common.utils.bean.BeanUtils;
 import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.utils.uuid.IdUtils;
+import com.ruoyi.sales.mapper.SalesLedgerProductMapper;
+import com.ruoyi.sales.pojo.SalesLedgerProduct;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
 import org.springframework.web.multipart.MultipartFile;
 
+import java.time.LocalDate;
+import java.time.format.DateTimeFormatter;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
@@ -33,6 +39,7 @@
 public class ProductModelServiceImpl extends ServiceImpl<ProductModelMapper, ProductModel> implements IProductModelService {
 
     private final ProductMapper productMapper;
+    private final SalesLedgerProductMapper salesLedgerProductMapper;
     private ProductModelMapper productModelMapper;
 
     @Override
@@ -41,14 +48,29 @@
         if (productModelDto.getId() == null) {
             ProductModel productModel = new ProductModel();
             BeanUtils.copyProperties(productModelDto,productModel);
-            return productModelMapper.insert(productModel);
+            productModelMapper.insert(productModel);
+
+            String dateStr = LocalDate.now().format(DateTimeFormatter.ofPattern("yyyyMMdd"));
+            String idStr = String.format("%06d", productModel.getId()); // 鍏綅琛�0
+            String newProductCode = "BM" + dateStr + idStr;
+            // 鏇存柊鏁版嵁搴撲腑鐨刾roductCode
+            productModel.setProductCode(newProductCode);
+            return productModelMapper.updateById(productModel);
         } else {
             return productModelMapper.updateById(productModelDto);
         }
     }
 
+
+
     @Override
     public int delProductModel(Long[] ids) {
+        List<SalesLedgerProduct> salesLedgerProducts = salesLedgerProductMapper.selectList(new QueryWrapper<SalesLedgerProduct>()
+                .lambda().in(SalesLedgerProduct::getProductModelId, ids));
+        if (salesLedgerProducts != null && salesLedgerProducts.size() > 0) {
+
+            throw new RuntimeException("宸茬粡瀛樺湪璇ヤ骇鍝佺殑閿�鍞彴璐﹀拰閲囪喘鍙拌处");
+        }
         return productModelMapper.deleteBatchIds(Arrays.asList(ids));
     }
 

--
Gitblit v1.9.3