Ejemplo n.º 1
0
        /// <summary>
        /// Prepare paged shipping provider list model
        /// </summary>
        /// <param name="searchModel">Shipping provider search model</param>
        /// <returns>Shipping provider list model</returns>
        public virtual ShippingProviderListModel PrepareShippingProviderListModel(ShippingProviderSearchModel searchModel)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            //get shipping providers
            var shippingProviders = _shippingService.LoadAllShippingRateComputationMethods();

            //prepare grid model
            var model = new ShippingProviderListModel
            {
                Data = shippingProviders.PaginationByRequestModel(searchModel).Select(provider =>
                {
                    //fill in model values from the entity
                    var shippingProviderModel = provider.ToModel();

                    //fill in additional values (not existing in the entity)
                    shippingProviderModel.IsActive         = provider.IsShippingRateComputationMethodActive(_shippingSettings);
                    shippingProviderModel.ConfigurationUrl = provider.GetConfigurationPageUrl();
                    shippingProviderModel.LogoUrl          = provider.PluginDescriptor.GetLogoUrl(_webHelper);

                    return(shippingProviderModel);
                }),
                Total = shippingProviders.Count
            };

            return(model);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Prepare paged shipping provider list model
        /// </summary>
        /// <param name="searchModel">Shipping provider search model</param>
        /// <returns>Shipping provider list model</returns>
        public virtual ShippingProviderListModel PrepareShippingProviderListModel(ShippingProviderSearchModel searchModel)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            //get shipping providers
            var shippingProviders = _shippingPluginManager.LoadAllPlugins().ToPagedList(searchModel);

            //prepare grid model
            var model = new ShippingProviderListModel().PrepareToGrid(searchModel, shippingProviders, () =>
            {
                return(shippingProviders.Select(provider =>
                {
                    //fill in model values from the entity
                    var shippingProviderModel = provider.ToPluginModel <ShippingProviderModel>();

                    //fill in additional values (not existing in the entity)
                    shippingProviderModel.IsActive = _shippingPluginManager.IsPluginActive(provider);
                    shippingProviderModel.ConfigurationUrl = provider.GetConfigurationPageUrl();
                    shippingProviderModel.LogoUrl = _shippingPluginManager.GetPluginLogoUrl(provider);

                    return shippingProviderModel;
                }));
            });

            return(model);
        }
Ejemplo n.º 3
0
        public virtual IActionResult Providers(ShippingProviderSearchModel searchModel)
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageShippingSettings))
            {
                return(AccessDeniedKendoGridJson());
            }

            //prepare model
            var model = _shippingModelFactory.PrepareShippingProviderListModel(searchModel);

            return(Json(model));
        }
Ejemplo n.º 4
0
        public virtual async Task <IActionResult> Providers(ShippingProviderSearchModel searchModel)
        {
            if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageShippingSettings))
            {
                return(await AccessDeniedDataTablesJson());
            }

            //prepare model
            var model = await _shippingModelFactory.PrepareShippingProviderListModelAsync(searchModel);

            return(Json(model));
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Prepare shipping provider search model
        /// </summary>
        /// <param name="searchModel">Shipping provider search model</param>
        /// <returns>Shipping provider search model</returns>
        public virtual ShippingProviderSearchModel PrepareShippingProviderSearchModel(ShippingProviderSearchModel searchModel)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            //prepare page parameters
            searchModel.SetGridPageSize();

            return(searchModel);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Prepare shipping provider search model
        /// </summary>
        /// <param name="searchModel">Shipping provider search model</param>
        /// <returns>
        /// A task that represents the asynchronous operation
        /// The task result contains the shipping provider search model
        /// </returns>
        public virtual Task <ShippingProviderSearchModel> PrepareShippingProviderSearchModelAsync(ShippingProviderSearchModel searchModel)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            //prepare page parameters
            searchModel.SetGridPageSize();

            return(Task.FromResult(searchModel));
        }