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