From 75aaca3a95314be8c384df18dba23c661dea742c Mon Sep 17 00:00:00 2001
From: 石广澎 <shiguangpeng@163.com>
Date: 星期一, 27 十一月 2023 19:05:38 +0800
Subject: [PATCH] feat:

---
 consum-base/src/main/java/com/consum/base/service/LWhFormInventoryGoodsServiceImpl.java |   67 +++++++++++++++++++++------------
 1 files changed, 43 insertions(+), 24 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryGoodsServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryGoodsServiceImpl.java
index 9ec51b6..1561502 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryGoodsServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryGoodsServiceImpl.java
@@ -1,14 +1,16 @@
 package com.consum.base.service;
 
 import com.consum.base.core.utils.IdUtil;
+import com.consum.base.pojo.response.FormInventoryGoodsVO;
 import com.consum.model.po.LWhFormInventoryGoods;
 import com.walker.jdbc.service.BaseServiceImpl;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.ArrayList;
 import java.util.List;
-import java.util.Map;
 
 /**
  * @Description 鐩樼偣鍗曠墿鍝�
@@ -17,13 +19,14 @@
  */
 @Slf4j
 @Service
+@Transactional(propagation = Propagation.REQUIRED)
 public class LWhFormInventoryGoodsServiceImpl extends BaseServiceImpl {
 
     /**
-     * @Description  鏍规嵁鐩樼偣鍗昳d鏌ヨ鐩樼偣鍗曠墿鍝�
+     * @return
+     * @Description 鏍规嵁鐩樼偣鍗昳d鏌ヨ鐩樼偣鍗曠墿鍝�
      * @Author 鍗㈠簡闃�
      * @Date 2023/10/31
-     * @return
      */
     public List<LWhFormInventoryGoods> getByInventoryId(Long id) {
         LWhFormInventoryGoods inventoryGoods = new LWhFormInventoryGoods();
@@ -31,36 +34,52 @@
         return this.select(inventoryGoods);
     }
 
-    /**
-     * @Description  鏂板鐩樼偣鍗曠墿鍝佽褰�
-     * @Author 鍗㈠簡闃�
-     * @Date 2023/10/31
-     * @return
-     */
-    public int add(List<Map<String, Object>> list, Long warehouseId) {
-        List<LWhFormInventoryGoods> inventoryGoodsList = new ArrayList<>();
-        for (Map<String, Object> map : list) {
-            LWhFormInventoryGoods inventoryGoods = new LWhFormInventoryGoods();
-            inventoryGoods.setId(IdUtil.generateId());
-            inventoryGoods.setWhFormInventoryId(warehouseId);
-            inventoryGoods.setBaseGoodsTemplateId((Long) map.get("id"));
-            inventoryGoods.setGoodsTemplateName((String) map.get("goodsname"));
-            inventoryGoods.setUnit((String) map.get("unit"));
-            inventoryGoods.setBaseGoodsModelsId((Long) map.get("modelsid"));
-            inventoryGoods.setBaseGoodsModelsName((String) map.get("goodsTemplateId"));
-            inventoryGoods.setInitCounts((Integer) map.get("endcount"));
 
-            inventoryGoodsList.add(inventoryGoods);
+    public int add(List<FormInventoryGoodsVO> inventoryGoodsList, Long inventoryId) {
+        List<LWhFormInventoryGoods> goodsList = new ArrayList<>();
+        for (FormInventoryGoodsVO inventoryGoods : inventoryGoodsList) {
+            LWhFormInventoryGoods lWhFormInventoryGoods = new LWhFormInventoryGoods();
+            lWhFormInventoryGoods.setId(IdUtil.generateId());
+            lWhFormInventoryGoods.setWhFormInventoryId(inventoryId);
+            lWhFormInventoryGoods.setBaseGoodsTemplateId(inventoryGoods.getBaseGoodsTemplateId());
+            lWhFormInventoryGoods.setGoodsTemplateName(inventoryGoods.getGoodsTemplateName());
+            lWhFormInventoryGoods.setUnit(inventoryGoods.getUnit());
+            lWhFormInventoryGoods.setBaseGoodsModelsId(inventoryGoods.getId());
+            lWhFormInventoryGoods.setBaseGoodsModelsName(inventoryGoods.getBaseGoodsModelsName());
+            lWhFormInventoryGoods.setInitCounts(inventoryGoods.getInventoryCount());
+            goodsList.add(lWhFormInventoryGoods);
         }
-        return this.insert(inventoryGoodsList);
+        return this.insert(goodsList);
+    }
+
+    public int updateInventoryGoods(List<FormInventoryGoodsVO> inventoryGoodsList) {
+        List<LWhFormInventoryGoods> goodsList = new ArrayList<>();
+        for (FormInventoryGoodsVO inventoryGoods : inventoryGoodsList) {
+            LWhFormInventoryGoods lWhFormInventoryGoods = new LWhFormInventoryGoods();
+            lWhFormInventoryGoods.setId(inventoryGoods.getId());
+            Integer inventoryCount = inventoryGoods.getInventoryCount();
+            Integer realNum = inventoryGoods.getRealNum();
+            if (realNum != null) {
+                int errorCount = realNum - inventoryCount ;
+                lWhFormInventoryGoods.setInventoryCounts(realNum);
+                lWhFormInventoryGoods.setErrorCounts(Math.abs(errorCount));
+                //鐩樼偣缁撴灉锛�1=姝e父锛�2=鐩樼泩锛�3=鐩樹簭锛�
+                lWhFormInventoryGoods.setInventoryResult((errorCount > 0) ? 2 : (errorCount < 0) ? 3 : 1);
+                goodsList.add(lWhFormInventoryGoods);
+            }
+
+        }
+        return this.updateBatch(goodsList);
     }
 
     /**
-     * @Description  鏍规嵁鐩樼偣鍗昳d鍒犻櫎鐩樼偣鍗曠墿鍝�
+     * @Description 鏍规嵁鐩樼偣鍗昳d鍒犻櫎鐩樼偣鍗曠墿鍝�
      * @Author 鍗㈠簡闃�
      * @Date 2023/10/31
      */
     public void delByFormInventoryId(Long id) {
 
     }
+
+
 }

--
Gitblit v1.9.1