コード例 #1
0
        /// <summary>
        /// Prepare paged category list model
        /// </summary>
        /// <param name="searchModel">Category search model</param>
        /// <returns>Category list model</returns>
        public virtual LibraryCategoryListModel PrepareCategoryListModel(LibraryCategorySearchModel searchModel)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            //get categories
            var categories = _categoryService.GetAllCategories(categoryName: searchModel.SearchCategoryName,
                                                               showHidden: true,
                                                               storeId: searchModel.SearchStoreId,
                                                               pageIndex: searchModel.Page - 1, pageSize: searchModel.PageSize);

            //prepare grid model
            var model = new LibraryCategoryListModel
            {
                Data = categories.Select(category =>
                {
                    //fill in model values from the entity
                    var categoryModel = category.ToModel <LibraryCategoryModel>();

                    //fill in additional values (not existing in the entity)
                    categoryModel.Breadcrumb = _categoryService.GetFormattedBreadCrumb(category);
                    categoryModel.SeName     = _urlRecordService.GetSeName(category, 0, true, false);

                    return(categoryModel);
                }),
                Total = categories.TotalCount
            };

            return(model);
        }
コード例 #2
0
        public virtual IActionResult List(LibraryCategorySearchModel searchModel)
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageCategories))
            {
                return(AccessDeniedKendoGridJson());
            }

            //prepare model
            var model = _categoryModelFactory.PrepareCategoryListModel(searchModel);

            return(Json(model));
        }
コード例 #3
0
        public virtual LibraryCategorySearchModel PrepareCategorySearchModel(LibraryCategorySearchModel searchModel)
        {
            if (searchModel == null)
            {
                throw new ArgumentNullException(nameof(searchModel));
            }

            //prepare available stores
            _baseAdminModelFactory.PrepareStores(searchModel.AvailableStores);

            searchModel.HideStoresList = _catalogSettings.IgnoreStoreLimitations;

            //prepare page parameters
            searchModel.SetGridPageSize();

            return(searchModel);
        }