From 7a70c16d9fb28646a0f22e9f699746df6c651e8c Mon Sep 17 00:00:00 2001
From: Admin <Admin@ADMIN>
Date: 星期一, 15 十二月 2025 20:14:04 +0800
Subject: [PATCH] 最新

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_TaskInfoService/PartialTaskService_Inbound.cs |  119 +++++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 103 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 ed18293..2ee3f6e 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"
@@ -1,18 +1,19 @@
-锘縰sing System;
+锘縰sing MailKit.Search;
+using Microsoft.Extensions.Logging;
+using OfficeOpenXml.FormulaParsing.Excel.Functions.Logical;
+using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Reflection;
+using System.Reflection.Metadata;
 using System.Text;
 using System.Threading.Tasks;
-using WIDESEA_Core.Enums;
-using WIDESEA_Core;
-using WIDESEA_Model.Models;
-using WIDESEA_Core.Helper;
-using Microsoft.Extensions.Logging;
-using MailKit.Search;
-using System.Reflection.Metadata;
-using static WIDESEA_ITaskInfoService.ITaskService;
 using WIDESEA_Common.Log;
+using WIDESEA_Core;
+using WIDESEA_Core.Enums;
+using WIDESEA_Core.Helper;
+using WIDESEA_Model.Models;
+using static WIDESEA_ITaskInfoService.ITaskService;
 
 namespace WIDESEA_TaskInfoService
 {
@@ -291,17 +292,17 @@
                                 Dt_InboundOrder dt_Inbound = _inboundService.InbounOrderService.Repository.QueryFirst(x => x.OrderName == targetCodes[0]);
                                 if (dt_Inbound.Startingcolumn != 0 || dt_Inbound.Terminationcolumn != 0)
                                 {
-                                    newLocation = _basicService.LocationInfoService.GetLocation2(newSourceAddress.RoadwayNo, Locationtype, dt_Inbound.Startingcolumn, dt_Inbound.Terminationcolumn);
+                                    newLocation = _basicService.LocationInfoService.GetLocation(newSourceAddress.RoadwayNo, Locationtype, dt_Inbound.Startingcolumn, dt_Inbound.Terminationcolumn);
                                 }
                                 else
                                 {
-                                    newLocation = _basicService.LocationInfoService.GetLocation(newSourceAddress.RoadwayNo, Locationtype);
+                                    newLocation = _basicService.LocationInfoService.GetLocation(newSourceAddress.RoadwayNo, Locationtype,0,0);
                                 }
 
                             }
                             else
                             {
-                                newLocation = _basicService.LocationInfoService.GetLocation(newSourceAddress.RoadwayNo, Locationtype);
+                                newLocation = _basicService.LocationInfoService.GetLocation(newSourceAddress.RoadwayNo, Locationtype, 0, 0);
                                
                             }
 
@@ -485,6 +486,7 @@
             WebResponseContent content = new WebResponseContent();
             try
             {
+                
 
                 string[] targetCodes = generate.PalletCode.Split("*");
                 if (targetCodes.Length == 5)
@@ -497,7 +499,18 @@
                         return content = WebResponseContent.Instance.Error($"绗簲浣嶇墿鏂欑姸鎬佺紪鐮佽В鏋愰敊璇細{generate.PalletCode}");
                     }
 
-                    if (dt_Inbound != null)
+                    int xzrktype = 1;
+                    if(dt_Inbound.OrderType == (int)InventoryMaterialType.鎴愬搧)
+                    {
+                        xzrktype = 2;
+                    }
+
+                    WebResponseContent webResponsePD = QueryinveCount(dt_Inbound.OrderType, dt_Inbound.Startingcolumn, dt_Inbound.Terminationcolumn);
+                    if (!webResponsePD.Status) { return webResponsePD; }
+
+
+
+                    if (dt_Inbound != null && webResponsePD.Status)
                     {
                         string PalletCodetarget = string.Join("*", targetCodes.Take(3));
                         Dt_StockInfo dt_StockInfo = _stockService.StockInfoService.Repository.QueryFirst(x => x.PalletCode.Contains(PalletCodetarget));
@@ -807,15 +820,89 @@
         {
             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 && x.EnableStatus == (int)EnableStatusEnum.Normal);
-            if (locationinfoData.Count < 20)
+            && x.LocationType == (int)LocationTypeEnum.EmptyCube && x.EnableStatus == (int)EnableStatusEnum.Normal && x.Layer > 10);
+            if (locationinfoData.Count <= 15)
             {
-                return content = WebResponseContent.Instance.OK(data: 1);
+                List<Dt_LocationInfo> locationinfoDataSC1 = _basicService.LocationInfoService.Repository.QueryData(x => x.RoadwayNo == "1" && x.LocationStatus == LocationStatusEnum.Free.ObjToInt()
+            && x.LocationType == (int)LocationTypeEnum.EmptyCube && x.EnableStatus == (int)EnableStatusEnum.Normal && x.Layer > 9);
+                if (locationinfoDataSC1.Count >= 15)
+                {
+                    return content = WebResponseContent.Instance.OK(data: 1);
+                }
+                else
+                {
+                    return content = WebResponseContent.Instance.Error("1宸烽亾绌烘墭鍏ュ簱澶辫触锛氾細鍏ュ簱澶辫触锛屽綋鍓嶄笉鍙叆搴擄紝娴呰揣浣嶅皬浜�15锛屼笉鍙啀杩涜鍏ュ簱");
+                }
+                
             }
             else
             {
                 return content = WebResponseContent.Instance.OK(data: 3);
             }
         }
