using System.Linq; using Abp.Localization; using WeOnlineApp.Configuration; using WeOnlineApp.EF; using IwbZero.Authorization.Base.SystemInfo; namespace WeOnlineApp.SeedData { public class DefaultSettingsCreator { private readonly WeOnlineAppDbContext _context; public DefaultSettingsCreator(WeOnlineAppDbContext context) { _context = context; } public void Create() { _context.TruncateTable("[dbo].[Sys_Settings]"); AddSettingIfNotExists("默认语言", LocalizationSettingNames.DefaultLanguage, IwbConsts.DefaultLanguage, "默认语言", SystemSettingTypeDefinition.System); AddSettingIfNotExists("平台数据中心域名", IwbSettingNames.WeDataCenterIp, @"http://shvber.com:5015/", "智慧演练平台数据中心域名"); AddSettingIfNotExists("平台推演引擎域名", IwbSettingNames.WeEngineIp, @"http://shvber.com:5016/", "智慧演练平台推演引擎域名"); AddSettingIfNotExists("登陆页面背景路径", IwbSettingNames.LoginPagePath, IwbConsts.LoginHomeImagePath, "登陆页面背景的基础路径", SystemSettingTypeDefinition.User); AddSettingIfNotExists("主页面背景路径", IwbSettingNames.HomePagePath, IwbConsts.LoginHomeImagePath, "主页面背景的基础路径", SystemSettingTypeDefinition.User); AddSettingIfNotExists("是否开启接受通知", IwbSettingNames.ReceiveNotifications, "true", "是否开启接受通知(true:开启、false:禁用)", SystemSettingTypeDefinition.User); AddSettingIfNotExists("是否多语言", IwbSettingNames.MultiLanguages, MultiLanguagesDefinition.Multi, "是:Y;否:N"); AddSettingIfNotExists("系统平台名称", IwbSettingNames.AdminSystemName, "系统管理平台"); AddSettingIfNotExists("文件路径", IwbSettingNames.DownloadPath, "Download/AttachFiles", "上传文件默认路径"); AddSettingIfNotExists("文件类型", IwbSettingNames.UploadFileExt, "jpg,png,pdf,xlsx,xls,doc,docx,zip,rar,mp3,mp4", "系统允许上传的文件类型"); AddSettingIfNotExists("单文件文件大小(单位:兆)", IwbSettingNames.UploadFileMaxSize, "10", "系统允许上传的单个文件最大值(最小1M、最大100M、非法值取10M)"); AddSettingIfNotExists("用户默认密码", IwbSettingNames.UserDefaultPassword, "111222", "新创建用户初始密码"); AddSettingIfNotExists("页面底部", IwbSettingNames.HtmlPagesFooter, @"Copyright © 2019 IWB.Net. All Rights Reserved.", "页面底部内容"); AddSettingIfNotExists("GUID前缀", IwbSettingNames.RecordIdPrefix, @"JY", "系统生成的GUID前缀"); AddSettingIfNotExists("四功五力标签", IwbSettingNames.SiGongWuLiTag, @"对上级,对下级,对相关单位,对媒体|协调力,决策力,掌控力,舆论引导力,研判力", "四功五力标签"); AddSettingIfNotExists("评估报告标签能力值", IwbSettingNames.ReportTagLevel, @"30,70", "四功五力标签能力值。0-100内数字从小到大用,分隔。"); AddSettingIfNotExists("培训营检查关联角色(全局控制)", IwbSettingNames.EvalCheckRole, @"N", "是:Y;否:N"); AddSettingIfNotExists("评估报告名称", IwbSettingNames.ReportName, @"智慧推演平台演练评估报告", "评估报告名称"); AddSettingIfNotExists("评估报告公司名称", IwbSettingNames.ReportCompany, @"上海电力公司", "评估报告公司名称"); } private void AddSettingIfNotExists(string displayName, string name, string value, string desc = null, int? type = SystemSettingTypeDefinition.Tenant, int? tenantId = null) { // ReSharper disable once ConditionIsAlwaysTrueOrFalse if (tenantId == null && !IwbConsts.MultiTenancyEnabled) { tenantId = 1; } if (_context.Settings.Any(s => s.Name == name && s.TenantId == tenantId && s.UserId == null)) { return; } var setting = new SysSetting(tenantId, null, name, value, displayName, type) { Description = desc ?? displayName }; _context.Settings.Add(setting); _context.SaveChanges(); } } }