From 59f836bf0eb00b7707c74fe8edb8fa7662c871ab Mon Sep 17 00:00:00 2001 From: lss <Lss@HanInfo> Date: 星期二, 27 五月 2025 17:22:42 +0800 Subject: [PATCH] 合肥佳通优化 --- HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/process/DeviceProcess.cs | 74 +++++++++++++++++++++++++----------- 1 files changed, 51 insertions(+), 23 deletions(-) diff --git a/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/process/DeviceProcess.cs b/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/process/DeviceProcess.cs index ae84134..e5c5e4f 100644 --- a/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/process/DeviceProcess.cs +++ b/HH.WCS.Mobox3/HH.WCS.Mobox3.JiaTong/process/DeviceProcess.cs @@ -47,17 +47,17 @@ /// <summary> /// 鍙犵洏鏈虹┖鎵樿繑鍥� /// </summary> - internal static void Traystacker(string loc, int qty) + internal static void Traystacker(string loc, int qty, int type) { try { //涓婁紶鏁版嵁 - Traystacker result1 = new Traystacker(){ station = loc, taskSource = 1, Qty = qty }; - + Traystacker result1 = new Traystacker() { station = loc, taskSource = 1, Qty = qty, dpType = type }; + HttpHelper httpHelper = new HttpHelper(); Result result = new Result(); string date = JsonConvert.SerializeObject(result1); - var url = Settings.tableUrls.Find(a => a.id == 2); + var url = Settings.tableUrls.Find(a => a.id == 3); if (url != null) { LogHelper.Info($"鍙犵洏鏈虹┖鎵樿繑鍥烇細鍦板潃:{url.url}锛屽唴瀹癸細{date}"); @@ -75,13 +75,13 @@ } else { - LogHelper.Info($"鍙犵洏鏈虹┖鎵�鏍规嵁id=2锛屾湭鎵惧埌閰嶇疆閾炬帴锛岃妫�煡閰嶇疆鏂囦欢"); + LogHelper.Info($"鍙犵洏鏈虹┖鎵�鏍规嵁id=3锛屾湭鎵惧埌閰嶇疆閾炬帴锛岃妫�煡閰嶇疆鏂囦欢"); } } catch (Exception ex) { - LogHelper.Info($"鍙犵洏鏈虹┖鎵樿繑鍥� Error=>{ex.ToString()}"); + LogHelper.Error($"鍙犵洏鏈虹┖鎵樿繑鍥� Error=>{ex.ToString()}", ex); } } @@ -148,7 +148,7 @@ var mst = WCSHelper.GetTaskByStartloc(item.S_CODE); if (mst == null) { - Traystacker(item.S_CODE, item.N_CURRENT_NUM); + Traystacker(item.S_CODE, item.N_CURRENT_NUM, 1); } } } @@ -160,26 +160,54 @@ /// </summary> internal static void DpjTraffic() { - string startBti = "CMB17-DP-001"; - - var value = S7Helper.ReadDpj(2014, S7.Net.VarType.Int); - - if (value >= 7) + var devices = Settings.deviceInfos.Where(a => a.deviceType == 1).ToList(); + //var db = new SqlHelper<object>().GetInstance(); + //var list = db.Queryable<Location>().Where(a => a.N_CURRENT_NUM > 0 && a.N_LOCK_STATE == 0).OrderByDescending(a => a.N_COL).Take(1).PartitionBy(a => a.N_ROW).ToList(); + try { - //var cntr = db.Queryable<LocCntrRel>().Where(a => a.S_LOC_CODE.Trim() == item.S_CODE).ToList(); - //if (cntr.Count > 0) - //{ - // var cntrcodes = cntr.Select(a => a.S_CNTR_CODE).ToArray(); - // cntrcode = string.Join(",", cntrcodes); - //} - - //鍒涘缓杩囨湭瀹屾垚鐨勪换鍔′笉鍙戣捣璇锋眰 - var mst = WCSHelper.GetTaskByStartloc(startBti); - if (mst == null) + if (devices.Count > 0) { - Traystacker(startBti, value); + foreach (var device in devices) + { + var IsDp = S7Helper.ReadDpj(device.address,2001, S7.Net.VarType.Byte); + var value = S7Helper.ReadDpj(device.address,2014, S7.Net.VarType.Int); + + if (value >= 1 && IsDp == 1) + { + //var cntr = db.Queryable<LocCntrRel>().Where(a => a.S_LOC_CODE.Trim() == item.S_CODE).ToList(); + //if (cntr.Count > 0) + //{ + // var cntrcodes = cntr.Select(a => a.S_CNTR_CODE).ToArray(); + // cntrcode = string.Join(",", cntrcodes); + //} + + //鍒涘缓杩囨湭瀹屾垚鐨勪换鍔′笉鍙戣捣璇锋眰 + var mst = WCSHelper.GetTaskByStartloc(device.TN_Location); + if (mst == null) + { + Traystacker(device.TN_Location, value, 2); + } + else + { + LogHelper.Info($"鏈夋墽琛屼腑鐨勫彔鐩樺洖搴撲换鍔mst.S_CODE}锛屼笉瑙﹀彂鍙犵洏浠诲姟"); + } + + } + else + { + LogHelper.Info($"鍙犵洏鏈烘暟閲忥細{value},鍙犵洏淇″彿锛歿IsDp}锛屼笉瑙﹀彂鍙犵洏浠诲姟"); + } + Thread.Sleep(8000); + } } + } + catch (Exception ex) + { + LogHelper.Error($"ReadDpj DpjTraffic:{ex}", ex); + + } + } /// <summary> /// 鍘熸潗鏂欏簱鎺ュ彛璁块棶 -- Gitblit v1.9.1