using System.Linq; using Abp.Localization; using WePlatform.Configuration; using WePlatform.EF; using IwbZero.Authorization.Base.SystemInfo; namespace WePlatform.SeedData { public class DefaultSettingsCreator { private readonly WePlatformDbContext _context; public DefaultSettingsCreator(WePlatformDbContext context) { _context = context; } public void Create() { _context.TruncateTable("[dbo].[Sys_Settings]"); AddSettingIfNotExists("默认语言", LocalizationSettingNames.DefaultLanguage, IwbConsts.DefaultLanguage, "默认语言", SystemSettingTypeDefinition.System); 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.AdminSystemVersion, "1.0.0"); 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 JY.Net. All Rights Reserved.", "页面底部内容"); AddSettingIfNotExists("GUID前缀", IwbSettingNames.WePlatformRecordIdPrefix, @"JY", "系统生成的GUID前缀"); AddSettingIfNotExists("消息服务器IP", IwbSettingNames.MqttServiceIp, "shvber.com", "消息服务器IP"); AddSettingIfNotExists("消息服务器端口", IwbSettingNames.MqttServicePort, "1885", "消息服务器端口"); AddSettingIfNotExists("消息用户注册端口", IwbSettingNames.HttpMqttServicePort, "8201", "消息服务器注册用户端口"); } 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(); } } }