Esempio n. 1
0
        public static IEnumerable <Order> OrdersTable_Search(IOrderRepository orderRepository,
                                                             DataTablesOrdersTableAjaxPost model,
                                                             out int filteredResultsCount,
                                                             out int totalResultsCount)
        {
            string      searchValue = model.Search?.Value;
            int         limit       = model.Length;
            int         skip        = model.Start;
            string      sortBy      = "";
            bool        isSortedAsc = true;
            OrderStatus?orderStatus = null;

            if (Enum.TryParse(model.StatusOfListedOrders, ignoreCase: true, out OrderStatus tempStatus) &&
                Enum.IsDefined(typeof(OrderStatus), model.StatusOfListedOrders))
            {
                orderStatus = tempStatus;
            }

            if (model.Order != null)
            {
                sortBy      = model.Columns[model.Order[0].Column].Data;
                isSortedAsc = model.Order[0].Dir.ToLower() == "asc";
            }

            var result = orderRepository.FindAll(searchValue, orderStatus, limit, skip, sortBy, isSortedAsc,
                                                 out filteredResultsCount, out totalResultsCount);

            if (result == null)
            {
                return(new List <Order>());
            }

            return(result);
        }
Esempio n. 2
0
        public IActionResult LoadTableData(DataTablesOrdersTableAjaxPost model)
        {
            var searchResult = DataTablesHelper.OrdersTable_Search(orderRepository, model,
                                                                   out int filteredResultsCount,
                                                                   out int totalResultsCount);

            return(Json(new
            {
                draw = model.Draw,
                recordsTotal = totalResultsCount,
                recordsFiltered = filteredResultsCount,
                data = searchResult
            }));
        }