From facfd6e182b0a14e553ebeb31aca27a68945307c Mon Sep 17 00:00:00 2001
From: czw <selecti@yeah.net>
Date: 星期一, 23 六月 2025 13:03:43 +0800
Subject: [PATCH] 1

---
 HH.WCS.QingXiNongfu/core/Monitor.cs |   38 +++++++++++++++++++++-----------------
 1 files changed, 21 insertions(+), 17 deletions(-)

diff --git a/HH.WCS.QingXiNongfu/core/Monitor.cs b/HH.WCS.QingXiNongfu/core/Monitor.cs
index 430ca26..d7fd2b9 100644
--- a/HH.WCS.QingXiNongfu/core/Monitor.cs
+++ b/HH.WCS.QingXiNongfu/core/Monitor.cs
@@ -96,7 +96,7 @@
                         {
                             if (item.SQL_State != "瀹屾垚")
                             {
-                                ROW_LOCK(LocationHelper.GetLocList(x => x.S_AREA_CODE == item.start_area && x.N_ROW == srow).FirstOrDefault(), LocationHelper.GetLocList(x => x.S_AREA_CODE == item.end_area && x.N_ROW == erow).FirstOrDefault(), "", 0, string.IsNullOrEmpty(item.FROM_NO),item.SQL_WorkNo);
+                                ROW_LOCK(LocationHelper.GetLocList(x => x.S_AREA_CODE == item.start_area && x.N_ROW == srow).FirstOrDefault(), LocationHelper.GetLocList(x => x.S_AREA_CODE == item.end_area && x.N_ROW == erow).FirstOrDefault(), "", 0, string.IsNullOrEmpty(item.FROM_NO), item.SQL_WorkNo);
                                 WCSHelper.Do(db =>
                                 {
                                     LogHelper.Info("绉诲簱宸ュ崟鏁伴噺瀹屾垚" + item.SQL_WorkNo);
@@ -421,7 +421,7 @@
 
         static void ROW_LOCK(Location startBit, Location EndBit, string msg, int sign, bool up = true, string WorkNo = "")
         {
-            LogHelper.Info("dooooooooooooooooooooooooooooooooooooooooooooo" + msg + "---" + sign);
+            LogHelper.Info("绉诲簱瑙i攣 doo" + msg + "---" + sign + "--" + WorkNo);
             LogHelper.Info(JsonConvert.SerializeObject(startBit));
             LogHelper.Info(JsonConvert.SerializeObject(EndBit));
             bool j瑙i攣璧风偣搴撳尯鎺�= true;
@@ -430,9 +430,11 @@
                 //瑙i攣鏃讹紝鏈夊伐鍗曞彿銆� 鏌ユ煡闄や簡杩欎釜宸ュ崟鍙蜂互澶栫殑鍏朵粬 鎸囧畾鍑哄簱鎺掓墽琛�                 var orders = WCSHelper.GetWorkOrder2();
                 var thisOrder = orders.Find(x => x.SQL_WorkNo == WorkNo);
+                LogHelper.Info("绉诲簱瑙i攣 --褰撳墠宸ュ崟 sid:" + thisOrder?.S_ID);
                 if (thisOrder != null)
                 {
                     var other = orders.Find(x => x.SQL_WorkNo != WorkNo && x.start_area == thisOrder.start_area && x.start_row == thisOrder.start_row);
+                    LogHelper.Info($"绉诲簱瑙i攣 --鍏朵粬宸ュ崟 x.start_area == {thisOrder.start_area} start_row == {thisOrder.start_row} SID:" + other?.S_ID);
                     if (other != null)
                         j瑙i攣璧风偣搴撳尯鎺�= false;
                 }
@@ -4026,10 +4028,10 @@
                 var locS = LocationHelper.GetAreaNormalLocList(ODs.Key);
                 foreach (var od in ODs)
                 {
-                    LogHelper.Info($"from{od.S_START_AREA} mid:{od.S_ZZ_AREA} to{od.S_END_AREA} 寮� 銆嬨�銆�);
-                    if (string.IsNullOrEmpty(od.S_ZZ_AREA) || string.IsNullOrEmpty(od.S_END_AREA))
+                    LogHelper.Info($"YWL_ZX_Turn from{od.S_START_AREA} mid:{od.S_ZZ_AREA} to{od.S_END_AREA} 寮� 銆嬨�銆�);
+                    if (string.IsNullOrEmpty(od.S_ZZ_AREA) && string.IsNullOrEmpty(od.S_END_AREA))
                     {
-                        LogHelper.CError($"from{od.S_START_AREA} mid:{od.S_ZZ_AREA} to{od.S_END_AREA} 鏁版嵁缂哄け銆傛棤娉曞畬鎴愮Щ搴撱�");
+                        LogHelper.CError($"YWL_ZX_Turn from{od.S_START_AREA} to{od.S_END_AREA} 鏁版嵁缂哄け銆傛棤娉曞畬鎴愮Щ搴撱�");
                         continue;
                     }
                     var rows = locS.FindAll(x => x.N_ROW == od.N_START_ROW);
@@ -4046,13 +4048,23 @@
                             var lastful = rows.FindAll(x => x.N_CURRENT_NUM > 0).OrderBy(x => x.N_COL).LastOrDefault();
                             if (lastful != null)
                             {
-                                LogHelper.Info($"from{od.S_START_AREA} mid:{od.S_ZZ_AREA} to{od.S_END_AREA} 鎵惧埌绉诲簱璧风偣銆媨lastful.S_LOC_CODE}銆�);
+                                LogHelper.Info($"YWL_ZX_Turn from{od.S_START_AREA}to{od.S_END_AREA} 鎵惧埌绉诲簱璧风偣銆媨lastful.S_LOC_CODE}銆�);
                                 var crs = LocationHelper.GetLocCntrRel(lastful.S_LOC_CODE);
                                 var cntritems = ContainerHelper.GetCntrItemRel(crs.FirstOrDefault()?.S_CNTR_CODE);
                                 if (!cntritems.Any())
                                     continue;
-                                LogHelper.Info($"from{od.S_START_AREA} mid:{od.S_ZZ_AREA} to{od.S_END_AREA} 鎵惧埌绉诲簱璧风偣銆媨lastful.S_LOC_CODE}銆傛帴椹虫槸鍚﹁閿侊紵锛歿InworkLock}");
+                                LogHelper.Info($"YWL_ZX_Turn from{od.S_START_AREA}to{od.S_END_AREA} 鎵惧埌绉诲簱璧风偣銆媨lastful.S_LOC_CODE}銆傛帴椹虫槸鍚﹁閿侊紵锛歿InworkLock}");
                                 var cir1 = cntritems.First();
+
+                                if (!string.IsNullOrEmpty(od.S_ITEM_CODE))
+                                {
+                                    ///缁欑Щ搴撳崟 鍐欎笂杞繍鐨勭墿鏂欐暟鎹�
+                                    od.S_ITEM_CODE = cir1.S_ITEM_CODE;
+                                    od.S_ITEM_NAME = cir1.S_ITEM_NAME;
+                                    od.S_CJ_NAME = cir1.S_CJ_NAME;
+                                    WCSHelper.Do(db => db.Updateable(od).UpdateColumns(it => new { it.S_ITEM_NAME, it.S_ITEM_CODE, it.S_CJ_NAME }).ExecuteCommand());
+                                }
+
                                 if (od.S_ZZ_AREA == "YWLWJJB")
                                 {
                                     if (InworkLock)
@@ -4082,24 +4094,16 @@
                                         Endbit = zzrloclist.Find(x => x.N_COL > (_cl2?.N_COL ?? 0));
                                     if (Endbit != null)
                                     {
-                                        LogHelper.Info($"鍏ヤ腑杞尯{od.S_ZZ_AREA}浣跨敤{Endbit.S_LOC_CODE}");
+                                        LogHelper.Info($"鍏ヤ腑杞尯{nextarea}浣跨敤{Endbit.S_LOC_CODE}");
                                         break;
                                     }
                                 }
-                                LogHelper.Info($"from{od.S_START_AREA} mid:{od.S_ZZ_AREA} to{od.S_END_AREA} 鎵惧埌绉诲簱缁堢偣銆媨Endbit?.S_LOC_CODE}");
+                                LogHelper.Info($"YWL_ZX_Turn from{od.S_START_AREA} mid:{od.S_ZZ_AREA} to{od.S_END_AREA} 鎵惧埌绉诲簱缁堢偣銆媨Endbit?.S_LOC_CODE}");
                                 if (Endbit != null)
                                 {
                                     //鐢熸垚鎺ラ┏鍖轰换鍔★紝鏍囪涓虹粓鐐瑰簱鍖恒�
                                     var b = TaskProcess.CreateTransport(od.S_ID, lastful.S_LOC_CODE, Endbit.S_LOC_CODE, "鍘熺墿鏂欐惉杩�绾哥", crs.Select(x => x.S_CNTR_CODE).ToList(), 1, 1, crs.Count, 50, nextarea == od.S_END_AREA ? "" : od.S_END_AREA);
                                     if (od.S_ZZ_AREA == "YWLWJJB") InworkLock = false;
-                                    if (!string.IsNullOrEmpty(od.S_ITEM_CODE))
-                                    {
-                                        ///缁欑Щ搴撳崟 鍐欎笂杞繍鐨勭墿鏂欐暟鎹�
-                                        od.S_ITEM_CODE = cir1.S_ITEM_CODE;
-                                        od.S_ITEM_NAME = cir1.S_ITEM_NAME;
-                                        od.S_CJ_NAME = cir1.S_CJ_NAME;
-                                        WCSHelper.Do(db => db.Updateable(od).UpdateColumns(it => new { it.S_ITEM_NAME, it.S_ITEM_CODE, it.S_CJ_NAME }).ExecuteCommand());
-                                    }
                                     break;
                                 }
                                 else if (od.S_ZZ_AREA == "YWLWJJB") InworkLock = false;

--
Gitblit v1.9.1