From 87d873ad509b4c927ac19aebaa3622fe9374626b Mon Sep 17 00:00:00 2001
From: huanghongfeng <huanghongfeng@hnkhzn.com>
Date: 星期二, 26 十一月 2024 11:13:02 +0800
Subject: [PATCH] 1

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Inbound.cs |   66 +++++++++++++++++++++++++--------
 1 files changed, 50 insertions(+), 16 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Inbound.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Inbound.cs"
index c861712..2a931fa 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Inbound.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Inbound.cs"
@@ -224,7 +224,7 @@
                 else
                 {
                     
-                    if ((generate.SourceAddress == "R01-003-041-011-01" || generate.SourceAddress == "R01-002-043-001-01" || generate.SourceAddress == "R02-003-043-011-01"))
+                    if ((generate.SourceAddress == "R01-003-041-011-01" || generate.SourceAddress == "R01-002-043-001-01" || generate.SourceAddress == "R02-003-027-011-01"))
                     {
                         Dt_StockInfo dt_StockInfo2 = _stockService.StockInfoService.Repository.QueryFirst(x => x.PalletCode == generate.PalletCode);
                        if(dt_StockInfo2 == null)
@@ -249,7 +249,7 @@
                         Dt_LocationInfo newSourceAddress;
                         newSourceAddress = _basicService.LocationInfoService.GetLocationplatform(generate.SourceAddress);
                         int Locationtype = 9;   //榛樿涓�9
-                        if(dt_StockInfo.MaterialType== (int)InventoryMaterialType.鎴愬搧)
+                        if(dt_StockInfo.MaterialType== (int)InventoryMaterialType.鎴愬搧  || (generate.SourceAddress == "R01-003-041-001-01" && dt_StockInfo.MaterialType == (int)InventoryMaterialType.鍘熸潗鏂�))
                         {
                             Locationtype = 11;
                         }else if(dt_StockInfo.MaterialType == (int)InventoryMaterialType.鍘熸潗鏂�)
@@ -398,8 +398,8 @@
                     string[] targetCodes = generate.PalletCode.Split("*");
                     if(targetCodes.Length == 4)
                     {
-                        Dt_InboundOrder dt_Inbound = _inboundService.InbounOrderService.Repository.QueryFirst(x => x.UpperOrderNo == targetCodes[0]);
-                        if (dt_Inbound.OrderType == (int)OrderTypeEmun.鍘熸潗鏂�)   //0涓哄師鏉愭枡缂栫爜
+                        Dt_InboundOrder dt_Inbound = _inboundService.InbounOrderService.Repository.QueryFirst(x => x.OrderName == targetCodes[0]);
+                        if (dt_Inbound.OrderType == (int)InventoryMaterialType.鍘熸潗鏂�)   //0涓哄師鏉愭枡缂栫爜
                         {
                             Dt_StockInfo dt_Stock = new()
                             {
@@ -414,19 +414,19 @@
                             _unitOfWorkManage.BeginTran();
                             _stockService.StockInfoService.Repository.AddData(dt_Stock);
                             Dt_StockInfo dt_StockInfo2 = _stockService.StockInfoService.Repository.QueryFirst(x => x.PalletCode == generate.PalletCode);
-                            string part2 = targetCodes[1].Substring(2, 8);  //瑙f瀽鐗╂枡鎵规鎵捐鎯�
+                            string part2 = targetCodes[1].Substring(0, 2);  //瑙f瀽鐗╂枡鎵规鎵捐鎯�
                             Dt_InboundOrder dt_Int = _inboundService.InbounOrderService.Repository.QueryFirst(x => x.UpperOrderNo == part2);
 
                             Dt_StockInfoDetail dt_StockInfoDetail = new()
                             {
                                 StockId = dt_StockInfo2.Id,
-                                MaterielCode = dt_Inbound.UpperOrderNo,    //鐗╂枡鍙�
-                                MaterielName = dt_Inbound.OrderName,    //鐗╂枡鍚嶇О
+                                MaterielCode = dt_Inbound.OrderName,    //鐗╂枡鍙�
+                                MaterielName = dt_Inbound.UpperOrderNo,    //鐗╂枡鍚嶇О
                                 OrderNo = dt_Inbound.OrderNo,        //鐗╂枡璇︽儏
-                                BatchNo = targetCodes[1],         //鐗╂枡鎵规
+                                BatchNo = targetCodes[1].ToString(),         //鐗╂枡鎵规
+                                SerialNumber = targetCodes[2].ToString(),    //鍖呭彿
                                 BatchNoName = dt_Int.OrderNo,
-                                SerialNumber = targetCodes[2],    //鍖呭彿
-                                StockQuantity = decimal.Parse(targetCodes[3]),    //閲嶉噺
+                                StockQuantity = decimal.Parse(targetCodes[3].ToString()),    //閲嶉噺
                                 OutboundQuantity = 1,    //搴忓垪鍙�
                                 Status = (int)StockStatusEmun.缁勭洏鏆傚瓨,
                                 Creater = "WMS",
@@ -445,7 +445,7 @@
                             }
                             
                         }
-                        else if (dt_Inbound.OrderType == (int)OrderTypeEmun.鎴愬搧鏂�)
+                        else if (dt_Inbound.OrderType == (int)InventoryMaterialType.鎴愬搧)
                         {
                             Dt_StockInfo dt_Stock = new()
                             {
@@ -463,10 +463,10 @@
                             Dt_StockInfoDetail dt_StockInfoDetail = new()
                             {
                                 StockId = dt_StockInfo2.Id,
-                                MaterielCode = dt_Inbound.UpperOrderNo,    //鐗╂枡鍙�
-                                MaterielName = dt_Inbound.OrderName,    //鐗╂枡鍚嶇О
+                                MaterielCode = dt_Inbound.OrderName,    //鐗╂枡鍙�
+                                MaterielName = dt_Inbound.UpperOrderNo,    //鐗╂枡鍚嶇О
                                 OrderNo = dt_Inbound.OrderNo,        //鐗╂枡璇︽儏
-                                BatchNo = targetCodes[1],         //鐗╂枡鎵规
+                                BatchNo = targetCodes[1].ToString(),         //鐗╂枡鎵规
                                 BatchNoName = "",
                                 SerialNumber = targetCodes[2],    //鍖呭彿
                                 StockQuantity = decimal.Parse(targetCodes[3]),    //閲嶉噺
@@ -565,6 +565,8 @@
                 {
                     Dt_InboundOrder dt_Inbound = _inboundService.InbounOrderService.Repository.QueryFirst(x => x.UpperOrderNo == result);
                     Dt_StockInfo dt_StockInfo = _stockService.StockInfoService.Repository.QueryFirst(x => x.PalletCode == generate.PalletCode);
+                    List<Dt_LocationInfo> locationinfoData = _basicService.LocationInfoService.Repository.QueryData(x => x.RoadwayNo == "2" && x.LocationStatus == LocationStatusEnum.Free.ObjToInt()
+                            && x.LocationType == (int)LocationTypeEnum.MaterialsCube);
                     if (dt_Inbound != null)
                     {
                         if (dt_StockInfo == null)
@@ -603,13 +605,30 @@
                             _stockService.StockInfoDetailService.AddData(dt_StockInfoDetail);
 
                             _unitOfWorkManage.CommitTran();
-                            return content = WebResponseContent.Instance.OK(data: 3);
+
+                            
+                            if (locationinfoData.Count > 40)
+                            {
+                                return content = WebResponseContent.Instance.OK(data: 3);
+                            }
+                            else
+                            {
+                                return content = WebResponseContent.Instance.OK(data: 1);
+                            }
+                            
                         }
                         else
                         {
                             if (dt_StockInfo.StockStatus == (int)StockStatusEmun.缁勭洏鏆傚瓨)
                             {
-                                return content = WebResponseContent.Instance.OK(data: 3);
+                                if (locationinfoData.Count > 40)
+                                {
+                                    return content = WebResponseContent.Instance.OK(data: 3);
+                                }
+                                else
+                                {
+                                    return content = WebResponseContent.Instance.OK(data: 1);
+                                }
                             }
                             else
                             {
@@ -631,5 +650,20 @@
                 throw;
             }
         }
+    
+        public WebResponseContent PalletQueryinventory()
+        {
+            WebResponseContent content = new WebResponseContent();
+            List<Dt_LocationInfo> locationinfoData = _basicService.LocationInfoService.Repository.QueryData(x => x.RoadwayNo=="2" && x.LocationStatus == LocationStatusEnum.Free.ObjToInt() 
+            && x.LocationType == (int)LocationTypeEnum.EmptyCube);
+            if (locationinfoData.Count < 20)
+            {
+                return content = WebResponseContent.Instance.OK(data: 1);
+            }
+            else
+            {
+                return content = WebResponseContent.Instance.OK(data: 3);
+            }
+        }
     }
 }

--
Gitblit v1.9.3