DefaultSettingsCreator.cs 4.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. using System.Linq;
  2. using Abp.Localization;
  3. using WeApp.Configuration;
  4. using WeApp.EF;
  5. using IwbZero.Authorization.Base.SystemInfo;
  6. namespace WeApp.SeedData
  7. {
  8. public class DefaultSettingsCreator
  9. {
  10. private readonly WeAppDbContext _context;
  11. public DefaultSettingsCreator(WeAppDbContext 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:5025/", "智慧演练平台数据中心域名");
  20. AddSettingIfNotExists("平台推演引擎域名", IwbSettingNames.WeEngineIp, @"http://shvber.com:5026/", "智慧演练平台推演引擎域名");
  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, @"JY2", "系统生成的GUID前缀");
  32. AddSettingIfNotExists("画像图表颜色", IwbSettingNames.PortraitColor, @"#1E90FF,#666", "画像图表颜色");
  33. AddSettingIfNotExists("四功五力标签", IwbSettingNames.SiGongWuLiTag, @"对上级,对下级,对相关单位,对媒体|协调力,决策力,掌控力,舆论引导力,研判力", "四功五力标签");
  34. AddSettingIfNotExists("评估报告标签能力值", IwbSettingNames.ReportTagLevel, @"30,70", "四功五力标签能力值。0-100内数字从小到大用,分隔。");
  35. AddSettingIfNotExists("培训营检查关联角色(全局控制)", IwbSettingNames.EvalCheckRole, @"N", "是:Y;否:N");
  36. AddSettingIfNotExists("评估报告名称", IwbSettingNames.ReportName, @"智慧推演平台演练评估报告", "评估报告名称");
  37. AddSettingIfNotExists("评估报告公司名称", IwbSettingNames.ReportCompany, @"上海电力公司", "评估报告公司名称");
  38. }
  39. private void AddSettingIfNotExists(string displayName, string name, string value, string desc = null, int? type = SystemSettingTypeDefinition.Tenant, int? tenantId = null)
  40. {
  41. // ReSharper disable once ConditionIsAlwaysTrueOrFalse
  42. if (tenantId == null && !IwbConsts.MultiTenancyEnabled)
  43. {
  44. tenantId = 1;
  45. }
  46. if (_context.Settings.Any(s => s.Name == name && s.TenantId == tenantId && s.UserId == null))
  47. {
  48. return;
  49. }
  50. var setting = new SysSetting(tenantId, null, name, value, displayName, type)
  51. {
  52. Description = desc ?? displayName
  53. };
  54. _context.Settings.Add(setting);
  55. _context.SaveChanges();
  56. }
  57. }
  58. }