コード例 #1
0
        public PagedList <Cliente> GetClientes(ClientesFilter clientesFilter)
        {
            var collectionBeforePaging = _context.Clientes.OrderBy(x => x.Id).AsQueryable();

            if (clientesFilter.Vip.HasValue)
            {
                collectionBeforePaging = collectionBeforePaging
                                         .Where(a => a.EsVip == clientesFilter.Vip.Value);
            }

            if (!string.IsNullOrEmpty(clientesFilter.SearchQuery))
            {
                var searchQueryForWhereClause = clientesFilter.SearchQuery
                                                .Trim().ToLowerInvariant();

                collectionBeforePaging = collectionBeforePaging
                                         .Where(a => a.Nombre.ToLowerInvariant().Contains(searchQueryForWhereClause) ||
                                                a.Apellido.ToLowerInvariant().Contains(searchQueryForWhereClause));
            }

            return(PagedList <Cliente> .Create(
                       collectionBeforePaging,
                       clientesFilter.PageNumber,
                       clientesFilter.PageSize));
        }
コード例 #2
0
        public void ListarClientes()
        {
            ClientesFilter clientesFilter = _listagensView.GetFiltro();

            List <Cliente> clientes = _clientesService.Consultar(clientesFilter);

            _listagensView.MontarGrid(clientes);
        }
コード例 #3
0
 public List <Cliente> Consultar(ClientesFilter clientesFilter)
 {
     return(db.Cliente.Where(c =>
                             c.IdEmpresa == clientesFilter.IdEmpresa &&
                             c.Nome != string.Empty && c.Nome != null && c.Nome.Contains(clientesFilter.Nome) &&
                             c.Cpf != string.Empty && c.Cpf != null && c.Cpf.Contains(clientesFilter.Cpf)
                             ).ToList());
 }
コード例 #4
0
        public IActionResult GetClientes(ClientesFilter clientesFilter)
        {
            var clientesFromRepo = _clientesRepository.GetClientes(clientesFilter);

            var clientes = Mapper.Map <IEnumerable <ClienteResponse> >(clientesFromRepo);

            var paginationMetadata = new
            {
                totalCount  = clientesFromRepo.TotalCount,
                pageSize    = clientesFromRepo.PageSize,
                currentPage = clientesFromRepo.CurrentPage,
                totalPages  = clientesFromRepo.TotalPages,
            };

            Response.Headers.Add("X-Pagination",
                                 Newtonsoft.Json.JsonConvert.SerializeObject(paginationMetadata));

            return(Ok(clientes));
        }
コード例 #5
0
 public List <Cliente> Consultar(ClientesFilter clientesFilter)
 {
     return(_clientesRepository.Consultar(clientesFilter));
 }