From e19d9742d5d14823bc414b1d1d47778b3daee227 Mon Sep 17 00:00:00 2001
From: futian.liu <liufutianyoo@163.com>
Date: 星期二, 19 十二月 2023 09:24:56 +0800
Subject: [PATCH] 盘点时库存查询不分仓库类型

---
 consum-base/src/main/java/com/consum/base/service/impl/LWhFormOutputCoreService.java |   77 +++++++++++++-------------------------
 1 files changed, 27 insertions(+), 50 deletions(-)

diff --git a/consum-base/src/main/java/com/consum/base/service/impl/LWhFormOutputCoreService.java b/consum-base/src/main/java/com/consum/base/service/impl/LWhFormOutputCoreService.java
index c9cc506..7f53a70 100644
--- a/consum-base/src/main/java/com/consum/base/service/impl/LWhFormOutputCoreService.java
+++ b/consum-base/src/main/java/com/consum/base/service/impl/LWhFormOutputCoreService.java
@@ -94,27 +94,24 @@
             return null;
         }
         // 鏌ヨ璇ヨ皟鎷ㄥ崟鏄惁宸茬粡鐢熸垚浜嗗嚭搴撳崟
-        Long outWarehouseFormIdT = lWhFormOutputService.queyrIdByTransferId(whFormTransferId);
-        if (outWarehouseFormIdT != null) {
-            return outWarehouseFormIdT;
+        Long outWarehouseFormId = lWhFormOutputService.queyrIdByTransferId(whFormTransferId);
+        if (outWarehouseFormId != null) {
+            return outWarehouseFormId;
         }
+        // 鍑哄簱鍗旾D
+        outWarehouseFormId = NumberGenerator.getLongSequenceNumberNano();
 
         // 鐢宠璋冩嫧鐨勭墿鍝�
         List<LWhProcureModel> goodsModelNumList = lWhProcureModelService.getModelByForm(businessEnum, whFormTransferId);
         if (CollectionUtils.isEmpty(goodsModelNumList)) {
             log.error("娌℃湁瑕佸叆搴撶殑鐗╁搧");
             throw new RuntimeException("娌℃湁瑕佸叆搴撶殑鐗╁搧");
-            // return null;
         }
         Long outWarehouseId = lWhFormTransfer.getOutWarehouseId();
         String outWarehouseName = lWhFormTransfer.getOutWarehouseName();
 
-        // 鍑哄簱鍗旾D
-        outWarehouseFormIdT = NumberGenerator.getLongSequenceNumberNano();
-        Long outWarehouseFormId = outWarehouseFormIdT;
-
         // 璋冩嫧鍗曠墿鍝� 宸茬粡鎸夊瀷鍙峰垎濂戒簡
-        goodsModelNumList.forEach(itemModelInfo -> {
+        for (LWhProcureModel itemModelInfo : goodsModelNumList) {
             // 澶嶇敤瀵硅薄
             itemModelInfo.setId(IdUtil.generateId());
             itemModelInfo.setFromProcureGoodsId(null);
@@ -122,12 +119,11 @@
             itemModelInfo.setBusinessId(outWarehouseFormId);
             itemModelInfo.setPrice(null);
             itemModelInfo.setSupplier(null);
-        });
+        }
         lWhProcureModelService.insertBatch(goodsModelNumList);
 
         // //鍒涘缓鍑哄簱鍗�
         LWhFormOutput whFormOutput = new LWhFormOutput();
-
         whFormOutput.setId(outWarehouseFormId);
         // 姝ゆ椂骞舵病鏈夊嚭搴�
         whFormOutput.setWarehouseFlowId(null);
@@ -148,7 +144,7 @@
         whFormOutput.setOperatorName(currentUser.getNick_name());
 
         whFormOutput.setDealTime(dealTime);
-        whFormOutput.setStates(1);
+        whFormOutput.setStates(OutPutStatesType.OUT_PENDING.getValue());
         int insert = lWhFormOutputService.insert(whFormOutput);
         if (insert == 0) {
             TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
@@ -196,42 +192,30 @@
 
         // 娴佹按璁板綍鎬昏〃ID
         long lWarehouseFlowId = NumberGenerator.getLongSequenceNumberNano();
-        // 娴佹按璁板綍鎬昏〃涓� 涓氬姟ID 銆傝皟鎷ㄥ崟鏃� 淇濆瓨璋冩嫧鍗昳d 鍑哄簱鍗曟椂 淇濆瓨鍑哄簱鍗昳d
         long lWarehouseFlowBusinessId = outWarehouseFormId;
+        Integer queryModelStatus = 1;
+        Integer buyType = null;
+        Integer modGoodsTransferStatus = null;
 
-        // 鐗╁搧鐘舵�侊紙0=鍦ㄩ�旇皟鎷紱1=鍏ュ簱鏈垎鍙戯紱2=宸蹭笅鍙戯紱3=鎶ュ簾锛�
-        Integer queryModelStatusT = 1;
-        // 閲囪喘鏂瑰紡锛�1锛氶泦閲囷紱2=鑷噰锛�
-        Integer buyTypeT = null;
-        Integer modGoodsTransferingStatusT = null;
-        short businessTypeValue = businessType.getValue();
-        if (InAndOutPutType.Transfer_Output.getValue() == businessTypeValue) {
+        Integer businessTypeValue = businessType.getValue();
+        if (businessTypeValue == InAndOutPutType.Transfer_Output.getValue()) {
             // 璋冩嫧鍑哄簱
-            queryModelStatusT = 1;
-            buyTypeT = 1;
+            queryModelStatus = 0;
+            buyType = 1;
             lWarehouseFlowBusinessId = lWhFormOutput.getTransBusinessId();
-            modGoodsTransferingStatusT = 0;
-        } else if (InAndOutPutType.Dept_Lending_Out.getValue() == businessTypeValue) {
+            modGoodsTransferStatus = 0;
+        } else if (businessTypeValue == InAndOutPutType.Dept_Lending_Out.getValue()) {
             // 閮ㄩ棬浠撳簱 鍒嗗彂鍑哄簱
-            // queryModelStatusT = 2;
             lWarehouseFlowBusinessId = lWhFormOutput.getTransBusinessId();
-        } else if (InAndOutPutType.Fragmentary_Output.getValue() == businessTypeValue) {
-            // 闆舵槦鍑哄簱
-            queryModelStatusT = 1;
-            buyTypeT = null;
-            modGoodsTransferingStatusT = 4;
-        } else if (InAndOutPutType.Inventory_Output.getValue() == businessTypeValue) {
-            // 鐩樼偣鍑哄簱
-            queryModelStatusT = 1;
-            buyTypeT = null;
-            modGoodsTransferingStatusT = 4;
+        } else if (businessTypeValue == InAndOutPutType.Fragmentary_Output.getValue()
+            || businessTypeValue == InAndOutPutType.Inventory_Output.getValue()) {
+            // 闆舵槦鍑哄簱 鎴� 鐩樼偣鍑哄簱
+            queryModelStatus = 1;
+            modGoodsTransferStatus = 4;
         }
-        Integer queryModelStatus = queryModelStatusT;
-        Integer buyType = buyTypeT;
-        Integer modGoodsTransferingStatus = modGoodsTransferingStatusT;
 
         ArrayList<Long> allChangModelList = new ArrayList<>();
-        goodsModelNumList.forEach(itemModelInfo -> {
+        for (LWhProcureModel itemModelInfo : goodsModelNumList) {
             // 闇�瑕佽皟鎷ㄧ殑鐗╁搧鐨勬煇涓瀷鍙�
             Long baseGoodsModelsId = itemModelInfo.getBaseGoodsModelsId();
 
@@ -244,17 +228,10 @@
 
             // 鏌ヨ鍨嬪彿淇℃伅
             Map<String, Object> tempGoodsInfo = baseGoodsTemplateService.queryGoodsInfoByModelId(baseGoodsModelsId);
-            // 浠峰�肩被鍨�
-            String classificationObj = (String)tempGoodsInfo.get("classification");
-            Short classificationT = 3;
-            if (classificationObj != null) {
-                classificationT = (short)((classificationObj).charAt(0) - 64);
-            }
-            short classification = classificationT;
+
             Long tempGoodsId = (Long)tempGoodsInfo.get("goodsid");
             String goodsName = (String)tempGoodsInfo.get("goodsname");
             String modelName = (String)tempGoodsInfo.get("modelname");
-            String goodsUnit = (String)tempGoodsInfo.get("unit");
 
             // 鎻掑叆 鍚勮鏍肩墿鍝佺殑杩涘嚭搴撹褰� L_WH_GOODS_RECORD
             long whGoodsRecordId = NumberGenerator.getLongSequenceNumberNano();
@@ -292,7 +269,7 @@
                 outGoodsId = lWhGoodsService.queryOutGoodsId(outWarehouseType, outWarehouseId, baseGoodsModelsId,
                     queryModelStatus, buyType, counts);
                 lWhGoodsService.modGoodsTransfering(outGoodsId, inWarehouseType, inWarehouseId, inWarehouseName,
-                    modGoodsTransferingStatus);
+                    modGoodsTransferStatus);
                 // 鎵归噺鎻掑叆 杩涘嚭搴撴祦姘存槑缁哰L_WH_GOODS_RECORD_DETAILS]
                 lWhGoodsRecordDetailsService.sameGoodsInsertMore(outGoodsId, whGoodsRecordId, (short)0);
             }
@@ -302,13 +279,13 @@
             lWhGoodsRecordServiceImpl.insert(whGoodsRecord);
             lWhProcureModel.setTotalAmount(totalAmount);
             lWhProcureModelService.update(lWhProcureModel);
-        });
+        }
         LWarehouseFlow warehouseFlow = new LWarehouseFlow();
         warehouseFlow.setId(lWarehouseFlowId);
         warehouseFlow.setWarehouseId(outWarehouseId);
         warehouseFlow.setWarehouseName(warehouseName);
         warehouseFlow.setThisType(2);
-        warehouseFlow.setBusinessType(businessType.getValue() + 0);
+        warehouseFlow.setBusinessType(businessType.getValue());
 
         warehouseFlow.setBusinessFormId(whFormTransferId == null ? lWarehouseFlowBusinessId : whFormTransferId);
         warehouseFlow.setOperatorId(userId);

--
Gitblit v1.9.1