示例#1
0
        /// <summary>
        /// Landing Page
        /// </summary>
        /// <returns></returns>
        public ActionResult Index(string sortBy, string sortDirection, string pageNumber, string pageSize)
        {
            TableColumnIdentifier sortByidentifier = null;
            var sortDirectionAsc      = true;
            var allProductViewColumns = _productColumnRepository.GetAllViewColumns();

            if (!string.IsNullOrEmpty(sortBy))
            {
                sortByidentifier = allProductViewColumns
                                   .First(
                    col => col.GetColumnDefinition().Identifier.AdditionalData == sortBy)
                                   .GetColumnDefinition().Identifier;
            }

            if (sortDirection != null)
            {
                sortDirectionAsc = String.CompareOrdinal(sortDirection, "Desc") != 0;
            }

            pageNumber = pageNumber ?? "1";
            pageSize   = pageSize ?? "5";

            var tableInput = new TableInput
            {
                PageNumber       = int.Parse(pageNumber),
                PageSize         = int.Parse(pageSize),
                SortDirectionAsc = sortDirectionAsc,
                SortBy           = sortByidentifier
            };

            var tableOutput   = _productService.GetProducts(tableInput);
            var productOutput = new ProductOutput()
            {
                Input = tableInput, Output = tableOutput, AllColumns = allProductViewColumns
            };

            return(View(productOutput));
        }
示例#2
0
 public ITableBuilder <T> SortBy(TableColumnIdentifier sortBy)
 {
     SortByValue = sortBy;
     return(this);
 }