public async Task <SearchResult <SettingViewModel> > GetWebsiteSettingsAsync(string tenantId, string languageId) { var websiteSettingGroupId = "GHM.Website.Domain.Models.WebsiteSetting.WebsiteSetting"; var settings = await GetsByGroupId(tenantId, languageId, websiteSettingGroupId); var properties = ClassHelper.GetPropertiesName <WebsiteSetting>(); if (properties == null || !properties.Any()) { return(new SearchResult <SettingViewModel>(-1, _resourceService.GetString(ErrorMessage.SomethingWentWrong))); } if (settings != null && settings.Any()) { var listNewProperties = properties .Select(ClassHelper.GetPropertyNameAsKey <WebsiteSetting>) .ToList() .Except(settings.Select(x => x.Key)) .ToList(); if (listNewProperties.Any()) { var newProperties = properties.Where(x => listNewProperties .Contains(ClassHelper.GetPropertyNameAsKey <WebsiteSetting>(x))).ToList(); settings.AddRange(newProperties.Select(x => new SettingViewModel { Value = string.Empty, GroupId = websiteSettingGroupId, LanguageId = languageId, Key = ClassHelper.GetPropertyNameAsKey <WebsiteSetting>(x), DisplayName = ClassHelper.GetDisplayName <WebsiteSetting>(x) })); } return(new SearchResult <SettingViewModel>(settings)); } settings = properties.Select(x => new SettingViewModel { Value = string.Empty, GroupId = websiteSettingGroupId, LanguageId = languageId, Key = ClassHelper.GetPropertyNameAsKey <WebsiteSetting>(x), DisplayName = ClassHelper.GetDisplayName <WebsiteSetting>(x) }).ToList(); return(new SearchResult <SettingViewModel>(settings)); }
public async Task <SearchResult <WarehouseConfigViewModel> > GetWarehouseConfigs(string tenantId, string languageId, string warehouseId) { var warehouseConfigs = await _warehouseConfigRepository.GetAll(tenantId, languageId, warehouseId); var properties = ClassHelper.GetPropertiesName <WarehouseConfigSetting>(); if (properties == null || !properties.Any()) { return(new SearchResult <WarehouseConfigViewModel>(-1, _warehouseResourceService.GetString(ErrorMessage.SomethingWentWrong))); } if (warehouseConfigs != null && warehouseConfigs.Any()) { var listNewProperties = properties .Select(ClassHelper.GetPropertyNameAsKey <WarehouseConfigSetting>) .ToList() .Except(warehouseConfigs.Select(x => x.Key)) .ToList(); if (listNewProperties.Any()) { var newProperties = properties.Where(x => listNewProperties .Contains(ClassHelper.GetPropertyNameAsKey <WarehouseConfigSetting>(x))).ToList(); warehouseConfigs.AddRange(newProperties.Select(x => new WarehouseConfigViewModel { TenantId = tenantId, Value = string.Empty, LanguageId = languageId, Key = ClassHelper.GetPropertyNameAsKey <WarehouseConfigSetting>(x), DisplayName = ClassHelper.GetDisplayName <WarehouseConfigSetting>(x) })); } return(new SearchResult <WarehouseConfigViewModel>(warehouseConfigs)); } warehouseConfigs = properties.Select(x => new WarehouseConfigViewModel { TenantId = tenantId, Value = string.Empty, LanguageId = languageId, Key = ClassHelper.GetPropertyNameAsKey <WarehouseConfigSetting>(x), DisplayName = ClassHelper.GetDisplayName <WarehouseConfigSetting>(x) }).ToList(); return(new SearchResult <WarehouseConfigViewModel>(warehouseConfigs)); }