DefaultSettingsCreator.cs 4.3 KB

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