Пример #1
0
        /// <summary>
        /// Prepare paged setting list model
        /// </summary>
        /// <param name="searchModel">Setting search model</param>
        /// <returns>Setting list model</returns>
        public virtual SettingListModel PrepareSettingListModel(SettingSearchModel searchModel)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            //get settings
            var settings = _settingService.GetAllSettings().AsQueryable();

            //filter settings
            if (!string.IsNullOrEmpty(searchModel.SearchSettingName))
            {
                settings = settings.Where(setting => setting.Name.ToLowerInvariant().Contains(searchModel.SearchSettingName.ToLowerInvariant()));
            }
            if (!string.IsNullOrEmpty(searchModel.SearchSettingValue))
            {
                settings = settings.Where(setting => setting.Value.ToLowerInvariant().Contains(searchModel.SearchSettingValue.ToLowerInvariant()));
            }

            var pagedSettings = settings.ToList().ToPagedList(searchModel);

            //prepare list model
            var model = new SettingListModel().PrepareToGrid(searchModel, pagedSettings, () =>
            {
                return(pagedSettings.Select(setting =>
                {
                    //fill in model values from the entity
                    var settingModel = setting.ToModel <SettingModel>();

                    return settingModel;
                }));
            });

            return(model);
        }
Пример #2
0
        public async Task <IActionResult> Setting()
        {
            SettingListModel model = new SettingListModel();

            var result = await _crudService.GetAll <SettingViewModel>(Token, SettingService.SettingEntity);

            if (result.Success)
            {
                model.Settings = result.Values.Select(s =>
                                                      new SettingViewModel
                {
                    Id           = s.Id,
                    SettingName  = s.SettingName,
                    SettingScope = s.SettingScope,
                    Value        = s.Value
                }).OrderBy(s => s.SettingScope).ThenBy(s => s.SettingName).ToList();
            }
            else
            {
                AddMessageToModel(model, result.Message);
            }

            return(View("Setting/Index", model));
        }