using IRaCIS.Core.Domain.Models; using IRaCIS.Core.Domain.Share; using Microsoft.AspNetCore.Mvc; using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.Linq; using System.Reflection; using System.Text; using System.Threading.Tasks; using Microsoft.AspNetCore.Hosting; namespace IRaCIS.Core.Infra.EFCore.Common { public static class ReadingCommon { public static Dictionary TaskNumDic = new Dictionary() { {ReadingCategory.Visit, 0 }, {ReadingCategory.Global,(decimal) 0.03 }, {ReadingCategory.Judge,(decimal) 0.02 }, {ReadingCategory.Oncology, (decimal)0.06 }, }; public const string EvaluationReason = "肿瘤学阅片评估原因请依据临床数据填写,在与影像学结果不一致时必填。"; public static bool IsNullOrEmpty(this string value) { if (value == null || value == string.Empty) { return true; } else { return false; } } /// /// 获取枚举Int值 /// /// /// /// public static string GetEnumInt(this T value) where T : Enum { return ((int)(object)value).ToString(); } /// /// 字符匹配枚举 /// /// /// /// /// public static bool EqEnum(this string value, T enumValue) where T:Enum { try { return int.Parse(value) == (int)(object)enumValue; } catch (Exception) { return false; } } public static decimal NullChange0(this decimal? value) { if (value == null) { return 0; } else { return value.Value; } } public static decimal IsNullOrEmptyReturn0(this string value) { try { if (value == null || value == string.Empty || value == "NA") { return 0; } else { return decimal.Parse(value); } } catch (Exception) { return 0; } } /// /// 获取DisplayName /// /// /// public static string GetDisplayName(this Enum enumName) { var type = enumName.GetType();//先获取这个枚举的类型 var field = type.GetField(enumName.ToString());//通过这个类型获取到值 var obj = (DisplayAttribute)field.GetCustomAttribute(typeof(DisplayAttribute));//得到特性 return obj.Name ?? ""; } } }