コード例 #1
0
        public virtual ActionResult GetAll([DataSourceRequest] DataSourceRequest request,
                                           DateTime?dateFrom,
                                           DateTime?dateTo,
                                           string buyerName,
                                           string orderNumber,
                                           string status)
        {
            LogI("GetAll");

            var filter = new NotDeliveredFilterViewModel()
            {
                DateFrom    = dateFrom,
                DateTo      = dateTo,
                BuyerName   = buyerName,
                OrderNumber = orderNumber,
                Status      = status
            };

            request.Sorts = new List <SortDescriptor>()
            {
                new SortDescriptor("OrderDate", ListSortDirection.Descending)
            };
            var items      = NotDeliveredOrderViewModel.GetAll(Db, filter);
            var dataSource = items.ToDataSourceResult(request);

            return(new JsonResult {
                Data = dataSource, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
コード例 #2
0
        public static IEnumerable <NotDeliveredOrderViewModel> GetAll(IUnitOfWork db,
                                                                      NotDeliveredFilterViewModel filter)
        {
            var orders = db.Orders.GetNotDeliveredList()
                         .Select(o => new NotDeliveredOrderViewModel
            {
                Id               = o.Id,
                ShippingInfoId   = o.ShippingInfoId,
                ShippingInfoType = o.ShippingInfoType,

                OrderNumber   = o.OrderId,
                Market        = o.Market,
                MarketplaceId = o.MarketplaceId,

                AmazonEmail     = o.AmazonEmail,
                BuyerEmail      = o.BuyerEmail,
                OrderDate       = o.OrderDate,
                ShippingService = o.ShippingService,
                BuyerName       = o.PersonName,
                ShippingDate    = o.ShipDate,
                ShippingCountry = o.ShippingCountry,

                Timezone            = o.Timezone,
                PackageDeliveryDate = o.ActualDeliveryDate,
                Carrier             = o.Carrier,
                TrackingNumber      = o.TrackingNumber,
                TrackingStateEvent  = o.TrackingStateEvent,
                TrackingStateDate   = o.TrackingStateDate,

                IsDismiss        = o.NotDeliveredDismiss,
                IsSubmittedClaim = o.NotDeliveredSubmittedClaim,
                IsHighlight      = o.NotDeliveredHighlight,
            });

            if (filter.DateFrom.HasValue)
            {
                orders = orders.Where(o => o.OrderDate >= filter.DateFrom.Value);
            }

            if (filter.DateTo.HasValue)
            {
                orders = orders.Where(o => o.OrderDate <= filter.DateTo.Value);
            }

            if (!String.IsNullOrEmpty(filter.BuyerName))
            {
                orders = orders.Where(o => o.BuyerName.Contains(filter.BuyerName));
            }

            if (!String.IsNullOrEmpty(filter.OrderNumber))
            {
                orders = orders.Where(o => o.OrderNumber == filter.OrderNumber);
            }

            if (filter.Status == NotDeliveredFilterViewModel.AllWithoutDismissedStatus)
            {
                orders = orders.Where(o => !o.IsDismiss);
            }

            if (filter.Status == NotDeliveredFilterViewModel.DismissStatus)
            {
                orders = orders.Where(o => o.IsDismiss);
            }

            if (filter.Status == NotDeliveredFilterViewModel.SubmittedClaimStatus)
            {
                orders = orders.Where(o => o.IsSubmittedClaim);
            }

            if (filter.Status == NotDeliveredFilterViewModel.HighlightStatus)
            {
                orders = orders.Where(o => o.IsHighlight);
            }

            return(orders.OrderByDescending(o => o.OrderDate));
        }