private void SetFiltering(OrderFilteringData filteringData)
 {
     if (filteringData.PackStatus != 0)
     {
         sortFilterService.SetConcreteFilter(x => x.PackStatus == filteringData.PackStatus);
     }
 }
        public async Task <List <PackToDelivery> > SearchPacks(OrderFilteringData filteringData)
        {
            SetSorting();
            SetFiltering(filteringData);

            return(await sortFilterService.Search(true));
        }
示例#3
0
        public async Task <List <Order> > GetOrders(OrderFilteringData filteringData)
        {
            var getOrdersUrl = $"{baseUrl}";

            filteringData.UserId = userId;

            var queryParams = SetQueryParams(filteringData);

            var orders = await customHttpClient.GetStringAsync(getOrdersUrl, token, queryParams);

            return(JsonConvert.DeserializeObject <List <Order> >(orders));
        }
        public async Task <IActionResult> Index(OrderFilteringData filteringData)
        {
            var vm = new OrdersViewModel
            {
                FilteringData = filteringData ??= new OrderFilteringData(),
                PageSize      = 50,
                Orders        = await orderService.GetOrders(filteringData),
                CurrentPage   = filteringData.Page
            };

            return(View(vm));
        }
示例#5
0
 public GetPacksQueryHandlerTest()
 {
     searchPacksService = new Mock <ISearchPacksService>();
     mapper             = new Mock <IMapper>();
     filteringData      = new OrderFilteringData();
     query           = new GetPacksQuery(filteringData);
     queryHandler    = new GetPacksQueryHandler(searchPacksService.Object, mapper.Object);
     packsToDelivery = new List <PackToDelivery>()
     {
         new PackToDelivery(), new PackToDelivery()
     };
     packsDto = new List <GetPacksDto> {
         new GetPacksDto(), new GetPacksDto()
     };
 }
示例#6
0
        private Dictionary <string, string> SetQueryParams(OrderFilteringData filteringData)
        {
            var queryParams = new Dictionary <string, string>();

            if (filteringData.OrderStatus != 0)
            {
                queryParams.Add("OrderStatus", filteringData.OrderStatus.ToString());
            }

            if (filteringData.UserId != null && !filteringData.UserIsAdmin)
            {
                queryParams.Add("UserId", userId);
            }

            return(queryParams);
        }
示例#7
0
        public async Task Index_Success()
        {
            //Arrange
            var filteringData = new OrderFilteringData {
                Page = 1
            };
            var orders = new List <Models.Order> {
                new Models.Order(), new Models.Order()
            };

            orderService.Setup(x => x.GetOrders(filteringData)).Returns(Task.FromResult(orders));

            //Act
            var action = await orderController.Index(filteringData) as ViewResult;

            var model = action.Model as OrdersViewModel;

            //Assert
            Assert.NotNull(model.FilteringData);
            Assert.Equal(orders.Count, model.Orders.Count);
            Assert.Equal(pageSize, model.PageSize);
            Assert.Equal(filteringData.Page, model.CurrentPage);
        }
示例#8
0
 public async Task <IActionResult> GetPacks([FromQuery] OrderFilteringData filteringData)
 {
     return(Ok(await mediator.Send(new GetPacksQuery(filteringData))));
 }
示例#9
0
 public GetPacksQuery(OrderFilteringData filteringData)
 {
     FilteringData = filteringData;
 }