From dc5be5ac7d2a5aae1618fe3d1d8a689d10fdc9dc Mon Sep 17 00:00:00 2001
From: lss <Lss@HanInfo>
Date: 星期四, 15 五月 2025 17:09:38 +0800
Subject: [PATCH] 大洋原材料库业务开发

---
 HH.WCS.Mobox3/HH.WCS.Mobox3.DaYang/wms/LocationHelper.cs |   16 +++++++++++++---
 1 files changed, 13 insertions(+), 3 deletions(-)

diff --git a/HH.WCS.Mobox3/HH.WCS.Mobox3.DaYang/wms/LocationHelper.cs b/HH.WCS.Mobox3/HH.WCS.Mobox3.DaYang/wms/LocationHelper.cs
index 4e70816..08c8a63 100644
--- a/HH.WCS.Mobox3/HH.WCS.Mobox3.DaYang/wms/LocationHelper.cs
+++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.DaYang/wms/LocationHelper.cs
@@ -115,7 +115,7 @@
                 //濡傛灉娌℃湁鎵惧埌鐩稿悓鐗╂枡鐨勫渚ц揣浣嶏紝鎵句竴涓唴娴嬬┖璐т綅
                 if (location == null)
                 {
-                    location = GetEmptyLocByItemCode(areaCode, new int[] { 1, 4 });
+                    location = GetEmptyLocByItemCode(areaCode, new List<int> { 1, 4 });
                 }
                 return location;
             }
@@ -167,14 +167,24 @@
         /// <param name="areaCode">搴撳尯缂栫爜</param>
         /// <param name="row">璐т綅鎺�/param>
         /// <returns></returns>
-        internal static Location GetEmptyLocByItemCode(string areaCode, int[] row)
+        internal static Location GetEmptyLocByItemCode(string areaCode, List<int> row)
         {
             var db = new SqlHelper<object>().GetInstance();
             Location location = null;
             try
             {
+                //鍒ゆ柇褰撳墠鎺掑彲鐢ㄨ揣浣嶅皬浜� 濡傛灉灏忎簬2鍒欎笉鍏佽鍏�+                for (int i = row.Count(); i < 0; i--)
+                {
+                    var locationNum = db.Queryable<Location>().Where(a => a.N_CURRENT_NUM == 0 && a.N_LOCK_STATE == 0 && a.S_AREA_CODE == areaCode && a.N_ROW == row[i]).ToList().Count;
+                    if (locationNum <= 2)
+                    {
+                        row.RemoveAt(i);
+                    }
+                }
 
                 location = db.Queryable<Location>().Where(a => a.N_CURRENT_NUM == 0 && a.N_LOCK_STATE == 0 && a.S_AREA_CODE == areaCode && row.Contains(a.N_ROW)).First();
+
                 return location;
             }
             catch (Exception ex)
@@ -322,7 +332,7 @@
             return result;
 
         }
-
+      
         /// <summary>
         /// 鏍规嵁璐т綅闆嗗悎鑾峰彇鏈夊鍣ㄧ殑璐т綅
         /// </summary>

--
Gitblit v1.9.1