IwbSettingProvider.cs 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. using System.Collections.Generic;
  2. using Abp.Configuration;
  3. using Abp.Dependency;
  4. using Abp.Localization;
  5. namespace WeApp.Configuration
  6. {
  7. public class IwbSettingProvider : SettingProvider
  8. {
  9. protected readonly IIocManager IocManager;
  10. public IwbSettingProvider(IIocManager iocManager)
  11. {
  12. IocManager = iocManager;
  13. }
  14. public override IEnumerable<SettingDefinition> GetSettingDefinitions(SettingDefinitionProviderContext context)
  15. {
  16. var list = new List<SettingDefinition>()
  17. {
  18. new SettingDefinition(LocalizationSettingNames.DefaultLanguage, "zh-Hans", scopes: SettingScopes.Application | SettingScopes.Tenant | SettingScopes.User, isVisibleToClients: true),
  19. new SettingDefinition(IwbSettingNames.UiTheme, "red", scopes: SettingScopes.Application | SettingScopes.Tenant | SettingScopes.User, isVisibleToClients: true),
  20. new SettingDefinition(IwbSettingNames.LoginPagePath, IwbConsts.LoginHomeImagePath, scopes: SettingScopes.Application | SettingScopes.Tenant | SettingScopes.User, isVisibleToClients: true),
  21. new SettingDefinition(IwbSettingNames.HomePagePath, IwbConsts.LoginHomeImagePath, scopes: SettingScopes.Application | SettingScopes.Tenant | SettingScopes.User, isVisibleToClients: true),
  22. };
  23. var t = typeof(IwbSettingNames);
  24. var fts = t.GetFields();
  25. foreach (var f in fts)
  26. {
  27. string name = f.GetRawConstantValue().ToString();
  28. var setting = new SettingDefinition(name, null,
  29. scopes: SettingScopes.Application | SettingScopes.Tenant | SettingScopes.User,
  30. isVisibleToClients: true);
  31. if (!list.Contains(setting))
  32. {
  33. list.Add(setting);
  34. }
  35. }
  36. //using (var settingRepository = IocManager.ResolveAsDisposable<IRepository<SysSetting, long>>())
  37. //{
  38. // var settings = settingRepository.Object.GetAllList(a => a.Type == 1);
  39. // foreach (var s in settings)
  40. // {
  41. // var setting = new SettingDefinition(s.Name, null,
  42. // scopes: SettingScopes.Application | SettingScopes.Tenant | SettingScopes.User,
  43. // isVisibleToClients: true);
  44. // if (!list.Contains(setting))
  45. // {
  46. // list.Add(setting);
  47. // }
  48. // }
  49. //}
  50. return list;
  51. }
  52. }
  53. }