/// <summary> /// Prepare paged currency list model /// </summary> /// <param name="searchModel">Currency search model</param> /// <returns>Currency list model</returns> public virtual CurrencyListModel PrepareCurrencyListModel(CurrencySearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //get currencies var currencies = _currencyService.GetAllCurrencies(showHidden: true, loadCacheableCopy: false).ToPagedList(searchModel); //prepare list model var model = new CurrencyListModel().PrepareToGrid(searchModel, currencies, () => { return(currencies.Select(currency => { //fill in model values from the entity var currencyModel = currency.ToModel <CurrencyModel>(); //fill in additional values (not existing in the entity) currencyModel.IsPrimaryExchangeRateCurrency = currency.Id == _currencySettings.PrimaryExchangeRateCurrencyId; currencyModel.IsPrimaryStoreCurrency = currency.Id == _currencySettings.PrimaryStoreCurrencyId; return currencyModel; })); }); return(model); }
public IActionResult CurrenciesList(CurrencySearchModel searchModel) { var currencies = _currencyService.SearchCurrencies(out var totalResults, searchModel.SearchPhrase, searchModel.Current, searchModel.RowCount); var currenciesModel = currencies.Select(_currencyModelFactory.Create).ToList(); return(R.Success.With("currencies", currenciesModel) .WithGridResponse(totalResults, searchModel.Current, searchModel.RowCount) .Result); }
public virtual IActionResult ListGrid(CurrencySearchModel searchModel) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageCurrencies)) { return(AccessDeniedDataTablesJson()); } //prepare model var model = _currencyModelFactory.PrepareCurrencyListModel(searchModel); return(Json(model)); }
public virtual async Task <IActionResult> ListGrid(CurrencySearchModel searchModel) { if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageCurrencies)) { return(await AccessDeniedDataTablesJson()); } //prepare model var model = await _currencyModelFactory.PrepareCurrencyListModelAsync(searchModel); return(Json(model)); }
public virtual IActionResult List(CurrencySearchModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageCurrencies)) { return(AccessDeniedView()); } _currencySettings.ActiveExchangeRateProviderSystemName = model.ExchangeRateProviderModel.ExchangeRateProvider; _currencySettings.AutoUpdateEnabled = model.ExchangeRateProviderModel.AutoUpdateEnabled; _settingService.SaveSetting(_currencySettings); return(RedirectToAction("List", "Currency")); }
/// <summary> /// Prepare currency search model /// </summary> /// <param name="searchModel">Currency search model</param> /// <param name="prepareExchangeRates">Whether to prepare exchange rate models</param> /// <returns>Currency search model</returns> public virtual CurrencySearchModel PrepareCurrencySearchModel(CurrencySearchModel searchModel, bool prepareExchangeRates = false) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //prepare exchange rate provider model PrepareExchangeRateProviderModel(searchModel.ExchangeRateProviderModel, prepareExchangeRates); //prepare page parameters searchModel.SetGridPageSize(); return(searchModel); }
public virtual IActionResult List(bool liveRates = false) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageCurrencies)) { return(AccessDeniedView()); } var model = new CurrencySearchModel(); try { //prepare model model = _currencyModelFactory.PrepareCurrencySearchModel(new CurrencySearchModel(), liveRates); } catch (Exception e) { _notificationService.ErrorNotification(e); } return(View(model)); }