From 71d0c92a63f1e26c6ba9634413083de1acaf916c Mon Sep 17 00:00:00 2001
From: sunpengfei <i@angelzzz.com>
Date: 星期三, 06 八月 2025 11:18:29 +0800
Subject: [PATCH] feat:数据字典类别开发

---
 FlexJobApi.Core/Utils/EnumUtils/EnumUtils.cs |   32 ++++++++++++++++++++++++++++++++
 1 files changed, 32 insertions(+), 0 deletions(-)

diff --git a/FlexJobApi.Core/Utils/EnumUtils/EnumUtils.cs b/FlexJobApi.Core/Utils/EnumUtils/EnumUtils.cs
index b7448be..fcd9ac2 100644
--- a/FlexJobApi.Core/Utils/EnumUtils/EnumUtils.cs
+++ b/FlexJobApi.Core/Utils/EnumUtils/EnumUtils.cs
@@ -1,6 +1,7 @@
 锘縰sing System;
 using System.Collections.Generic;
 using System.Linq;
+using System.Reflection;
 using System.Text;
 using System.Threading.Tasks;
 
@@ -67,6 +68,22 @@
         }
 
         /// <summary>
+        /// 鑾峰彇鎻忚堪
+        /// </summary>
+        /// <typeparam name="T"></typeparam>
+        /// <param name="model"></param>
+        /// <param name="t"></param>
+        /// <returns></returns>
+        public static string GetDescription<T>(this EnumModel<T> model, T t)
+            where T : struct
+        {
+            return model.Items
+                .Where(it => it.Enum.Equals(t))
+                .Select(it => it.Description)
+                .FirstOrDefault();
+        }
+
+        /// <summary>
         /// 鑾峰彇鏋氫妇
         /// </summary>
         /// <typeparam name="T"></typeparam>
@@ -81,5 +98,20 @@
                .Select(it => it.Enum)
                .FirstOrDefault();
         }
+
+        /// <summary>
+        /// 鑾峰彇鑷畾涔夌壒鎬�
+        /// </summary>
+        /// <typeparam name="TEnum"></typeparam>
+        /// <typeparam name="TAttribute"></typeparam>
+        /// <param name="enum"></param>
+        /// <returns></returns>
+        public static TAttribute GetCustomAttribute<TEnum, TAttribute>(this TEnum @enum)
+            where TEnum : struct
+            where TAttribute : Attribute
+        {
+
+            return typeof(TEnum).GetMember(@enum.ToString())[0].GetCustomAttribute<TAttribute>();
+        }
     }
 }

--
Gitblit v1.9.1