From e79700d34620c495667b7b8e7b852f23ed7d7e4e Mon Sep 17 00:00:00 2001 From: kazelee <1847801760@qq.com> Date: 星期三, 16 七月 2025 17:30:42 +0800 Subject: [PATCH] 简化增删改表达式,避免类型匹配出错 --- wms/LocationHelper.cs | 135 ++------------------------------------------ 1 files changed, 7 insertions(+), 128 deletions(-) diff --git a/wms/LocationHelper.cs b/wms/LocationHelper.cs index 7e4e291..fea5c42 100644 --- a/wms/LocationHelper.cs +++ b/wms/LocationHelper.cs @@ -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; - //} } } } @@ -124,83 +108,6 @@ { var db = new SqlHelper<object>().GetInstance(); return db.Queryable<TN_Location>().Where(a => a.S_CODE.Trim() == code).First(); - } - - /// <summary> - /// 璧风偣鍑哄簱閿侊紙鍙兘瀵规棤閿佽揣浣嶄笂閿侊級 - /// </summary> - /// <param name="loc"></param> - /// <param name="lockSource"></param> - /// <returns></returns> - public static bool LockStartLoc(ref TN_Location loc, string lockSource = "") { - if (loc == null) { - LogHelper.Info($"璧风偣鍑哄簱閿侊細浼犲叆鐨勮揣浣嶅弬鏁颁负null"); - return false; - } - - if (loc.N_LOCK_STATE != 0 || loc.S_LOCK_STATE != "鏃�) { - LogHelper.Info($"璧风偣鍑哄簱閿侊細璐т綅褰撳墠宸叉湁閿�{loc.N_LOCK_STATE},{loc.S_LOCK_STATE})"); - return false; - } - - if (loc != null && loc.N_LOCK_STATE == 0) { - loc.N_LOCK_STATE = 2; // 璧风偣鍑哄簱閿�- loc.S_LOCK_STATE = TN_Location.GetLockStateStr(2); // 璧风偣鍑哄簱閿�- loc.S_LOCK_OP = lockSource; - loc.T_MODIFY = System.DateTime.Now; - } - - return true; - } - - public static bool LockEndLoc(ref TN_Location loc, string lockSource = "") { - if (loc == null) { - LogHelper.Info($"缁堢偣鍏ュ簱閿侊細浼犲叆鐨勮揣浣嶅弬鏁颁负null"); - return false; - } - - if (loc.N_LOCK_STATE != 0 || loc.S_LOCK_STATE != "鏃�) { - LogHelper.Info($"缁堢偣鍏ュ簱閿侊細璐т綅褰撳墠宸叉湁閿�{loc.N_LOCK_STATE},{loc.S_LOCK_STATE})"); - return false; - } - - if (loc != null && loc.N_LOCK_STATE == 0) { - loc.N_LOCK_STATE = 1; // 缁堢偣鍑哄簱閿�- loc.S_LOCK_STATE = TN_Location.GetLockStateStr(1); // 缁堢偣鍑哄簱閿�- 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> - private 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> @@ -257,30 +164,8 @@ location.S_LOCK_STATE = "鏃�; location.N_LOCK_STATE = 0; - var containerList = new List<TN_Container>(); - foreach (var item in lcrList) { - // 閽堝瀹瑰櫒绫诲瀷娣诲姞鐨勬柊閫昏緫 - var cntr = db.Queryable<TN_Container>() - .Where(c => c.S_CODE == item.S_CNTR_CODE).First(); - if (cntr == null) { - LogHelper.Info($"璐т綅瑙g粦鏃讹紝瀹瑰櫒{item.S_CNTR_CODE}娌℃湁鍦ㄥ鍣ㄤ俊鎭〃涓煡鍒帮紝杩欓噷鏍规嵁璐т綅瀹瑰櫒鍏崇郴娣诲姞"); - containerList.Add(new TN_Container { - S_CODE = item.S_CNTR_CODE, - S_TYPE = item.S_CNTR_TYPE, - }); - } - } - using (var tran = db.Ado.UseTran()) { - if (containerList.Count > 0) { - if (db.Insertable<TN_Container>(containerList).ExecuteCommand() <= 0) { - LogHelper.Info($"鎻掑叆瀹瑰櫒淇℃伅琛ㄥけ璐� + JsonConvert.SerializeObject(containerList)); - tran.RollbackTran(); - return "璐т綅瑙g粦瀹瑰櫒澶辫触锛� + logs; - } - } - if (db.Deleteable<TN_Loc_Container>().Where(it => cntrs.Contains(it.S_CNTR_CODE) && it.S_LOC_CODE == loc).ExecuteCommand() > 0) { LogHelper.Info($"鍒犻櫎璐т綅瀹瑰櫒鍏崇郴琛ㄦ垚鍔燂紝{log}"); @@ -336,19 +221,17 @@ 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) - { + foreach (var item in cntrs) { // 閽堝瀹瑰櫒绫诲瀷娣诲姞鐨勬柊閫昏緫 - var cntr = db.Queryable<TN_Container>() - .Where(c => c.S_CODE == item).First(); + 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 }); @@ -362,16 +245,12 @@ 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}"); var location = db.Queryable<TN_Location>().First(a => a.S_CODE == loc); if (location != null) -- Gitblit v1.9.1