From 76c7d995ac56b60880e998df5e9e3d82fea313f8 Mon Sep 17 00:00:00 2001
From: futian.liu <liufutianyoo@163.com>
Date: 星期四, 07 十二月 2023 11:58:15 +0800
Subject: [PATCH] 出库单金额处理

---
 consum-base/src/main/java/com/consum/base/service/LWhFormInventoryGoodsServiceImpl.java |   78 +++++++++++++++++---------------------
 1 files changed, 35 insertions(+), 43 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 5331d39..953aa85 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,13 +1,18 @@
 package com.consum.base.service;
 
+import java.util.ArrayList;
+import java.util.List;
+
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Propagation;
+import org.springframework.transaction.annotation.Transactional;
+
 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 java.util.ArrayList;
-import java.util.List;
+
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.stereotype.Service;
 
 /**
  * @Description 鐩樼偣鍗曠墿鍝�
@@ -16,6 +21,7 @@
  */
 @Slf4j
 @Service
+@Transactional(propagation = Propagation.REQUIRED)
 public class LWhFormInventoryGoodsServiceImpl extends BaseServiceImpl {
 
     /**
@@ -30,60 +36,46 @@
         return this.select(inventoryGoods);
     }
 
-    /**
-     * @return
-     * @Description 鏂板鐩樼偣鍗曠墿鍝佽褰�
-     * @Author 鍗㈠簡闃�
-     * @Date 2023/10/31
-     */
-//    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);
-//        }
-//        return this.insert(inventoryGoodsList);
-//    }
-    public int add(List<FormInventoryGoodsVO> inventoryGoodsList, Long warehouseId) {
+    public List<FormInventoryGoodsVO> 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(warehouseId);
+            lWhFormInventoryGoods.setWhFormInventoryId(inventoryId);
             lWhFormInventoryGoods.setBaseGoodsTemplateId(inventoryGoods.getBaseGoodsTemplateId());
             lWhFormInventoryGoods.setGoodsTemplateName(inventoryGoods.getGoodsTemplateName());
             lWhFormInventoryGoods.setUnit(inventoryGoods.getUnit());
             lWhFormInventoryGoods.setBaseGoodsModelsId(inventoryGoods.getId());
             lWhFormInventoryGoods.setBaseGoodsModelsName(inventoryGoods.getBaseGoodsModelsName());
-            Integer inventoryCount = inventoryGoods.getInventoryCount();
-            Integer realNum = inventoryGoods.getRealNum();
-            int errorCount = inventoryCount - realNum;
-            lWhFormInventoryGoods.setInventoryCounts(realNum);
-            lWhFormInventoryGoods.setErrorCounts(errorCount);
-            //鐩樼偣缁撴灉锛�1=姝e父锛�2=鐩樼泩锛�3=鐩樹簭锛�
-            lWhFormInventoryGoods.setInventoryResult((errorCount > 0) ? 2 : (errorCount < 0) ? 3 : 1);
+            lWhFormInventoryGoods.setInitCounts(inventoryGoods.getInventoryCount());
+            // 淇濆瓨鎴愬姛鍚庤繑鍥瀒d,鐢ㄦ潵杩涜璁板綍鐨勬洿鏂�
+            inventoryGoods.setId(lWhFormInventoryGoods.getId());
             goodsList.add(lWhFormInventoryGoods);
         }
-        return this.insert(goodsList);
+        this.insert(goodsList);
+        return inventoryGoodsList;
     }
 
-    /**
-     * @Description 鏍规嵁鐩樼偣鍗昳d鍒犻櫎鐩樼偣鍗曠墿鍝�
-     * @Author 鍗㈠簡闃�
-     * @Date 2023/10/31
-     */
-    public void delByFormInventoryId(Long id) {
+    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);
+                // TODO 鎵归噺鏇存柊
+                this.update(lWhFormInventoryGoods);
+                // goodsList.add(lWhFormInventoryGoods);
+            }
 
+        }
+        return 1;
     }
-
 
 }

--
Gitblit v1.9.1