From 64d2bad5e5d8440a40a80baad0ab41d7a65e8675 Mon Sep 17 00:00:00 2001
From: cjs <2216046164@qq.com>
Date: 星期二, 29 七月 2025 17:30:45 +0800
Subject: [PATCH] 111

---
 HH.WCS.Mobox3.NongFuLinZhi/core/WMSCore.cs |   35 +++++++++++++++++++++++++++++++++++
 1 files changed, 35 insertions(+), 0 deletions(-)

diff --git a/HH.WCS.Mobox3.NongFuLinZhi/core/WMSCore.cs b/HH.WCS.Mobox3.NongFuLinZhi/core/WMSCore.cs
index 35ed15e..7d9d484 100644
--- a/HH.WCS.Mobox3.NongFuLinZhi/core/WMSCore.cs
+++ b/HH.WCS.Mobox3.NongFuLinZhi/core/WMSCore.cs
@@ -51,6 +51,37 @@
                 {
                     try
                     {
+                        if(a.S_OP_DEF_NAME == "鎺ラ┏浣嶅叆搴�)
+                        {
+                            if (!Monitor.B_FLAGE)
+                            {
+                                Monitor.B_FLAGE = true;
+                                //鍒ゆ柇褰撳墠鏄惁鏈夌瓑寰呮垨鑰呴敊璇殑鎺ラ┏浣嶅叆搴撲换鍔★紝骞朵笖璧风偣璐т綅鍦ㄥ綋鍓嶈揣浣嶇殑澶栭潰
+                                var taskList = db.Queryable<WMSTask>().Where(b => b.S_OP_DEF_NAME == "鎺ラ┏浣嶅叆搴� && b.S_ID != a.S_ID && (b.N_B_STATE == 0 || b.N_B_STATE == 3)).ToList();
+                                if(taskList.Count > 0)
+                                {
+                                    bool task_flage = false;
+                                    foreach(var x in taskList)
+                                    {
+                                        var startLocInfo = db.Queryable<Location>().Where(y => y.S_CODE == x.S_START_LOC).First();
+                                        var startLocInfoTwo = db.Queryable<Location>().Where(y => y.S_CODE == a.S_START_LOC).First();
+                                        if(startLocInfo.N_ROW == startLocInfoTwo.N_ROW && startLocInfo.N_COL > startLocInfoTwo.N_COL)
+                                        {
+                                            task_flage = true;
+                                            break;
+                                        }
+                                    }
+                                    if (task_flage)
+                                    {
+                                        continue;
+                                    }
+                                }
+                            }
+                            else
+                            {
+                                continue;
+                            }
+                        }
                         if (a.N_TYPE == 1)
                         {
                             //鏌ヨ鎵樼洏鎵�湪浣嶇疆
@@ -153,6 +184,10 @@
                                 LogHelper.Info($"浣滀笟{a.S_CODE} 鑾峰彇缁堢偣澶辫触");
                             }
                         }
+                        if (a.S_OP_DEF_NAME == "鎺ラ┏浣嶅叆搴�)
+                        {
+                            Monitor.B_FLAGE = false;
+                        }
                     }
                     catch (Exception ex)
                     {

--
Gitblit v1.9.1