public virtual IActionResult PickupPointProviders(PickupPointProviderSearchModel searchModel) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageShippingSettings)) { return(AccessDeniedKendoGridJson()); } //prepare model var model = _shippingModelFactory.PreparePickupPointProviderListModel(searchModel); return(Json(model)); }
public virtual async Task <IActionResult> PickupPointProviders(PickupPointProviderSearchModel searchModel) { if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageShippingSettings)) { return(await AccessDeniedDataTablesJson()); } //prepare model var model = await _shippingModelFactory.PreparePickupPointProviderListModelAsync(searchModel); return(Json(model)); }
/// <summary> /// Prepare paged pickup point provider list model /// </summary> /// <param name="searchModel">Pickup point provider search model</param> /// <returns>Pickup point provider list model</returns> public virtual PickupPointProviderListModel PreparePickupPointProviderListModel(PickupPointProviderSearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //get pickup point providers var pickupPointProviders = _shippingService.LoadAllPickupPointProviders(); //prepare grid model var model = new PickupPointProviderListModel { Data = pickupPointProviders.PaginationByRequestModel(searchModel).Select(provider => { //fill in model values from the entity var pickupPointProviderModel = provider.ToModel(); //fill in additional values (not existing in the entity) pickupPointProviderModel.IsActive = provider.IsPickupPointProviderActive(_shippingSettings); pickupPointProviderModel.ConfigurationUrl = provider.GetConfigurationPageUrl(); pickupPointProviderModel.LogoUrl = provider.PluginDescriptor.GetLogoUrl(_webHelper); return(pickupPointProviderModel); }), Total = pickupPointProviders.Count }; return(model); }
/// <summary> /// Prepare pickup point provider search model /// </summary> /// <param name="searchModel">Pickup point provider search model</param> /// <returns>Pickup point provider search model</returns> public virtual PickupPointProviderSearchModel PreparePickupPointProviderSearchModel(PickupPointProviderSearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //prepare page parameters searchModel.SetGridPageSize(); return(searchModel); }
/// <summary> /// Prepare paged pickup point provider list model /// </summary> /// <param name="searchModel">Pickup point provider search model</param> /// <returns> /// A task that represents the asynchronous operation /// The task result contains the pickup point provider list model /// </returns> public virtual async Task <PickupPointProviderListModel> PreparePickupPointProviderListModelAsync(PickupPointProviderSearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //get pickup point providers var pickupPointProviders = (await _pickupPluginManager.LoadAllPluginsAsync()).ToPagedList(searchModel); //prepare grid model var model = await new PickupPointProviderListModel().PrepareToGridAsync(searchModel, pickupPointProviders, () => { return(pickupPointProviders.SelectAwait(async provider => { //fill in model values from the entity var pickupPointProviderModel = provider.ToPluginModel <PickupPointProviderModel>(); //fill in additional values (not existing in the entity) pickupPointProviderModel.IsActive = _pickupPluginManager.IsPluginActive(provider); pickupPointProviderModel.ConfigurationUrl = provider.GetConfigurationPageUrl(); pickupPointProviderModel.LogoUrl = await _pickupPluginManager.GetPluginLogoUrlAsync(provider); return pickupPointProviderModel; })); }); return(model); }
/// <summary> /// Prepare pickup point provider search model /// </summary> /// <param name="searchModel">Pickup point provider search model</param> /// <returns> /// A task that represents the asynchronous operation /// The task result contains the pickup point provider search model /// </returns> public virtual Task <PickupPointProviderSearchModel> PreparePickupPointProviderSearchModelAsync(PickupPointProviderSearchModel searchModel) { if (searchModel == null) { throw new ArgumentNullException(nameof(searchModel)); } //prepare page parameters searchModel.SetGridPageSize(); return(Task.FromResult(searchModel)); }