From 090bf407236ef5be8ea7ba803a56fdcc2dcc1ce3 Mon Sep 17 00:00:00 2001
From: luqingyang <lqy5492@163.com>
Date: 星期三, 01 十一月 2023 17:37:04 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 consum-base/src/main/java/com/consum/base/service/LWarehouseFlowCoreService.java |   35 +++++++++++++++++++++++++++++++----
 1 files changed, 31 insertions(+), 4 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/service/LWarehouseFlowCoreService.java b/consum-base/src/main/java/com/consum/base/service/LWarehouseFlowCoreService.java
index 720aa82..a45460e 100644
--- a/consum-base/src/main/java/com/consum/base/service/LWarehouseFlowCoreService.java
+++ b/consum-base/src/main/java/com/consum/base/service/LWarehouseFlowCoreService.java
@@ -31,14 +31,20 @@
     private SimpleJdbcCall simpleJdbcCall;
     private LWarehouseFlowService lWarehouseFlowService;
     private LWhGoodsService lWhGoodsService;
+    private LWhGoodsRecordService lWhGoodsRecordService;
+    private LWhFormTransferService lWhFormTransferService;
+    private LWhFormOutputCoreService lWhFormOutputCoreService;
     private BaseGoodsTemplateServiceImpl baseGoodsTemplateService;
 
     @Autowired
-    public LWarehouseFlowCoreService(JdbcTemplate jdbcTemplate, LWarehouseFlowService lWarehouseFlowService, LWhGoodsService lWhGoodsService, BaseGoodsTemplateServiceImpl baseGoodsTemplateService) {
+    public LWarehouseFlowCoreService(JdbcTemplate jdbcTemplate, LWarehouseFlowService lWarehouseFlowService, LWhGoodsService lWhGoodsService, LWhFormTransferService lWhFormTransferService, LWhFormOutputCoreService lWhFormOutputCoreService, BaseGoodsTemplateServiceImpl baseGoodsTemplateService, LWhGoodsRecordService lWhGoodsRecordService) {
         this.jdbcTemplate = jdbcTemplate;
         this.lWarehouseFlowService = lWarehouseFlowService;
         this.baseGoodsTemplateService = baseGoodsTemplateService;
+        this.lWhFormTransferService = lWhFormTransferService;
+        this.lWhFormOutputCoreService = lWhFormOutputCoreService;
         this.lWhGoodsService = lWhGoodsService;
+        this.lWhGoodsRecordService = lWhGoodsRecordService;
         this.simpleJdbcCall = new SimpleJdbcCall(jdbcTemplate).withProcedureName("InsertL_WH_GOODS");
     }
 
@@ -49,7 +55,7 @@
      * @param warehouseFlow
      * @return
      */
-    public int insertWareFlow(List<LWhProcureModel> goodsModelNumList, LWhFormProcure lWhFormProcure, LWarehouseFlow warehouseFlow) {
+    public int buyInsertWareFlow(List<LWhProcureModel> goodsModelNumList, LWhFormProcure lWhFormProcure, LWarehouseFlow warehouseFlow) {
         if (CollectionUtils.isEmpty(goodsModelNumList)) {
             log.error("娌℃湁瑕佸叆搴撶殑鐗╁搧");
             return 0;
@@ -59,6 +65,7 @@
         }
         // 鏌ヨ浠撳簱淇℃伅
         Long warehouseFlowId = warehouseFlow.getId();
+        Integer warehouseType = warehouseFlow.getWarehouseType();
         Long warehouseId = warehouseFlow.getWarehouseId();
         Long dealTime = warehouseFlow.getDealTime();
         BaseWarehouse baseWarehouses = lWarehouseFlowService.get(new BaseWarehouse(warehouseId));
@@ -112,10 +119,10 @@
             whGoodsRecord.setThisType(1);
 
             //閫氳繃LockManage鑾峰緱閿�
-            Object warehouseModelLockObj = LockManage.acquireLock(warehouseId, baseGoodsModelsId);
+            Object warehouseModelLockObj = LockManage.acquireLock(warehouseType, warehouseId, baseGoodsModelsId);
             synchronized (warehouseModelLockObj) {
                 // 鑾峰緱閿佸悗鏌ヨ璇ュ瀷鍙风殑鏈熷垵鏁伴噺
-                int goodsModelNum = lWhGoodsService.queryGoodsModelNum(warehouseId, baseGoodsModelsId, (short) 1);
+                int goodsModelNum = lWhGoodsService.queryGoodsModelNum(warehouseType,warehouseId, baseGoodsModelsId, (short) 1, null);
                 whGoodsRecord.setInitialCount(goodsModelNum);
                 whGoodsRecord.setThisCount(modelCount);
                 whGoodsRecord.setEndCount(goodsModelNum + modelCount);
@@ -134,6 +141,7 @@
                             supplier, buyType, goodsUnit, price, procureTime, 1, dealTime, counts);
                 });
             }
+            lWhGoodsRecordService.insert(whGoodsRecord);
         });
 
         return 1;
@@ -186,4 +194,23 @@
         Map<String, Object> out = simpleJdbcCall.execute(in);
         System.out.println("Procedure result: " + out);
     }
+
+    /**
+     * 璋冩嫧鍑哄簱
+     *
+     * @param outWarehouseId 鍑哄簱鍗�
+     * @return
+     */
+    public int outInsertWareFlow(Long outWarehouseId) {
+        // 鍑哄簱鏃跺�欙紝鎸� 鍏堝叆搴撶殑鍏堝嚭搴擄紝鍚屾椂鍏ュ簱鐨勶紝鎸変环鏍奸珮鐨勫厛鍑哄簱
+//        List<Long> outGoodsId = lWhGoodsService.queryOutGoodsId(outWarehouseId, baseGoodsModelsId, queryModelStatus, buyType, goodsModelNum);
+        // 淇敼鐗╁搧鐨勭姸鎬佷负  鐘舵�侊紙0=鍦ㄩ�旇皟鎷紱1=鍏ュ簱鏈垎鍙戯紱2=宸蹭笅鍙戯紱3=鎶ュ簾锛�
+        // 淇敼 鎵�灞炰粨搴撲粨搴撶紪鍙稺AREHOUSE_ID銆佷粨搴撳悕绉癢AREHOUSE_NAME锛屾鏃朵笉瑕佸悓姝ヨ繘 鐗╁搧浠撳簱淇濈璁板綍銆怢_GOODS_WH_RECORD銆戯紒鍏ュ簱鏃跺啀鍚屾
+
+
+        // 鏂板璁板綍 杩涘嚭搴撴祦姘存�昏〃[L_WAREHOUSE_FLOW]   鍚勮鏍肩墿鍝佺殑杩涘嚭搴撱�怢_WH_GOODS_RECORD銆戣繘鍑哄簱娴佹按鏄庣粏[L_WH_GOODS_RECORD_DETAILS]
+
+
+        return 0;
+    }
 }

--
Gitblit v1.9.1