Esempio n. 1
0
        public async Task <IActionResult> GetAllPersonsAsync([FromQuery] PagedParameters pagedParameters)
        {
            var model = await _personService.GetAllPersonsAsync(pagedParameters);

            //var result = _mapper.Map<CatalogsEntity>(catalogs);
            return(Ok(model));
        }
Esempio n. 2
0
        public async Task <IEnumerable <PersonsModel> > GetAllPersonsAsync(PagedParameters pagedParameters)
        {
            var personsModel      = _context.Persons;
            var personsCollection = _context.Persons as IQueryable <Data.Entities.Persons>;

            var querySearch = pagedParameters.SearchQuery.Trim().ToLower();
            var sortOrder   = pagedParameters.SortOrder.Trim().ToLower();

            //var CurrentSort = sortOrder;
            //CurrentSort = String.IsNullOrEmpty(sortOrder) ? "name_desc" : "";
            //CurrentSort = sortOrder == "surName" ? "surName_desc" : "surName";

            if (!string.IsNullOrWhiteSpace(querySearch))
            {
                personsCollection = _context.Persons.
                                    Where(m => m.Name.Contains(querySearch) ||
                                          m.NameEng.Contains(querySearch) ||
                                          m.Surname.Contains(querySearch) ||
                                          m.SurnameEng.Contains(querySearch) ||
                                          m.PrivateNumber.Contains(querySearch) ||
                                          m.Email.Contains(querySearch) ||
                                          m.PhoneNumber.Contains(querySearch) ||
                                          m.Address.Street.Contains(querySearch) ||
                                          m.Address.City.Contains(querySearch) ||
                                          m.Address.Country.Contains(querySearch));
            }
            switch (sortOrder)
            {
            case "name_desc":
                personsCollection = personsCollection.OrderByDescending(s => s.Name);
                break;

            case "surname":
                personsCollection = personsCollection.OrderBy(s => s.Surname);
                break;

            case "surname_desc":
                personsCollection = personsCollection.OrderByDescending(s => s.Surname);
                break;

            case "name":
                personsCollection = personsCollection.OrderBy(s => s.Name);
                break;

            default:
                personsCollection = personsCollection.OrderBy(s => s.PersonId);
                break;
            }

            personsCollection = personsCollection
                                .Skip(pagedParameters.PageSize * (pagedParameters.PageNumber - 1))
                                .Take(pagedParameters.PageSize);

            var personsList = await personsCollection.ToListAsync();

            var result = Mapping.Mapper.Map <IEnumerable <PersonsModel> >(personsList);

            return(result);
        }
        public async Task <ActionResult <List <ProductCategory> > > GetCategories([FromQuery] PagedParameters pagedParameters)
        {
            var products = await _repo.GetCategoryAsync(pagedParameters);

            if (products.Count() == 0)
            {
                return(NotFound());
            }
            return(Ok(products));
        }
Esempio n. 4
0
        public async Task <ActionResult <IReadOnlyList <Product> > > GetProducts([FromQuery] PagedParameters pagedParameters)
        {
            var products = await _repo.GetProductsAsync(pagedParameters);

            if (products.Count() == 0)
            {
                return(NotFound());
            }


            return(Ok(_mapper.Map <IReadOnlyList <Product>, IReadOnlyList <ProductDto> >(products)));
        }
Esempio n. 5
0
 public async Task <IReadOnlyList <ProductCategory> > GetCategoryAsync(PagedParameters pagedParameters)
 {
     return(await _context.ProductCategories.Skip((pagedParameters.PageNumber - 1) *pagedParameters.PageSize)
            .Take(pagedParameters.PageSize).ToListAsync());
 }
 public async Task <IReadOnlyList <Product> > GetProductsAsync(PagedParameters pagedParameters)
 {
     return(await _context.Products.Skip((pagedParameters.PageNumber - 1) *pagedParameters.PageSize)
            .Take(pagedParameters.PageSize).Include(p => p.ProdCat).ToListAsync());
 }