From 90b526ef4e3fd4f20546128bf058fbfb5f1051e4 Mon Sep 17 00:00:00 2001
From: whycxzp <perryhsu@163.com>
Date: 星期五, 22 九月 2023 15:03:13 +0800
Subject: [PATCH] 产品上传后将所有历史版本都状态设置为不可用0

---
 src/main/java/com/whyc/service/ProductHistoryService.java |   37 +++++++++++++++++++++++--------------
 1 files changed, 23 insertions(+), 14 deletions(-)

diff --git a/src/main/java/com/whyc/service/ProductHistoryService.java b/src/main/java/com/whyc/service/ProductHistoryService.java
index 8cd3c23..332a3d2 100644
--- a/src/main/java/com/whyc/service/ProductHistoryService.java
+++ b/src/main/java/com/whyc/service/ProductHistoryService.java
@@ -19,6 +19,7 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import java.util.Date;
+import java.util.LinkedList;
 import java.util.List;
 
 @Service
@@ -53,25 +54,33 @@
     public void insertAndUpdateEnabled(ProductHistory productHistory) {
         QueryWrapper<ProductHistory> query = Wrappers.query();
         query.eq("parent_code",productHistory.getParentCode())
-                .eq("custom_code",productHistory.getCustomCode()).eq("enabled",1);
-        ProductHistory productEnabled = mapper.selectOne(query);
+                .eq("custom_code",productHistory.getCustomCode()).ne("enabled",0);
+        List<ProductHistory> productNoZeroList = mapper.selectList(query);
         //娣诲姞鏂板鏃ュ織鍒皌b_product_lock_log琛�
-        ProductLockLog lockLog = new ProductLockLog();
-        lockLog.setParentCode(productEnabled.getParentCode());
-        lockLog.setCustomCode(productEnabled.getCustomCode());
-        lockLog.setVersion(productEnabled.getVersion());
-        lockLog.setVersionTime(DateUtil.YYYY_MM_DD_HH_MM_SS.format(productEnabled.getVersionTime()));
-        lockLog.setReason("浜у搧bom涓婁紶,鍘熺敓鏁堢増鏈攣瀹�");
-        lockLog.setOwner(ActionUtil.getUser().getName());
-        lockLog.setCreateTime(new Date());
-        //1浠h〃鏃ュ織绫诲瀷涓�:閿佸畾
-        lockLog.setLockFlag(1);
+        List<ProductLockLog> lockLogs = new LinkedList<>();
+        for (ProductHistory historyNoZero : productNoZeroList) {
+            ProductLockLog lockLog = new ProductLockLog();
+            lockLog.setParentCode(historyNoZero.getParentCode());
+            lockLog.setCustomCode(historyNoZero.getCustomCode());
+            lockLog.setVersion(historyNoZero.getVersion());
+            lockLog.setVersionTime(DateUtil.YYYY_MM_DD_HH_MM_SS.format(historyNoZero.getVersionTime()));
+            if(historyNoZero.getEnabled() == 1) {
+                lockLog.setReason("浜у搧bom涓婁紶,鍘熺敓鏁堢増鏈攣瀹�");
+            }else{
+                lockLog.setReason("浜у搧bom涓婁紶,鍘熷緟瀹℃牳鐗堟湰閿佸畾");
+            }
+            lockLog.setOwner(ActionUtil.getUser().getName());
+            lockLog.setCreateTime(new Date());
+            //1浠h〃鏃ュ織绫诲瀷涓�:閿佸畾
+            lockLog.setLockFlag(1);
 
-        lockLogService.insert(lockLog);
+            lockLogs.add(lockLog);
+        }
+        lockLogService.insertBatch(lockLogs);
 
         UpdateWrapper<ProductHistory> update = Wrappers.update();
         update.set("enabled",0).eq("parent_code",productHistory.getParentCode())
-                .eq("custom_code",productHistory.getCustomCode()).eq("enabled",1);
+                .eq("custom_code",productHistory.getCustomCode()).ne("enabled",0);
         mapper.update(null,update);
 
         mapper.insert(productHistory);

--
Gitblit v1.9.1