From 8f4a61cd54143a85720b0c76cdd4e127ef0c6420 Mon Sep 17 00:00:00 2001 From: cjs <2216046164@qq.com> Date: 星期三, 25 六月 2025 17:17:18 +0800 Subject: [PATCH] 123 --- HH.WCS.Mobox3.NongFuLinZhi/process/DeviceProcess.cs | 8 ++-- HH.WCS.Mobox3.NongFuLinZhi/Program.cs | 1 HH.WCS.Mobox3.NongFuLinZhi/wms/LocationHelper.cs | 10 ---- HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs | 30 +++++++++++++-- HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs | 39 +++++++++++-------- HH.WCS.Mobox3.NongFuLinZhi/core/WMSCore.cs | 14 ------- 6 files changed, 54 insertions(+), 48 deletions(-) diff --git a/HH.WCS.Mobox3.NongFuLinZhi/Program.cs b/HH.WCS.Mobox3.NongFuLinZhi/Program.cs index db333eb..3c4f2aa 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/Program.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/Program.cs @@ -100,6 +100,7 @@ tasks.Add(GetTask(Monitor.BottleBlankTransportation)); //鎺ラ┏浣嶅叆搴� tasks.Add(GetTask(Monitor.PPFDFullIn)); //鐡跺澂缈绘枟鏈洪潪鎬ヤ骇婊℃鍖鸿ˉ婊℃墭 tasks.Add(GetTask(Monitor.PGFDFullIn)); //鐡剁洊缈绘枟鏈洪潪鎬ヤ骇婊℃鍖鸿ˉ婊℃墭 + tasks.Add(GetTask(Monitor.PPFDFullInEmpty)); //鐡跺澂娉ㄥ鏈洪潪鎬ヤ骇绌烘鍖鸿ˉ绌烘墭 Task.WaitAll(tasks.ToArray()); diff --git a/HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs b/HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs index a08a08a..89efb2a 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/core/Monitor.cs @@ -105,7 +105,7 @@ #endregion #region 鐡跺澂婊℃墭鍏ュ簱 - areaInfo = Settings.areaInfos.Where(a => a.areaName == "鐡惰儦鍏ュ簱鎺ラ┏" && a.enable == 1).FirstOrDefault(); + areaInfo = Settings.areaInfos.Where(a => a.areaName == "鐡跺澂鍏ュ簱鎺ラ┏" && a.enable == 1).FirstOrDefault(); if (areaInfo != null) { var locInfo = db.Queryable<Location>().Where(a => a.S_AREA_CODE == areaInfo.areaCode && a.N_CURRENT_NUM == a.N_CAPACITY && a.S_LOCK_STATE == "鏃�).First(); @@ -119,13 +119,13 @@ } else { - LogHelper.Info($"銆愮摱鑳氭弧鎵樿浆杩愩�褰撳墠璐т綅鏈粦瀹氭墭鐩樼爜锛岃揣浣嶇紪鐮侊細{locInfo.S_CODE}"); + LogHelper.Info($"銆愮摱鍧弧鎵樿浆杩愩�褰撳墠璐т綅鏈粦瀹氭墭鐩樼爜锛岃揣浣嶇紪鐮侊細{locInfo.S_CODE}"); } } } else { - LogHelper.Info("銆愮摱鍧弧鎵樿浆杩愩�鐡惰儦鍏ュ簱鎺ラ┏ 鏈厤缃�); + LogHelper.Info("銆愮摱鍧弧鎵樿浆杩愩�鐡跺澂鍏ュ簱鎺ラ┏ 鏈厤缃�); } #endregion @@ -143,7 +143,8 @@ { bcpWorkList.ForEach(a => { - string areaName = a.S_PLineNo.Split('-')[1].Substring(0, 1) + "鍙风摱鑳氱炕鏂楁満闈炲嵆浜ф弧妗�; + 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) { @@ -300,5 +301,26 @@ } } } + + /// <summary> + /// 鐡跺澂闈炲嵆浜у嵆鐢ㄥ簱鎵樺簱鍖鸿ˉ绌烘墭 + /// </summary> + internal static void PPFDFullInEmpty() + { + var db = new SqlHelper<object>().GetInstance(); + var workInfo = db.Queryable<LinZhiBCPWorkOrder>().Where(a => a.S_PLineNo == "鍐滃か鏋楄姖-鐡跺澂鏈� && a.S_UsingNow == "N" && a.S_WorkState == "鎵ц涓�).First(); + if(workInfo != null) + { + var areaInfo = Settings.areaInfos.Where(a => a.areaName == "鐡跺澂闈炲嵆浜х┖妗� && a.enable == 1).FirstOrDefault(); + if(areaInfo != null) + { + + } + else + { + LogHelper.Info("鐡跺澂闈炲嵆浜х┖妗�鏈厤缃�); + } + } + } } } diff --git a/HH.WCS.Mobox3.NongFuLinZhi/core/WMSCore.cs b/HH.WCS.Mobox3.NongFuLinZhi/core/WMSCore.cs index a788b46..35ed15e 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/core/WMSCore.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/core/WMSCore.cs @@ -65,21 +65,7 @@ var endinfo = db.Queryable<Location>().Where(it => it.S_CODE == end.S_CODE).First(); int startLayer = startinfo.N_CURRENT_NUM; int endlayer = endinfo.N_CURRENT_NUM + 1; - if(a.S_OP_DEF_NAME == "鐡跺澂闈炴�浜цˉ婊℃" || a.S_OP_DEF_NAME == "鐡剁洊闈炴�浜цˉ婊℃" || a.S_OP_DEF_NAME == "鐡跺澂闈炴�浜цˉ绌烘" || a.S_OP_DEF_NAME == "鐡剁洊闈炴�浜цˉ绌烘") - { - startLayer = 1; - endlayer = Settings.dXSites.Where(it => it.loc == a.S_END_LOC).First().site; - } - if(a.S_OP_DEF_NAME == "娉ㄥ鍗充骇婊℃墭涓嬬嚎锛堢摱鍧級") - { - endlayer = Settings.dXSites.Where(it => it.loc == a.S_END_LOC).First().site; - } - if (a.S_OP_DEF_NAME == "鎺ラ┏浣嶅叆搴� || a.S_OP_DEF_NAME == "鐡剁洊绌烘墭鍏ュ簱") - { - startLayer = 1; - endlayer = 1; - } var wcsTask = new WCSTask { S_OP_CODE = a.S_CODE, diff --git a/HH.WCS.Mobox3.NongFuLinZhi/process/DeviceProcess.cs b/HH.WCS.Mobox3.NongFuLinZhi/process/DeviceProcess.cs index 18f2d22..2936566 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/process/DeviceProcess.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/process/DeviceProcess.cs @@ -520,7 +520,7 @@ { LogHelper.Info("鍗充骇鍗崇敤宸ュ崟"); //鍗充骇鍗崇敤鍦ㄨ捣鐐逛负绾胯竟 - var bcpInfo = Settings.areaInfos.Where(a => a.areaName == "鐡惰儦鍗充骇婊℃" && a.enable == 1).FirstOrDefault(); + var bcpInfo = Settings.areaInfos.Where(a => a.areaName == "鐡跺澂鍗充骇婊℃" && a.enable == 1).FirstOrDefault(); if (bcpInfo != null) { startArea = bcpInfo.areaCode; @@ -532,7 +532,7 @@ { LogHelper.Info("闈炲嵆浜у嵆鐢ㄥ伐鍗�); //闈炲嵆浜у嵆鐢ㄨ捣鐐逛负搴撳尯 - string areaName = plc.deviceName.Split('-')[1].Substring(0, 1) + "鍙风摱鑳氱炕鏂楁満闈炲嵆浜ф弧妗�; + string areaName = plc.deviceName.Split('-')[1].Substring(0, 1) + "鍙风摱鍧炕鏂楁満闈炲嵆浜ф弧妗�; var bcpInfo = Settings.areaInfos.Where(a => a.areaName == areaName && a.enable == 1).FirstOrDefault(); if (bcpInfo != null) { @@ -574,12 +574,12 @@ //鍒濆鐘舵�锛屾棤鎵樼洏锛岀洿鎺ヤ笂婊℃墭(闈炲嵆浜у嵆鐢ㄩ渶瑕佹牎楠�濂楄瀹屾垚锛屽嵆浜у嵆鐢ㄧ洿鎺ヤ娇鐢� if (workInfo.S_UsingNow == "Y") { - LogHelper.Info($"鐡惰儦鍗充骇婊℃ 鏌ユ壘"); + LogHelper.Info($"鐡跺澂鍗充骇婊℃ 鏌ユ壘"); startLoca = getFDSXArea(db, workInfo, startArea); } else { - LogHelper.Info($"鐡惰儦缈绘枟鏈洪潪鍗充骇婊℃ 鏌ユ壘"); + LogHelper.Info($"鐡跺澂缈绘枟鏈洪潪鍗充骇婊℃ 鏌ユ壘"); startLoca = getFDSXArea(db, workInfo, startArea); } diff --git a/HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs b/HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs index e604cac..787df20 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/process/TaskProcess.cs @@ -684,7 +684,7 @@ if (mst.S_TYPE.Contains("婊℃墭涓嬬嚎")) { LogHelper.Info($"绌烘墭浠诲姟鐢熸垚澶勭悊锛屼换鍔$被鍨嬶細{mst.S_TYPE}"); - string areaName = mst.S_TYPE.Contains("搴撳瓨") ? "鐡惰儦闈炲嵆浜х┖妗� : "鐡惰儦鍗充骇绌烘"; + string areaName = mst.S_TYPE.Contains("搴撳瓨") ? "鐡跺澂闈炲嵆浜х┖妗� : "鐡跺澂鍗充骇绌烘"; var areaInfo = Settings.areaInfos.Where(a => a.areaName == areaName && a.enable == 1).First(); if(areaInfo != null) { @@ -729,14 +729,14 @@ { if (bcpW.S_UsingNow == "Y") { - LogHelper.Info($"鐡惰儦鍗充骇婊℃ 鏌ユ壘"); - startArea = Settings.areaInfos.Where(a => a.areaName == "鐡惰儦鍗充骇婊℃" && a.enable == 1).FirstOrDefault().areaCode; + LogHelper.Info($"鐡跺澂鍗充骇婊℃ 鏌ユ壘"); + startArea = Settings.areaInfos.Where(a => a.areaName == "鐡跺澂鍗充骇婊℃" && a.enable == 1).FirstOrDefault().areaCode; startLoca = DeviceProcess.getFDSXArea(db, bcpW, startArea); } else { - LogHelper.Info($"鐡惰儦缈绘枟鏈洪潪鍗充骇婊℃ 鏌ユ壘"); - string areaName = bcpW.S_PLineNo.Split('-')[1].Substring(0, 1) + "鍙风摱鑳氱炕鏂楁満闈炲嵆浜ф弧妗�; + LogHelper.Info($"鐡跺澂缈绘枟鏈洪潪鍗充骇婊℃ 鏌ユ壘"); + string areaName = bcpW.S_PLineNo.Split('-')[1].Substring(0, 1) + "鍙风摱鍧炕鏂楁満闈炲嵆浜ф弧妗�; startArea = Settings.areaInfos.Where(a => a.areaName == areaName && a.enable == 1).FirstOrDefault().areaCode; startLoca = DeviceProcess.getFDSXArea(db, bcpW, startArea); } @@ -1111,6 +1111,11 @@ { Extend2 = db.Queryable<LocationExt>().Where(a => a.S_LOC_CODE == mst.S_START_LOC && a.N_LAYER == mst.N_END_LAYER).First().S_AGV_SITE; } + if(mst.S_TYPE == "鐡跺澂闈炴�浜цˉ婊℃" || mst.S_TYPE == "鐡剁洊闈炴�浜цˉ婊℃" || mst.S_TYPE == "鐡跺澂闈炴�浜цˉ绌烘" || mst.S_TYPE == "鐡剁洊闈炴�浜цˉ绌烘" || mst.S_TYPE == "娉ㄥ鍗充骇婊℃墭涓嬬嚎锛堢摱鍧級") + { + Extend2 = Settings.dXSites.Where(it => it.loc == mst.S_END_LOC).First().site.ToString(); + } + Extend3 = "0"; // 鑾峰彇 浠诲姟鍙傛暟4 DATA 鏁版嵁 string startLayerValue = Convert.ToString(startLayer, 16).ToUpper(); @@ -1285,7 +1290,7 @@ if (action) { //鐡剁洊搴撳尯锛屼袱灞傚瘑闆嗗瀷搴撳尯 绌烘弧鍦ㄥ悓涓�釜搴撳尯锛岄渶瑕佸尯鍒嗕笉鍚屾帓 - var areaInfo = Settings.areaInfos.Where(a => a.areaName.Contains(areaName) && a.enable == 1).OrderBy(a => a.pri).ToList(); + var areaInfo = Settings.areaInfos.Where(a => a.areaName.Contains(areaName) && a.enable == 1).OrderByDescending(a => a.pri).ToList(); if (areaInfo.Count > 0) { foreach(var it in areaInfo) @@ -1423,7 +1428,7 @@ } else { - var areaInfo = Settings.areaInfos.Where(a => a.areaName.Contains(areaName) && a.enable == 1).OrderBy(a => a.pri).ToList(); + var areaInfo = Settings.areaInfos.Where(a => a.areaName.Contains(areaName) && a.enable == 1).OrderByDescending(a => a.pri).ToList(); if(areaInfo.Count > 0) { foreach(var it in areaInfo) @@ -1487,7 +1492,7 @@ if(usingNow == "Y") { //鍗充骇鍗崇敤 - var areaInfo = Settings.areaInfos.Where(a => a.areaName == "鐡惰儦鍗充骇绌烘" && a.enable == 1).FirstOrDefault(); + var areaInfo = Settings.areaInfos.Where(a => a.areaName == "鐡跺澂鍗充骇绌烘" && a.enable == 1).FirstOrDefault(); if (areaInfo != null) { var locInfo = db.Queryable<Location>().Where(a => a.S_AREA_CODE == areaInfo.areaCode && a.N_CURRENT_NUM > 0 && a.S_LOCK_STATE == "鏃�).Includes(a => a.LocCntrRel).First(); @@ -1498,13 +1503,13 @@ } else { - LogHelper.Info("鐡惰儦鍗充骇绌烘鏈厤缃�); + LogHelper.Info("鐡跺澂鍗充骇绌烘鏈厤缃�); } } else { //闈炲嵆浜у嵆鐢�- var areaInfo = Settings.areaInfos.Where(a => a.areaName == "鐡惰儦闈炲嵆浜х┖妗� && a.enable == 1).FirstOrDefault(); + var areaInfo = Settings.areaInfos.Where(a => a.areaName == "鐡跺澂闈炲嵆浜х┖妗� && a.enable == 1).FirstOrDefault(); if (areaInfo != null) { var locList = db.Queryable<Location>().Where(a => a.S_AREA_CODE == areaInfo.areaCode && a.N_CURRENT_NUM > 0).OrderBy(a => a.N_ROW).OrderByDescending(a => a.N_COL).Take(1).PartitionBy(a => a.N_ROW).Includes(a => a.LocCntrRel).ToList(); @@ -1524,7 +1529,7 @@ } else { - LogHelper.Info("鐡惰儦闈炲嵆浜х┖妗嗘湭閰嶇疆"); + LogHelper.Info("鐡跺澂闈炲嵆浜х┖妗嗘湭閰嶇疆"); } } @@ -1546,7 +1551,7 @@ if (taskName.Contains("鍗充骇")) { //娉ㄥ鏈烘�浜у嵆鐢ㄤ笅绾匡紝棣栧厛涓嬬嚎鍒板嵆浜у嵆鐢ㄦ弧妗嗙嚎杈癸紝婊$湺绾胯竟婊′簡锛屼笅鍒板嵆浜у嵆鐢ㄦ弧妗嗙紦瀛樺尯锛屾弧妗嗙紦瀛樺尯婊′簡锛屼笅鍒板叆搴撴帴椹冲爢鍙犱綅 - var areaInfo = Settings.areaInfos.Where(a => a.areaName == "鐡惰儦鍗充骇婊℃" && a.enable == 1).FirstOrDefault(); + var areaInfo = Settings.areaInfos.Where(a => a.areaName == "鐡跺澂鍗充骇婊℃" && a.enable == 1).FirstOrDefault(); if(areaInfo != null) { var locInfo = db.Queryable<Location>().Where(a => a.S_AREA_CODE == areaInfo.areaCode && a.N_CURRENT_NUM < a.N_CAPACITY && a.S_LOCK_STATE == "鏃�).OrderBy(a => a.N_ROW).First(); @@ -1557,11 +1562,11 @@ } else { - LogHelper.Info($"鐡跺澂娉ㄥ婊℃墭涓嬬嚎锛氱摱鑳氬嵆浜ф弧妗�鏈厤缃�); + LogHelper.Info($"鐡跺澂娉ㄥ婊℃墭涓嬬嚎锛氱摱鍧嵆浜ф弧妗�鏈厤缃�); } if (result == null) { - result = TaskProcess.BCPInOrOut(db, true, "鐡惰儦鍗充骇婊℃缂撳瓨", itemCode); + result = TaskProcess.BCPInOrOut(db, true, "鐡跺澂鍗充骇婊℃缂撳瓨", itemCode); } if(result == null) { @@ -1578,7 +1583,7 @@ private static Location getJBLoc(SqlSugarClient db, Location result) { //娉ㄥ鏈洪潪鍗充骇鍗崇敤涓嬬嚎锛屼笅鍒板叆搴撴帴椹冲爢鍙犱綅 - var areaInfo = Settings.areaInfos.Where(a => a.areaName == "鐡惰儦鍏ュ簱鎺ラ┏" && a.enable == 1).FirstOrDefault(); + var areaInfo = Settings.areaInfos.Where(a => a.areaName == "鐡跺澂鍏ュ簱鎺ラ┏" && a.enable == 1).FirstOrDefault(); if (areaInfo != null) { var locInfo = db.Queryable<Location>().Where(a => a.S_AREA_CODE == areaInfo.areaCode && a.N_CURRENT_NUM < a.N_CAPACITY && a.S_LOCK_STATE == "鏃�).OrderBy(a => a.N_COL).First(); @@ -1593,7 +1598,7 @@ } else { - LogHelper.Info($"鐡跺澂娉ㄥ婊℃墭涓嬬嚎锛氱摱鑳氬叆搴撴帴椹�鏈厤缃�); + LogHelper.Info($"鐡跺澂娉ㄥ婊℃墭涓嬬嚎锛氱摱鍧叆搴撴帴椹�鏈厤缃�); } return result; @@ -1610,7 +1615,7 @@ { Location result = null; - string endAreaName = taskName.Contains("鐡剁洊") ? "鐡剁洊闈炲嵆浜х┖妗� : taskName.Contains("搴撳瓨") ? "鐡惰儦闈炲嵆浜х┖妗� : "鐡惰儦鍗充骇绌烘"; + string endAreaName = taskName.Contains("鐡剁洊") ? "鐡剁洊闈炲嵆浜х┖妗� : taskName.Contains("搴撳瓨") ? "鐡跺澂闈炲嵆浜х┖妗� : "鐡跺澂鍗充骇绌烘"; var areaInfo = Settings.areaInfos.Where(a => a.areaName == endAreaName && a.enable == 1).FirstOrDefault(); if (areaInfo != null) { diff --git a/HH.WCS.Mobox3.NongFuLinZhi/wms/LocationHelper.cs b/HH.WCS.Mobox3.NongFuLinZhi/wms/LocationHelper.cs index c41c4e2..2817042 100644 --- a/HH.WCS.Mobox3.NongFuLinZhi/wms/LocationHelper.cs +++ b/HH.WCS.Mobox3.NongFuLinZhi/wms/LocationHelper.cs @@ -339,11 +339,6 @@ location.N_CURRENT_NUM = 0; } - if (type == "鎺ラ┏浣嶅叆搴� || type == "鐡剁洊绌烘墭鍏ュ簱" || type == "鐡跺澂闈炴�浜цˉ婊℃" || type == "鐡剁洊闈炴�浜цˉ婊℃") - { - location.N_CURRENT_NUM = 0; - } - location.S_LOCK_STATE = "鏃�; location.N_LOCK_STATE = 0; db.Updateable(location).UpdateColumns(it => new { it.N_CURRENT_NUM, it.S_LOCK_STATE, it.N_LOCK_STATE }).ExecuteCommand(); @@ -382,10 +377,7 @@ } }); location.N_CURRENT_NUM = lcrList.Count + count; - if(type == "鎺ラ┏浣嶅叆搴� || type == "鐡剁洊绌烘墭鍏ュ簱" || type == "鐡跺澂闈炴�浜цˉ婊℃" || type == "鐡剁洊闈炴�浜цˉ婊℃") - { - location.N_CURRENT_NUM = location.N_CAPACITY; - } + if(location.N_CURRENT_NUM >location.N_CAPACITY) location.N_CURRENT_NUM = location.N_CAPACITY; location.N_LOCK_STATE = 0; location.S_LOCK_STATE = "鏃�; -- Gitblit v1.9.1