Exemplo n.º 1
0
        //SearchOrdersRequestModelSingle
        //        public ActionResult SearchOrders(SearchOrdersRequestModel obj)
        public ActionResult SearchOrders(SearchOrdersRequestModelSingle obj)
        {
            try
            {
                //var predicate = PredicateBuilder.BuildPredicateForOrdersSearching(obj);

                //if (obj.ListRestaurants == null)
                //{
                //    obj.ListRestaurants = new List<long?>();
                //}
                //if (obj.ListRiders == null)
                //{
                //    obj.ListRiders = new List<string>();
                //}
                //if (obj.ListStatuses == null)
                //{
                //    obj.ListStatuses = new List<string>();
                //}
                var orders = OrderService.GetFilteredOrdersSingle_Admin(obj);
                return(View("~/Views/AdOrders/_OrdersTable.cshtml", orders.ToList()));
            }
            catch (Exception e)
            {
                //log ex here
                //throw;
                return(null);
            }
        }
Exemplo n.º 2
0
        public static List <OrderLocal> GetFilteredOrdersSingle_Admin(SearchOrdersRequestModelSingle source)
        {
            using (var dbContext = new DeliversEntities())
            {
                try
                {
                    //var results = dbContext.Orders.Where(x => (source.ListStatuses.Count == 0 || (source.ListStatuses.Any(s => s == x.Status))) &&
                    //(source.ListRiders.Count == 0 || (source.ListRiders.Any(s => x.PickedBy.Equals(s)))) &&
                    //(source.ListRestaurants.Count == 0 || (source.ListRestaurants.Any(s => x.OrderDetails.FirstOrDefault().ItemDetail.Id == s)))
                    //).ToList().OrderByDescending(o => o.Id).Select(o => o.MappOrder()).ToList();

                    //temp code,remove asap.
                    //var abc = dbContext.Orders.ToList();
                    var results = dbContext.Orders.Where(x => (string.IsNullOrEmpty(source.Status) || x.Status == source.Status) &&
                                                         (string.IsNullOrEmpty(source.Rider) || (source.Rider == x.PickedBy)) &&
                                                         (source.Restaurant == null || (source.Restaurant == x.OrderDetails.FirstOrDefault().RestId))

                                                         );

                    if (source.OrderDateFrom != null && source.OrderDateTo != null)
                    {
                        results = results.Where(x => Nullable.Compare((DbFunctions.TruncateTime(x.DateTime)), source.OrderDateFrom) > -1 && Nullable.Compare((DbFunctions.TruncateTime(x.DateTime)), source.OrderDateTo) < 1);
                    }

                    else if (source.OrderDateTo != null)
                    {
                        results = results.Where(x => Nullable.Compare((DbFunctions.TruncateTime(x.DateTime)), source.OrderDateTo) < 1);
                    }
                    else if (source.OrderDateFrom != null)
                    {
                        results = results.Where(x => Nullable.Compare((DbFunctions.TruncateTime(x.DateTime)), source.OrderDateFrom) > -1);
                    }
                    var _filtered = results.ToList().OrderByDescending(o => o.Id).Select(o => o.MappOrder()).ToList();

                    return(_filtered);
                }
                catch (Exception e)
                {
                    return(null);
                    //throw;
                }

                //var orders = dbContext.Orders.ToList().OrderByDescending(o => o.Id).Select(o => o.MappOrder()).ToList();
            }
        }