Ejemplo n.º 1
0
        public async Task <PagedResponse <GetAllProductsViewModel> > Handle(GetAllProductsQuery request, CancellationToken cancellationToken)
        {
            request.PageNumber = request.PageNumber == 0 ? 1 : request.PageNumber;
            request.PageSize   = request.PageSize == 0 ? 10 : request.PageSize;
            var products = await _productRepository.GetAllWithCategoriesAsync(request.PageNumber, request.PageSize);

            var count = await _productRepository.Entities.LongCountAsync();

            var productViewModel = _mapper.Map <IEnumerable <GetAllProductsViewModel> >(products.Items);

            return(new PagedResponse <GetAllProductsViewModel>(productViewModel.ToList(), count, request.PageNumber, request.PageSize));
        }
        public async Task <Response <IEnumerable <GetAllProductsViewModel> > > Handle(GetAllProductsQuery request, CancellationToken cancellationToken)
        {
            var validFilter = _mapper.Map <GetAllProductsParameter>(request);
            var product     = new List <Product>();

            if (request.ReturnImages)
            {
                var productWithImages = await _productRepository.GetAllWithCategoriesAsync();

                product = productWithImages.ToList();
            }
            else
            {
                var productWithoutImages = await _productRepository.GetAllWithCategoriesWithoutImagesAsync();

                product = productWithoutImages.ToList();
            }
            var productViewModel = _mapper.Map <IEnumerable <GetAllProductsViewModel> >(product);

            return(new Response <IEnumerable <GetAllProductsViewModel> >(productViewModel));
        }