From fc6dd85a865c4cadae0b9a07d56e2988d2262f10 Mon Sep 17 00:00:00 2001 From: kazelee <1847801760@qq.com> Date: 星期二, 22 七月 2025 17:28:52 +0800 Subject: [PATCH] 优化数据库事务帮助类 , 查询/日志生成类 --- wms/WCSHelper.cs | 58 ++++++++++++++++++++++++++-------------------------------- 1 files changed, 26 insertions(+), 32 deletions(-) diff --git a/wms/WCSHelper.cs b/wms/WCSHelper.cs index 1e7b40c..38fdc5c 100644 --- a/wms/WCSHelper.cs +++ b/wms/WCSHelper.cs @@ -77,10 +77,10 @@ } /// <summary> - /// 鏍规嵁瀹瑰櫒鍙�鏌ヨ褰撳墠瀹瑰櫒鍏宠仈鐨刐璐т綅/瀹瑰櫒/鐗╂枡]淇℃伅(鍙煡璇�鏉� + /// 鏍规嵁 [ 瀹瑰櫒鍙�] , 鏌ヨ褰撳墠瀹瑰櫒鍏宠仈鐨�[ 璐т綅 ] [ 璐т綅瀹瑰櫒 ] [ 瀹瑰櫒璐у搧 ] 淇℃伅 ( 鍙煡璇�1 鏉�) /// </summary> /// <param name="cntrCode">瀹瑰櫒鍙�/param> - /// <param name="skipCgDetail">鏄惁璺宠繃[鐗╂枡琛╙鐨勬煡璇�褰撳鍣ㄥ彿鏉ヨ嚜[鐗╂枡琛╙鏃�</param> + /// <param name="skipCgDetail">鏄惁璺宠繃 [ 瀹瑰櫒璐у搧 ] 鐨勬煡璇�( 褰撳鍣ㄥ彿鏉ヨ嚜 [ 瀹瑰櫒璐у搧 ] 鏃�)</param> /// <returns></returns> public static LocCntrCg GetLocCntrCg(string cntrCode, bool skipCgDetail = false) { var db = new SqlHelper<object>().GetInstance(); @@ -112,19 +112,20 @@ } /// <summary> - /// [缁戝畾[璐т綅-瀹瑰櫒]淇℃伅](璁剧疆璐т綅鏁伴噺涓�;涓嶄細妫�煡loc鏄惁涓簄ull) + /// 缁戝畾 [ 璐т綅瀹瑰櫒 ] 淇℃伅 ( 璁剧疆 [ 璐т綅鏁伴噺 ] = 1 ) /// </summary> + /// <remarks><b>[ 娉ㄦ剰 ]</b> 涓嶄細妫�煡 loc 鈮�null</remarks> /// <param name="loc"></param> /// <param name="cntrCode"></param> /// <returns></returns> - public static TN_Loc_Container BindLocCntr(ref TN_Location loc, string cntrCode) { + public static TN_Loc_Container BindLocCntr(TN_Location loc, string cntrCode) { var locCntrRel = new TN_Loc_Container { S_LOC_CODE = loc.S_CODE, S_CNTR_CODE = cntrCode, }; if (loc.N_CURRENT_NUM != 0) { - LogHelper.Warn($"缁戝畾璐т綅瀹瑰櫒:绋嬪簭姝e湪灏濊瘯缁橻瀹瑰櫒鏁伴噺]涓嶆槸0鐨勮揣浣�璁剧疆[瀹瑰櫒鏁伴噺]涓�!璐т綅='{loc.S_CODE}',瀹瑰櫒鏁伴噺={loc.N_CURRENT_NUM}"); + LogHelper.Warn($"缁戝畾璐т綅瀹瑰櫒:绋嬪簭姝e湪灏濊瘯缁橻瀹瑰櫒鏁伴噺]涓嶆槸0鐨勮揣浣�璁剧疆[瀹瑰櫒鏁伴噺]涓�!!璐т綅='{loc.S_CODE}',瀹瑰櫒鏁伴噺={loc.N_CURRENT_NUM}"); } loc.N_CURRENT_NUM = 1; @@ -133,14 +134,20 @@ return locCntrRel; } - public static TN_Loc_Container BindLocCntrs(ref TN_Location loc, List<string> cntrCodes) { + /// <summary> + /// 缁戝畾 [ 璐т綅瀹瑰櫒 ] 淇℃伅 ( 璁剧疆 [ 璐т綅鏁伴噺 ] + list.Count ) + /// </summary> + /// <param name="loc"></param> + /// <param name="cntrCodes"></param> + /// <returns></returns> + public static TN_Loc_Container BindLocCntrs(TN_Location loc, List<string> cntrCodes) { var locCntrRel = new TN_Loc_Container { S_LOC_CODE = loc.S_CODE, S_CNTR_CODE = string.Join(",", cntrCodes) }; if (loc.N_CURRENT_NUM != 0) { - LogHelper.Warn($"缁戝畾璐т綅瀹瑰櫒:绋嬪簭姝e湪灏濊瘯缁橻瀹瑰櫒鏁伴噺]涓嶆槸0鐨勮揣浣�璁剧疆[瀹瑰櫒鏁伴噺]涓�!璐т綅='{loc.S_CODE}',瀹瑰櫒鏁伴噺={loc.N_CURRENT_NUM}"); + LogHelper.Warn($"缁戝畾璐т綅瀹瑰櫒:绋嬪簭姝e湪灏濊瘯缁橻瀹瑰櫒鏁伴噺]涓嶆槸0鐨勮揣浣�璁剧疆[瀹瑰櫒鏁伴噺]涓�!!璐т綅='{loc.S_CODE}',瀹瑰櫒鏁伴噺={loc.N_CURRENT_NUM}"); } loc.N_CURRENT_NUM = 1; @@ -171,7 +178,7 @@ /// <summary> /// 缁堢偣鍏ュ簱閿� /// </summary> - /// <remarks>瑕佹眰: loc != null; 閿佺姸鎬�'鏃�;</remarks> + /// <remarks>瑕佹眰 : loc 鈮�null ; 閿佺姸鎬�'鏃� ;</remarks> /// <param name="loc"></param> /// <param name="lockSource"></param> public static void LockEndLoc(TN_Location loc, string lockSource = "") { @@ -188,8 +195,9 @@ } /// <summary> - /// [鍒涘缓浠诲姟](闇�‘淇漵tartLoc/endLoc涓嶄负null;涓嶄細妫�煡璐т綅S_CODE,S_AREA_CODE灞炴�鏄惁鍚堟硶) + /// 鍒涘缓浠诲姟 /// </summary> + /// <remarks>瑕佹眰 : <br/>(1) startLoc / endLoc 鈮�null<br/>(2) startLoc / endLoc 瀛樺湪 S_CODE , S_AREA_CODE 瀛楁</remarks> /// <param name="startLoc">璧风偣璐т綅:鑷冲皯鎻愪緵:S_CODE,S_AREA_CODE</param> /// <param name="endLoc">缁堢偣璐т綅:鑷冲皯鎻愪緵:S_CODE,S_AREA_CODE</param> /// <param name="cntId">瀹瑰櫒鍙�/param> @@ -198,7 +206,7 @@ /// <param name="agv">AGV绫诲瀷</param> /// <returns></returns> public static TN_Task BuildTask(TN_Location startLoc, TN_Location endLoc, string cntId, string type, int pri = 3, int agv = 1) { - TN_Task TN_Task = new TN_Task() { + TN_Task task = new TN_Task() { S_CODE = GenerateTaskNo(), S_START_AREA = startLoc.S_AREA_CODE, S_END_AREA = endLoc.S_AREA_CODE, @@ -211,15 +219,15 @@ N_B_STATE = 0, // 浠诲姟鍒涘缓鏃�榛樿绛夊緟 }; - LogHelper.Info($"鍒涘缓浠诲姟:浠诲姟鍙�'{TN_Task.S_CODE}'"); + LogHelper.Info($"鍒涘缓浠诲姟:浠诲姟鍙�'{task.S_CODE}',璧风偣璐т綅='',缁堢偣璐т綅='',瀹瑰櫒鍙�'',浠诲姟绫诲瀷"); - return TN_Task; + return task; } /// <summary> - /// [ 鍒涘缓浠诲姟,骞朵笂閿�] ( 闇�‘淇漵tartLoc/endLoc涓嶄负null ; 涓嶄細妫�煡璐т綅S_CODE,S_AREA_CODE灞炴�鏄惁鍚堟硶 ) + /// 鍒涘缓浠诲姟 + 璐т綅閿� /// </summary> - /// <remarks>瑕佹眰 : (1) startLoc / endLoc 鈮�null<br/>(2) startLoc / endLoc 瀛樺湪 S_CODE , S_AREA_CODE</remarks> + /// <remarks>瑕佹眰 : <br/>(1) startLoc / endLoc 鈮�null<br/>(2) startLoc / endLoc 瀛樺湪 S_CODE , S_AREA_CODE 瀛楁</remarks> /// <param name="startLoc">璧风偣璐т綅 : 鑷冲皯鎻愪緵 : S_CODE , S_AREA_CODE</param> /// <param name="endLoc">缁堢偣璐т綅 : 鑷冲皯鎻愪緵 : S_CODE , S_AREA_CODE</param> /// <param name="cntId">瀹瑰櫒鍙�/param> @@ -228,25 +236,11 @@ /// <param name="agv">AGV绫诲瀷</param> /// <returns></returns> public static TN_Task BuildTaskWithLocLock(TN_Location startLoc, TN_Location endLoc, string cntId, string type, int pri = 3, int agv = 1) { - TN_Task TN_Task = new TN_Task() { - S_CODE = GenerateTaskNo(), - S_START_AREA = startLoc.S_AREA_CODE, - S_END_AREA = endLoc.S_AREA_CODE, - S_START_LOC = startLoc.S_CODE, - S_END_LOC = endLoc.S_CODE, - S_CNTR_CODE = cntId, - S_TYPE = type, - N_PRIORITY = pri, - N_SCHEDULE_TYPE = agv, - N_B_STATE = 0, // 浠诲姟鍒涘缓鏃�榛樿绛夊緟 - }; + var task = BuildTask(startLoc, endLoc, cntId, type, pri); + LockStartLoc(startLoc, task.S_CODE); + LockEndLoc(endLoc, task.S_CODE); - LogHelper.Info($"鍒涘缓浠诲姟:浠诲姟鍙�'{TN_Task.S_CODE}'"); - - LockStartLoc(startLoc, TN_Task.S_CODE); - LockEndLoc(endLoc, TN_Task.S_CODE); - - return TN_Task; + return task; } internal static bool CheckActionRecordExist(string no, int code) { -- Gitblit v1.9.1