using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Configuration.Json; using System; using System.Collections.Generic; namespace IRaCIS.Core.Domain.Share { public class SystemConfig { public static string RootUrl { get; set; } public static string CodePrefix { get; set; } public static string UserCodePrefix { get; set; } public static string VisitPlanNumPrefix { get; set; } public static int CodeLength { get; private set; } public static List ExcludeCodeList { get; private set; } public static List AnonymizeTagList = new List(); public static int LoginExpiredTimeSpan { get; private set; } = 15; public static bool OpenLog { get; set; } = true; public static bool AddClinicalInfo { get; set; } = true; public static bool Share { get; set; } = true; static SystemConfig() { var configuration = new ConfigurationBuilder() .Add(new JsonConfigurationSource { Path = "appsettings.json", ReloadOnChange = true }) .Add(new JsonConfigurationSource { Path = "AnonymizeTagSetting.json", ReloadOnChange = true }) .Build(); RootUrl = configuration.GetSection("RootUrl").Value; CodePrefix = configuration.GetSection("CodePrefix").Value; UserCodePrefix = configuration.GetSection("UserCodePrefix").Value; VisitPlanNumPrefix = configuration.GetSection("VisitPlanNumPrefix").Value; try { int tempLoginExpiredTimeSpan = 15; if (int.TryParse(configuration.GetSection("LoginExpiredTimeSpan").Value, out tempLoginExpiredTimeSpan)) { LoginExpiredTimeSpan = tempLoginExpiredTimeSpan; } OpenLog = Convert.ToBoolean(configuration.GetSection("OpenLog").Value); AddClinicalInfo = Convert.ToBoolean(configuration.GetSection("AddClinicalInfo").Value); configuration.GetSection("needAnonymizeTag").Bind(AnonymizeTagList); Share = Convert.ToBoolean(configuration.GetSection("OpenLog").Value); } catch (Exception) { } } } public class AnonymizeTag { public string Group { get; set; } public string Element { get; set; } public string ReplaceValue { get; set; } public bool Enable { get; set; } public AnonymizeTag() { } public AnonymizeTag(string group, string element, string value, bool enable) { Group = group; Element = element; ReplaceValue = value; Enable = enable; } } }