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/Monitor.cs | 22 ++++++++++++++-------- HH.WCS.Mobox3.NongFuLinZhi/wms/WMSHelper.cs | 1 + HH.WCS.Mobox3.NongFuLinZhi/core/WMSCore.cs | 35 +++++++++++++++++++++++++++++++++++ 3 files changed, 50 insertions(+), 8 deletions(-) diff --git a/HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs b/HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs index 0310ee8..23010cb 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs @@ -106,6 +106,7 @@ #endregion } + public static bool B_FLAGE = false; /// <summary> /// 鐡跺澂缈绘枟鏈洪潪鍗充骇婊℃鍖鸿ˉ婊℃墭 /// </summary> @@ -121,19 +122,24 @@ string areaName = a.S_PLineNo.Split('-')[1].Substring(0, 1) + "鍙风摱鍧炕鏂楁満闈炲嵆浜ф弧妗�; LogHelper.Info($"PPFDFullIn area:{areaName}"); var areaInfo = Settings.areaInfos.Where(b => b.areaName == areaName && b.enable == 1).FirstOrDefault(); - if(areaInfo != null) + if (areaInfo != null) { var locInfo = db.Queryable<Location>().Where(b => b.S_AREA_CODE == areaInfo.areaCode && b.N_CURRENT_NUM == 0 && b.S_LOCK_STATE == "鏃�).First(); - if(locInfo != null) + if (locInfo != null) { - //鐢熸垚浠诲姟 - Location location = TaskProcess.BCPInOrOutTwo(db, "鐡跺澂搴撳尯", a.S_ItemCode); - if(location != null) + if (!B_FLAGE) { - string cntrCode = getCntrCode(db,location); - //鍒涘缓浣滀笟 - WMSHelper.CreateOpTask(location.S_CODE, locInfo.S_CODE, "鍏ュ簱", "鐡跺澂闈炲嵆浜цˉ婊℃", cntrCode, "鐡跺澂"); + B_FLAGE = true; + //鐢熸垚浠诲姟 + Location location = TaskProcess.BCPInOrOutTwo(db, "鐡跺澂搴撳尯", a.S_ItemCode); + if (location != null) + { + string cntrCode = getCntrCode(db, location); + //鍒涘缓浣滀笟 + WMSHelper.CreateOpTask(location.S_CODE, locInfo.S_CODE, "鍏ュ簱", "鐡跺澂闈炲嵆浜цˉ婊℃", cntrCode, "鐡跺澂"); + } } + B_FLAGE = false; } } else 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) { diff --git a/HH.WCS.Mobox3.NongFuLinZhi/wms/WMSHelper.cs b/HH.WCS.Mobox3.NongFuLinZhi/wms/WMSHelper.cs index 05ce7d5..1d50612 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/wms/WMSHelper.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/wms/WMSHelper.cs @@ -719,6 +719,7 @@ { string areaName = a.S_NOTE.Split('-')[1]; result = TaskProcess.BCPInOrOut(db, true, areaName, itemCode); + //鏌ヨ缁堢偣璐т綅锛屾槸鐢卞惁鐩稿悓鎺掔殑浣滀笟 } else { -- Gitblit v1.9.1