From 41dd97a3255d581d4013529730cedfb3f8f8e8ea Mon Sep 17 00:00:00 2001
From: cy <1664593601@qq.com>
Date: 星期一, 27 十一月 2023 16:58:57 +0800
Subject: [PATCH] feat: 盘点

---
 consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java |   49 ++++++++++++++++++++++++++++++++-----------------
 1 files changed, 32 insertions(+), 17 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java
index fd99dd7..562900c 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java
@@ -16,19 +16,22 @@
 import com.consum.model.po.FinSysTenant;
 import com.consum.model.po.FinSysTenantUser;
 import com.consum.model.po.LWhFormInventory;
+import com.iplatform.model.po.S_user_core;
 import com.walker.db.page.GenericPager;
 import com.walker.infrastructure.utils.DateUtils;
 import com.walker.infrastructure.utils.StringUtils;
 import com.walker.jdbc.service.BaseServiceImpl;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.compress.utils.Lists;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Lazy;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 /**
  * @Description 鐩樼偣
@@ -53,6 +56,9 @@
     private LWhGoodsService lWhGoodsService;
     @Autowired
     private FinSysTenantServiceImpl finSysTenantService;
+    @Autowired
+    @Lazy
+    private LWhFormInventoryCoreService lWhFormInventoryCoreService;
 
 
     private static final String QUERY_LIST = "select * from l_wh_form_inventory where 1=1 ";
@@ -180,38 +186,47 @@
 
     }
 
+
     /**
      * 淇濆瓨鐩樼偣淇℃伅
      *
      * @author 鍗㈠簡闃�
      * @date 2023/10/31
      */
-    public int updateInventoryInfo(LWhFormInventoryParam dto, Integer state) {
+    public int updateInventoryInfo(LWhFormInventoryParam dto, Integer state, S_user_core currentUser, FinSysTenantUser sysInfo) {
         //1.鏍规嵁鐩樼偣鍗昳d鏌ヨ鐩樼偣鍗�
         LWhFormInventory lWhFormInventory = this.get(new LWhFormInventory(dto.getId()));
         if (lWhFormInventory == null) {
             log.error("鏍规嵁鐩樼偣鍗昳d鏌ヨ鐩樼偣鍗曞け璐�");
             return 0;
         }
-        //2.淇敼鐩樼偣鍗�
-        lWhFormInventory.setStates(state);
-        if (state == 2) {
-            //瀹屾垚鐩樼偣鏃惰缃畬鎴愮洏鐐规椂闂�
-            lWhFormInventory.setStopTime(DateUtils.getDateTimeNumber(System.currentTimeMillis()));
-        }
-        lWhFormInventory.setInventoryDate(DateUtils.getDateTimeNumber(System.currentTimeMillis()));
-        int flag1 = this.update(lWhFormInventory);
-        if (flag1 == 0) {
-            log.error("淇敼鐩樼偣鍗曞け璐�");
-            return 0;
-        }
-        //3.娣诲姞鐩樼偣鍗曠墿鍝�
+        //娣诲姞鐩樼偣鍗曠墿鍝�
         List<FormInventoryGoodsVO> inventoryGoodsList = dto.getInventoryGoodsList();
         if (CollectionUtils.isEmpty(inventoryGoodsList)) {
             log.error("鐩樼偣鍗曠墿鍝佷负绌�");
             return 0;
         }
         this.inventoryGoodsService.updateInventoryGoods(inventoryGoodsList);
+        //淇敼鐩樼偣鍗�
+        if (state == 2) {
+            //瀹屾垚鐩樼偣鏃惰缃畬鎴愮洏鐐规椂闂�
+            lWhFormInventory.setStopTime(DateUtils.getDateTimeNumber(System.currentTimeMillis()));
+
+            //瀹屾垚鐩樼偣鏃惰缃畬鎴愮洏鐐规椂闂�
+            String inOutFormByInventoryId = lWhFormInventoryCoreService.createInOutFormByInventoryId(dto.getId(), currentUser, sysInfo);
+            if (!StringUtils.isEmpty(inOutFormByInventoryId)) {
+                log.error(inOutFormByInventoryId);
+                return 0;
+            }
+        }
+        lWhFormInventory.setStates(state);
+        lWhFormInventory.setInventoryDate(DateUtils.getDateTimeNumber(System.currentTimeMillis()));
+        int flag1 = this.update(lWhFormInventory);
+        if (flag1 == 0) {
+            log.error("淇敼鐩樼偣鍗曞け璐�");
+            return 0;
+        }
+
         return 1;
     }
 

--
Gitblit v1.9.1