public async Task <IActionResult> GetPaged([FromQuery] GetOrderStatusListRequest request)
        {
            var filter = PredicateBuilder.True <OrderStatus>();


            var response = await _entityRepository.GetPagedAsync <GetOrderStatusBase>(

                request.PageNumber,
                request.PageSize,
                request.OrderByPropertyName,
                request.SortingDirection,
                filter
                );

            var result = _mapper.Map <GetOrderStatusListResponse>(response);

            return(Ok(result));
        }
        public async Task <IActionResult> GetPaged([FromQuery] GetCategoryListRequest request)
        {
            var filter = PredicateBuilder.True <Category>();

            if (!string.IsNullOrEmpty(request.SearchKey))
            {
                filter = filter.And(x => x.Name.ToLower().Contains(request.SearchKey.ToLower()));
            }
            var response = await _entityRepository.GetPagedAsync <GetCategoryBase>(

                request.PageNumber,
                request.PageSize,
                request.OrderByPropertyName,
                request.SortingDirection,
                filter,
                x => x.Products
                );

            var result = _mapper.Map <GetCategoryListResponse>(response);

            return(Ok(result));
        }
Exemple #3
0
        public async Task <IActionResult> GetPaged([FromQuery] GetProductListRequest request)
        {
            var filter = PredicateBuilder.True <Product>();

            if (!string.IsNullOrEmpty(request.SearchKey))
            {
                filter = filter.And(x => x.Name == request.SearchKey);
            }

            if (!string.IsNullOrEmpty(request.CategoryId))
            {
                filter = filter.And(x => x.CategoryId == request.CategoryId);
            }

            if (request.MinPrice > 0)
            {
                filter = filter.And(x => x.Price >= request.MinPrice);
            }

            if (request.MaxPrice > 0)
            {
                filter = filter.And(x => x.Price <= request.MaxPrice);
            }

            var response = await _entityRepository.GetPagedAsync <GetProductBase>(

                request.PageNumber,
                request.PageSize,
                request.OrderByPropertyName,
                request.SortingDirection,
                filter,
                x => x.Category
                );

            var result = _mapper.Map <GetProductListResponse>(response);

            return(Ok(result));
        }