예제 #1
0
        public ActionResult Index(string orderStatus, DateTime?startDate, DateTime?endDate, int page = 1)
        {
            if (string.IsNullOrWhiteSpace(orderStatus))
            {
                orderStatus = "Complete";
            }
            var ordersByStatus = _orderQueryService.OrdersByStatus(orderStatus, startDate, endDate);
            var total          = ordersByStatus.Count();
            var orders         = ordersByStatus.Paged(page, DefaultPerPage, "UpdatedAt desc");

            var viewModel = new OrdersIndex
            {
                Count        = orders.Count(),
                Orders       = orders,
                StatusFilter = orderStatus,
                StartDate    = startDate,
                EndDate      = endDate,
                PagingInfo   = new PagingInfo
                {
                    CurrentPage = page,
                    PerPage     = DefaultPerPage,
                    TotalItems  = total
                }
            };

            viewModel.SetCounts(_orderQueryService.CountsByStatus());
            return(View(viewModel));
        }
예제 #2
0
        public static OrdersIndex ShouldHaveUnassignedOrders(this OrdersIndex index, params Transaction[] transactions)
        {
            index.UnassignedOrders.Count().Should().Be(transactions.Length);

            foreach (var transaction in transactions)
            {
                index.UnassignedOrders[transaction.Signature].Should().BeSameAs(transaction.Message.AsOrderRequested().Order);
            }

            return(index);
        }
예제 #3
0
        public static OrdersIndex ShouldHaveTransactions(this OrdersIndex index, params Transaction[] transactions)
        {
            index.AllOrders.Count().Should().Be(transactions.Length);

            foreach (var transaction in transactions)
            {
                index.AllOrders[transaction.Signature].Transaction.Should().BeSameAs(transaction);
            }

            return(index);
        }