+
+        public WebResponseContent QueryinveCount(int wltype,int InitialColumn, int EndColumn)
+        {
+            WebResponseContent content = new WebResponseContent();
+            if (wltype == (int)InventoryMaterialType.鍘熸潗鏂�)
+            {
+
+                List<Dt_LocationInfo> locationinfoData = _basicService.LocationInfoService.Repository.QueryData(x => x.RoadwayNo == "2" && x.LocationStatus == LocationStatusEnum.Free.ObjToInt()
+                && x.LocationType == (int)LocationTypeEnum.MaterialsCube && x.EnableStatus == (int)EnableStatusEnum.Normal && x.Layer <= 10 && x.Depth==1);
+                if (locationinfoData.Count <= 15)
+                {
+                    List<Dt_LocationInfo> locationinfoDataSC1 = _basicService.LocationInfoService.Repository.QueryData(x => x.RoadwayNo == "1" && x.LocationStatus == LocationStatusEnum.Free.ObjToInt()
+                && x.EnableStatus == (int)EnableStatusEnum.Normal && x.Layer <= 9 && x.Depth==1);
+                    if (locationinfoDataSC1.Count > 15)
+                    {
+                        return content.OK();
+                    }
+                    else
+                    {
+                        return content.Error($"1宸烽亾(鎴愬搧)锛氬叆搴撳け璐ワ紝娴呰揣浣嶅彧鍓╀笅锛歿locationinfoDataSC1.Count}锛屼笉鍙啀杩涜鍏ュ簱");
+                    }
+
+                }
+                else
+                {
+                    return content.OK();
+                }
+
+            }
+            else if(wltype == (int)InventoryMaterialType.鎴愬搧)
+            {
+                if(InitialColumn!=0 && EndColumn != 0)
+                {
+                    List<Dt_LocationInfo> locationinfoDataSC1 = _basicService.LocationInfoService.Repository.QueryData(x => x.RoadwayNo == "1" && x.LocationStatus == LocationStatusEnum.Free.ObjToInt()
+                && x.EnableStatus == (int)EnableStatusEnum.Normal && x.Layer <= 9 && x.Column>= InitialColumn && x.Column <= EndColumn && x.Depth==1);
+                    if (locationinfoDataSC1.Count > 10)
+                    {
+                        return content.OK();
+                    }
+                    else
+                    {
+                        return content.Error($"1宸烽亾锛堝洖鏂欏簱锛夛細鍏ュ簱澶辫触锛屾祬璐т綅鍙墿涓嬶細{locationinfoDataSC1.Count}锛屼笉鍙啀杩涜鍏ュ簱");
+                    }
+                }
+                else
+                {
+                    List<Dt_LocationInfo> locationinfoDataSC1 = _basicService.LocationInfoService.Repository.QueryData(x => x.RoadwayNo == "1" && x.LocationStatus == LocationStatusEnum.Free.ObjToInt()&& x.EnableStatus == (int)EnableStatusEnum.Normal && x.Layer <= 9 && x.Depth == 1);
+                    if (locationinfoDataSC1.Count > 15)
+                    {
+                        return content.OK();
+                    }
+                    else
+                    {
+                        return content.Error($"1宸烽亾(鎴愬搧)锛氬叆搴撳け璐ワ紝娴呰揣浣嶅彧鍓╀笅锛歿locationinfoDataSC1.Count}锛屼笉鍙啀杩涜鍏ュ簱");
+                    }
+                }
+            }
+            else
+            {
+                return content.OK();
+            }
+
+
+        }
     }
 }

--
Gitblit v1.9.3