From f8d23dcf8d6501482db1a5180325194232afe96c Mon Sep 17 00:00:00 2001 From: kazelee <1847801760@qq.com> Date: 星期五, 18 七月 2025 17:30:09 +0800 Subject: [PATCH] 封装部分业务代码,继续优化日志打印流程 --- wms/LocationHelper.cs | 156 ++++++++++++++------------------------------------- 1 files changed, 43 insertions(+), 113 deletions(-) diff --git a/wms/LocationHelper.cs b/wms/LocationHelper.cs index db9d569..fc9bf9f 100644 --- a/wms/LocationHelper.cs +++ b/wms/LocationHelper.cs @@ -11,7 +11,7 @@ namespace HH.WCS.Mobox3.DSZSH.wms { /// <summary> - /// 璐т綅甯姪绫伙紙鍖呭惈璐т綅-瀹瑰櫒鍏崇郴鐨勫鐞嗭級 + /// 璐т綅甯姪绫�(鍖呭惈璐т綅-瀹瑰櫒鍏崇郴鐨勫鐞� /// </summary> public class LocationHelper { @@ -98,22 +98,6 @@ { site = Location.S_AGV_SITE; } - //if (Location.N_CURRENT_NUM == 1) - //{ - // site = Location.S_AGV_SITE2; - //} - //if (Location.N_CURRENT_NUM == 2) - //{ - // site = Location.S_AGV_SITE3; - //} - //if (Location.N_CURRENT_NUM == 3) - //{ - // site = Location.S_AGV_SITE4; - //} - //if (Location.N_CURRENT_NUM == 4) - //{ - // site = Location.S_AGV_SITE5; - //} } } } @@ -127,59 +111,7 @@ } /// <summary> - /// 鍏ュ簱閿佸畾缁堢偣锛屽嚭搴撻攣瀹氳捣鐐�- /// 浣犲垱寤轰换鍔¢攣瀹氳揣浣嶇殑鏃跺�锛屾妸閿佺殑鏉ユ簮灏辨槸浠诲姟鍙蜂篃鍐欎笂鍘伙紙鍔犻攣鐨勬柟娉曞姞涓弬鏁帮紝鍙┖鐨勫弬鏁帮級锛岃В閿佺殑鏃跺�鎶婃潵婧愮疆绌恒� - /// </summary> - /// <param name="loc"></param> - /// <param name="lockState">1:鍏ュ簱閿併�2:鍑哄簱閿併�3:鍏跺畠閿�/param> - /// <param name="lockSource">閿佺殑鏉ユ簮=浠诲姟鍙�/param> - /// <returns></returns> - public static bool LockLoc(ref TN_Location loc, int lockState, string lockSource = "") { - if (loc == null || loc.N_LOCK_STATE != 0) { - return false; - } - - if (loc != null && loc.N_LOCK_STATE == 0) { - loc.N_LOCK_STATE = lockState; - loc.S_LOCK_STATE = TN_Location.GetLockStateStr(lockState); - loc.S_LOCK_OP = lockSource; - loc.T_MODIFY = System.DateTime.Now; - } - - return true; - } - - /// <summary> - /// 鍏ュ簱閿佸畾缁堢偣锛屽嚭搴撻攣瀹氳捣鐐�- /// </summary> - /// <remarks> - /// 鍒涘缓浠诲姟閿佸畾璐т綅鐨勬椂鍊欙紝鎶婇攣鐨勬潵婧愬氨鏄换鍔″彿涔熷啓涓婂幓锛堝姞閿佺殑鏂规硶鍔犱釜鍙傛暟锛屽彲绌虹殑鍙傛暟锛夛紝瑙i攣鐨勬椂鍊欐妸鏉ユ簮缃┖ - /// </remarks> - /// <param name="loc"></param> - /// <param name="lockState">1:鍏ュ簱閿併�2:鍑哄簱閿併�3:鍏跺畠閿�/param> - /// <param name="lockSource">閿佺殑鏉ユ簮=浠诲姟鍙�/param> - /// <returns></returns> - public static bool LockLoc(string loc, int lockState, string lockSource = "") - { - var res = false; - var db = new SqlHelper<object>().GetInstance(); - var model = db.Queryable<TN_Location>().Where(a => a.S_CODE == loc).First(); - LogHelper.Info($"閿佽揣浣峽loc},鐘舵�{lockState},淇℃伅" + JsonConvert.SerializeObject(model)); - if (model != null && model.N_LOCK_STATE == 0) - { - model.N_LOCK_STATE = lockState; - model.S_LOCK_STATE = TN_Location.GetLockStateStr(lockState); - model.S_LOCK_OP = lockSource; - model.T_MODIFY = System.DateTime.Now; - res = db.Updateable<TN_Location>(model).UpdateColumns(it => new { it.N_LOCK_STATE, it.S_LOCK_STATE, it.S_LOCK_OP, it.T_MODIFY }).ExecuteCommand() > 0; - } - LogHelper.Info($"閿佽揣浣峽loc}杩斿洖{res}"); - - return res; - } - - /// <summary> - /// 鍙栬揣瀹岃В閿佽捣鐐癸紝鍗歌揣瀹岃В閿佺粓鐐癸紝鍙楠岄攣鐨勬潵婧愶紝涔熷彲浠ヤ笉鏍¢獙 + /// 鍙栬揣瀹岃В閿佽捣鐐�鍗歌揣瀹岃В閿佺粓鐐�鍙楠岄攣鐨勬潵婧�涔熷彲浠ヤ笉鏍¢獙 /// </summary> /// <param name="loc"></param> /// <returns></returns> @@ -211,19 +143,17 @@ /// <param name="loc"></param> /// <param name="cntrs"></param> /// <returns></returns> - public static string UnBindingLoc(string loc, List<string> cntrs) + public static string UnbindLocCntr(string loc, List<string> cntrs) { var db = new SqlHelper<object>().GetInstance(); - var logs = $"璐т綅锛歿loc}锛屽鍣細{JsonConvert.SerializeObject(cntrs)}"; + var logs = $"璐т綅:{loc},瀹瑰櫒:{JsonConvert.SerializeObject(cntrs)}"; try { var lcrList = db.Queryable<TN_Loc_Container>().Where(a => cntrs.Contains(a.S_CNTR_CODE) && a.S_LOC_CODE == loc).ToList(); - if (lcrList.Count == 0) - { - LogHelper.Info($"璐т綅鏃犻渶瑙g粦瀹瑰櫒锛屽湪鏁版嵁搴撲腑鏈壘鍒皗JsonConvert.SerializeObject(cntrs)}鐩稿叧鐨勮揣浣嶅鍣ㄥ叧绯昏〃淇℃伅"); + if (lcrList.Count == 0) { + LogHelper.Info($"璐т綅鏃犻渶瑙g粦瀹瑰櫒,鍦ㄦ暟鎹簱涓湭鎵惧埌{JsonConvert.SerializeObject(cntrs)}鐩稿叧鐨勮揣浣嶅鍣ㄥ叧绯昏〃淇℃伅"); } cntrs = lcrList.Select(a => a.S_CNTR_CODE).ToList(); - var log = JsonConvert.SerializeObject(cntrs); var location = db.Queryable<TN_Location>().First(a => a.S_CODE == loc); @@ -237,44 +167,42 @@ { if (db.Deleteable<TN_Loc_Container>().Where(it => cntrs.Contains(it.S_CNTR_CODE) && it.S_LOC_CODE == loc).ExecuteCommand() > 0) { - LogHelper.Info($"鍒犻櫎璐т綅瀹瑰櫒鍏崇郴琛ㄦ垚鍔燂紝{log}"); + LogHelper.Info($"鍒犻櫎璐т綅瀹瑰櫒鍏崇郴琛ㄦ垚鍔�{log}"); } else { tran.RollbackTran(); - LogHelper.Info($"鍒犻櫎璐т綅瀹瑰櫒鍏崇郴琛ㄥけ璐ワ紝{log}"); + LogHelper.Info($"鍒犻櫎璐т綅瀹瑰櫒鍏崇郴琛ㄥけ璐�{log}"); - return "璐т綅瑙g粦瀹瑰櫒澶辫触锛� + logs; + return "璐т綅瑙g粦瀹瑰櫒澶辫触," + logs; } log = JsonConvert.SerializeObject(location); - if (db.Updateable(location).UpdateColumns(it => new { it.N_CURRENT_NUM, it.S_LOCK_STATE, it.N_LOCK_STATE }).ExecuteCommand() > 0) - { + if (db.Updateable(location).UpdateColumns(it => new { it.N_CURRENT_NUM, it.S_LOCK_STATE, it.N_LOCK_STATE }).ExecuteCommand() > 0) { tran.CommitTran(); - LogHelper.Info($"鏇存柊璐т綅琛ㄦ垚鍔燂紝{log}"); + LogHelper.Info($"鏇存柊璐т綅琛ㄦ垚鍔�{log}"); } - else - { + else { tran.RollbackTran(); - LogHelper.Info($"鏇存柊璐т綅琛ㄥけ璐ワ紝{log}"); + LogHelper.Info($"鏇存柊璐т綅琛ㄥけ璐�{log}"); - return "璐т綅瑙g粦瀹瑰櫒澶辫触锛� + logs; + return "璐т綅瑙g粦瀹瑰櫒澶辫触," + logs; } } } else { - LogHelper.Info($"鍦ㄦ暟鎹簱涓湭鎵惧埌璇ヨ揣浣嶏紝鏃犻渶鏇存柊锛岃揣浣嶏細{loc}"); + LogHelper.Info($"鍦ㄦ暟鎹簱涓湭鎵惧埌璇ヨ揣浣�鏃犻渶鏇存柊,璐т綅:{loc}"); } - return "璐т綅瑙g粦瀹瑰櫒鎴愬姛锛� + logs; + return "璐т綅瑙g粦瀹瑰櫒鎴愬姛," + logs; } catch (Exception ex) { - LogHelper.Info($"鍙戠敓浜嗗紓甯革紝璐т綅瑙g粦瀹瑰櫒澶辫触锛寋ex.Message}"); - return "璐т綅缁戝畾瀹瑰櫒澶辫触锛� + logs; + LogHelper.Info($"鍙戠敓浜嗗紓甯�璐т綅瑙g粦瀹瑰櫒澶辫触,{ex.Message}"); + return "璐т綅缁戝畾瀹瑰櫒澶辫触," + logs; } } @@ -287,37 +215,39 @@ public static string BindingLoc(string loc, List<string> cntrs) { var db = new SqlHelper<object>().GetInstance(); - var logs = $"璐т綅锛歿loc}锛屽鍣細{JsonConvert.SerializeObject(cntrs)}"; + var logs = $"璐т綅:{loc},瀹瑰櫒:{JsonConvert.SerializeObject(cntrs)}"; try { + // 鍒犻櫎宸茬粡缁戝畾杩囩殑瀹瑰櫒璁板綍 var lcrList = db.Queryable<TN_Loc_Container>().Where(a => cntrs.Contains(a.S_CNTR_CODE) && a.S_LOC_CODE == loc).ToList(); - - if (lcrList.Count > 0) - { + if (lcrList.Count > 0) { cntrs = cntrs.Except(lcrList.Select(a => a.S_CNTR_CODE).ToList()).ToList(); } var bindLocCntList = new List<TN_Loc_Container>(); - foreach (var item in cntrs) - { - bindLocCntList.Add(new TN_Loc_Container() { S_LOC_CODE = loc, S_CNTR_CODE = item }); - } + foreach (var item in cntrs) { + // 閽堝瀹瑰櫒绫诲瀷娣诲姞鐨勬柊閫昏緫 + var cntr = db.Queryable<TN_Container>().Where(c => c.S_CODE == item).First(); + if (cntr == null) { + LogHelper.Info($"璐т綅瑙g粦鏃�瀹瑰櫒{item}娌℃湁鍦ㄥ鍣ㄤ俊鎭〃涓煡鍒�涓嶈褰曞鍣ㄧ被鍨�); + bindLocCntList.Add(new TN_Loc_Container() { S_LOC_CODE = loc, S_CNTR_CODE = item }); + } + else { + bindLocCntList.Add(new TN_Loc_Container() { S_LOC_CODE = loc, S_CNTR_CODE = item, S_CNTR_TYPE = cntr.S_TYPE }); + } + } var log = JsonConvert.SerializeObject(bindLocCntList); using (var tran = db.Ado.UseTran()) { - if (db.Insertable<TN_Loc_Container>(bindLocCntList).ExecuteCommand() > 0) - { - LogHelper.Info($"鎻掑叆璐т綅瀹瑰櫒鍏崇郴琛ㄦ垚鍔燂紝{log}"); - } - else - { + if (db.Insertable(bindLocCntList).ExecuteCommand() <= 0) { db.RollbackTran(); - LogHelper.Info($"鎻掑叆璐т綅瀹瑰櫒鍏崇郴琛ㄥけ璐ワ紝{log}"); - return "璐т綅缁戝畾瀹瑰櫒澶辫触锛� + logs; + LogHelper.Info($"鎻掑叆璐т綅瀹瑰櫒鍏崇郴琛ㄥけ璐�{log}"); + return "璐т綅缁戝畾瀹瑰櫒澶辫触," + logs; } + LogHelper.Info($"鎻掑叆璐т綅瀹瑰櫒鍏崇郴琛ㄦ垚鍔�{log}"); var location = db.Queryable<TN_Location>().First(a => a.S_CODE == loc); if (location != null) @@ -331,29 +261,29 @@ { db.CommitTran(); - LogHelper.Info($"鏇存柊璐т綅琛ㄦ垚鍔燂紝{log}"); + LogHelper.Info($"鏇存柊璐т綅琛ㄦ垚鍔�{log}"); } else { db.RollbackTran(); - LogHelper.Info($"鏇存柊璐т綅琛ㄥけ璐ワ紝{log}"); + LogHelper.Info($"鏇存柊璐т綅琛ㄥけ璐�{log}"); - return "璐т綅缁戝畾瀹瑰櫒澶辫触锛� + logs; + return "璐т綅缁戝畾瀹瑰櫒澶辫触," + logs; } } else { db.RollbackTran(); - LogHelper.Info($"鏈壘鍒拌璐т綅{loc}锛屾垨鑰呭凡閿佸畾锛寋log}"); + LogHelper.Info($"鏈壘鍒拌璐т綅{loc},鎴栬�宸查攣瀹�{log}"); } } - return "璐т綅缁戝畾瀹瑰櫒鎴愬姛锛� + logs; + return "璐т綅缁戝畾瀹瑰櫒鎴愬姛," + logs; } catch (Exception ex) { - LogHelper.Info($"鍙戠敓浜嗗紓甯革紝璐т綅缁戝畾瀹瑰櫒澶辫触锛�); - return "璐т綅缁戝畾瀹瑰櫒澶辫触锛� + ex.Message; + LogHelper.Info($"鍙戠敓浜嗗紓甯�璐т綅缁戝畾瀹瑰櫒澶辫触,"); + return "璐т綅缁戝畾瀹瑰櫒澶辫触," + ex.Message; } } } -- Gitblit v1.9.1