From cd40ada4efe0d0a4036714cf597ce170b8cf5a54 Mon Sep 17 00:00:00 2001
From: pengmn <pmn@HanInfo>
Date: 星期五, 30 五月 2025 17:29:17 +0800
Subject: [PATCH] 测试

---
 HH.WCS.Mobox3.HangYang/core/WCSCore.cs |   56 +++++++++++++++++++++++++++++++++-----------------------
 1 files changed, 33 insertions(+), 23 deletions(-)

diff --git a/HH.WCS.Mobox3.HangYang/core/WCSCore.cs b/HH.WCS.Mobox3.HangYang/core/WCSCore.cs
index 6abfd39..2878824 100644
--- a/HH.WCS.Mobox3.HangYang/core/WCSCore.cs
+++ b/HH.WCS.Mobox3.HangYang/core/WCSCore.cs
@@ -85,8 +85,9 @@
         private static void HandleAreaChange(WCSTask task)
         {
             var areas = new List<string> { "TPLKQ", "LXLKQ" };
+            var area = new List<string> { "閰嶇洏鍑哄簱", "閰嶇洏缂撳瓨" };
 
-            if (areas.Contains(task.S_START_AREA))
+            if (areas.Contains(task.S_START_AREA) && !area.Contains(task.S_TYPE))
             {
                 WMSHelper.DeleteChange(task);
             }
@@ -119,6 +120,7 @@
 
 
         #region 鏉哀浠诲姟鏈嶅姟
+        private static readonly object _jobLock = new object();
         /// <summary>
         /// 寰幆浣滀笟鐢熸垚浠诲姟
         /// </summary>
@@ -126,28 +128,32 @@
         {
             try
             {
-                //鏌ヨ浠诲姟
-                //鑾峰彇鎵�湁绛夊緟鐨勪綔涓�-                var list = WMSHelper.GetWmsTaskListByState("绛夊緟");
-                if (list.Count > 0)
+                lock (_jobLock)
                 {
-                    list.ForEach(async task =>
+                    //鏌ヨ浠诲姟
+                    //鑾峰彇鎵�湁绛夊緟鐨勪綔涓�+                    var list = WMSHelper.GetWmsTaskListByState("绛夊緟");
+                    if (list.Count > 0)
                     {
-                        //鐢熸垚鍏ュ簱浠诲姟
-                        await TaskProcess.CreateInTask(task);
-                    });
-                }
-                //鏌ヨ浠诲姟
-                //鑾峰彇鎵�湁鎵ц鐨勪綔涓�-                var exelist = WMSHelper.GetWmsTaskListByState("鎵ц");
-                if (exelist.Count > 0)
-                {
-                    exelist.ForEach(task =>
+                        list.ForEach(async task =>
+                        {
+                            //鐢熸垚鍏ュ簱浠诲姟
+                            await TaskProcess.CreateInTask(task);
+                        });
+                    }
+                    //鏌ヨ浠诲姟
+                    //鑾峰彇鎵�湁鎵ц鐨勪綔涓�+                    var exelist = WMSHelper.GetWmsTaskListByState("鎵ц");
+                    if (exelist.Count > 0)
                     {
-                        //鐢熸垚浠庡垎鎷f殏瀛樺尯鍒伴泦璐ф墭鐩樹綅鐨勪换鍔′换鍔�-                        TaskProcess.exeCreateInTask(task);
-                    });
+                        exelist.ForEach(task =>
+                        {
+                            //鐢熸垚浠庡垎鎷f殏瀛樺尯鍒伴泦璐ф墭鐩樹綅鐨勪换鍔′换鍔�+                            TaskProcess.exeCreateInTask(task);
+                        });
+                    }
                 }
+                    
             }
             catch (Exception ex)
             {
@@ -201,12 +207,16 @@
         {
             try
             {
-                //鏌ヨ宸查厤鐩樼殑閰嶇洏鍗�-                var list = WMSHelper.GetPickingListByState(1);
-                if (list.Count > 0)
+                lock (_jobLock)
                 {
-                    TaskProcess.GenerateFromPicking(list);
+                    //鏌ヨ宸查厤鐩樼殑閰嶇洏鍗�+                    var list = WMSHelper.GetPickingListByState(1);
+                    if (list.Count > 0)
+                    {
+                        TaskProcess.GenerateFromPicking(list);
+                    }
                 }
+                    
             }
             catch (Exception ex)
             {

--
Gitblit v1.9.1