using System; using CK.SCP.Utils; namespace CK.SCP.Models { public static class GlobalConfig { public const string ScpDbFileName = "Scp数据库设置.ini"; public const string AppBoxDbFileName = "AppBox数据库设置.ini"; public const string UniApiDbFileName = "接口数据库设置.ini"; public const string UniApiConfigFileName = "ERP接口设置.ini"; public const string DurationFileName = "执行周期设置.ini"; public const string UpdateFileName = "自动更新设置.ini"; public const string WmsDbFileName = "Wms数据库设置.ini"; public const string DataCenterDbFileName = "数据中心数据库设置.ini"; public const string ExchangeCenterDbFileName = "交换中心数据库设置.ini"; private static DbSetting _scpDatabase; private static DbSetting _appboxDatabase; private static DbSetting _uniApiDatabase; private static DbSetting _wmsDatabase; private static DbSetting _dcDB; private static DbSetting _ecDB; public static DbSetting ScpDatabase { get { return _scpDatabase ?? (_scpDatabase = GetConfigValues(ScpDbFileName)); } set { _scpDatabase = value; } } public static DbSetting AppBoxDatabase { get { return _appboxDatabase ?? (_appboxDatabase = GetConfigValues(AppBoxDbFileName)); } set { _appboxDatabase = value; } } public static DbSetting UniApiDatabase { get { return _uniApiDatabase ?? (_uniApiDatabase = GetConfigValues(UniApiDbFileName)); } set { _uniApiDatabase = value; } } public static DbSetting WmsDatabase { get { return _wmsDatabase ?? (_wmsDatabase = GetConfigValues(WmsDbFileName)); } set { _wmsDatabase = value; } } public static DbSetting DataCenterDB { get { return _dcDB ?? (_dcDB = GetConfigValues(DataCenterDbFileName)); } set { _dcDB = value; } } public static DbSetting ExchangeCenterDB { get { return _ecDB ?? (_ecDB = GetConfigValues(ExchangeCenterDbFileName)); } set { _ecDB = value; } } public static T GetConfigValues(string filename) where T : new() { T t = new T(); if (FileHelper.Exists(filename)) { t = JsonHelper.ReadConfigFromFile(filename); } else { throw new Exception($"配置文件{filename}丢失,请重新配置"); } return t; } } }