From 70233af5426b0d1c343ebe87183303a34a9aaa58 Mon Sep 17 00:00:00 2001 From: hutongqing <hutongqing@hnkhzn.com> Date: 星期三, 20 十一月 2024 09:05:38 +0800 Subject: [PATCH] WIDESEAWCS_QuartzJob更新版本 --- WIDESEAWCS_Server/WIDESEAWCS_Common/TaskEnum/TaskEnumHelper.cs | 31 +++++++++++++++++++++++++++---- 1 files changed, 27 insertions(+), 4 deletions(-) diff --git a/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskEnum/TaskEnumHelper.cs b/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskEnum/TaskEnumHelper.cs index 98a8147..6ea2329 100644 --- a/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskEnum/TaskEnumHelper.cs +++ b/WIDESEAWCS_Server/WIDESEAWCS_Common/TaskEnum/TaskEnumHelper.cs @@ -7,53 +7,76 @@ namespace WIDESEAWCS_Common.TaskEnum { + // 瀹氫箟涓�涓潤鎬佺被TaskEnumHelper锛岀敤浜庡鐞嗘灇涓剧被鍨� public static class TaskEnumHelper { + // 鑾峰彇鏋氫妇绫诲瀷鐨勭储寮曞垪琛� public static List<int> GetEnumIndexList(this Type type) { + // 濡傛灉type涓虹┖锛屾姏鍑篈rgumentNullException寮傚父 if (type is null) throw new ArgumentNullException("type"); + // 濡傛灉type涓嶆槸鏋氫妇绫诲瀷锛岃繑鍥炵┖鍒楄〃 if (!type.IsEnum) return new List<int>(); + // 杩斿洖鏋氫妇绫诲瀷鐨勭储寮曞垪琛� return Enum.GetValues(type).Cast<int>().ToList(); } + // 鏍规嵁浠诲姟绫诲瀷鑾峰彇浠诲姟绫诲瀷缁� public static TaskTypeGroup GetTaskTypeGroup(this int taskType) { - if (!int.TryParse(Enum.Parse<TaskOutboundTypeEnum>(taskType.ToString()).ToString(), out int result)) + // 灏嗕换鍔$被鍨嬭浆鎹负瀛楃涓� + string taskTypeStr = taskType.ToString(); + // 灏濊瘯灏嗕换鍔$被鍨嬭浆鎹负TaskOutboundTypeEnum鏋氫妇绫诲瀷锛屽鏋滄垚鍔燂紝杩斿洖OutbondGroup + if (!int.TryParse(Enum.Parse<TaskOutboundTypeEnum>(taskTypeStr).ToString(), out int result)) { return TaskTypeGroup.OutbondGroup; } - else if (!int.TryParse(Enum.Parse<TaskInStatusEnum>(taskType.ToString()).ToString(), out result)) + // 灏濊瘯灏嗕换鍔$被鍨嬭浆鎹负TaskInStatusEnum鏋氫妇绫诲瀷锛屽鏋滄垚鍔燂紝杩斿洖InboundGroup + else if (!int.TryParse(Enum.Parse<TaskInStatusEnum>(taskTypeStr).ToString(), out result)) { return TaskTypeGroup.InboundGroup; } - else if (!int.TryParse(Enum.Parse<TaskRelocationTypeEnum>(taskType.ToString()).ToString(), out result)) + // 灏濊瘯灏嗕换鍔$被鍨嬭浆鎹负TaskRelocationTypeEnum鏋氫妇绫诲瀷锛屽鏋滄垚鍔燂紝杩斿洖RelocationGroup + else if (!int.TryParse(Enum.Parse<TaskRelocationTypeEnum>(taskTypeStr).ToString(), out result)) { return TaskTypeGroup.RelocationGroup; } - else if (!int.TryParse(Enum.Parse<TaskOtherTypeEnum>(taskType.ToString()).ToString(), out result)) + // 灏濊瘯灏嗕换鍔$被鍨嬭浆鎹负TaskOtherTypeEnum鏋氫妇绫诲瀷锛屽鏋滄垚鍔燂紝杩斿洖OtherGroup + else if (!int.TryParse(Enum.Parse<TaskOtherTypeEnum>(taskTypeStr).ToString(), out result)) { return TaskTypeGroup.OtherGroup; } + // 濡傛灉浠ヤ笂杞崲閮戒笉鎴愬姛锛屾姏鍑篘otImplementedException寮傚父 else { throw new NotImplementedException(); } } + // 鑾峰彇涓嬩竴涓湭瀹屾垚鐨勪换鍔$姸鎬� public static int GetNextNotCompletedStatus<T>(this int currentStatus) where T : Enum { + // 鑾峰彇鏋氫妇绫诲瀷 Type type = typeof(T); + // 濡傛灉type涓虹┖锛屾姏鍑篈rgumentNullException寮傚父 if (type is null) throw new ArgumentNullException(); + // 濡傛灉type涓嶆槸鏋氫妇绫诲瀷锛岃繑鍥�0 if (!type.IsEnum) return 0; + // 濡傛灉type鏄疶askInStatusEnum鏋氫妇绫诲瀷 if (type == typeof(TaskInStatusEnum)) { + // 鑾峰彇TaskInStatusEnum鏋氫妇绫诲瀷鐨勭储寮曞垪琛� List<int> taskInboundTypes = type.GetEnumIndexList(); + // 杩斿洖澶т簬褰撳墠鐘舵�佷笖灏忎簬InFinish鐘舵�佺殑绱㈠紩 return taskInboundTypes.Where(x => x > currentStatus && x < (int)TaskInStatusEnum.InFinish).OrderBy(x => x).FirstOrDefault(); } + // 濡傛灉type鏄疶askOutStatusEnum鏋氫妇绫诲瀷 else if (type == typeof(TaskOutStatusEnum)) { + // 鑾峰彇TaskOutStatusEnum鏋氫妇绫诲瀷鐨勭储寮曞垪琛� return type.GetEnumIndexList().Where(x => x > currentStatus && x < (int)TaskOutStatusEnum.OutFinish).OrderBy(x => x).FirstOrDefault(); } + // 濡傛灉浠ヤ笂鏉′欢閮戒笉婊¤冻锛屾姏鍑篘otImplementedException寮傚父 else { throw new NotImplementedException(); -- Gitblit v1.9.3