Exemplo n.º 1
0
        public async Task <OkObjectResult> Get(string nome, string login, int page, int pageCount)
        {
            var resultado             = new RetornoListaDto <PrestadorDto>();
            PrestadorFiltroDto filtro = new PrestadorFiltroDto();

            filtro.Nome          = nome;
            filtro.PaginaAtual   = page;
            filtro.TamanhoPagina = pageCount;

            PesquisaTo pesquisa = filtro.ObterPesquisa();

            IList <Prestador> prestadores = await _prestadorService.Pesquisa(filtro.ToTransferObject(), pesquisa);

            resultado.Objeto = prestadores.Select(c => new PrestadorDto(c)).ToList();

            if (pesquisa != null)
            {
                resultado.TotalRegistros = pesquisa.TotalRegistros;
                resultado.PaginaAtual    = pesquisa.PaginaAtual;
                resultado.Ordenacao      = pesquisa.Ordenacao;
                resultado.TamanhoPagina  = pesquisa.TamanhoPagina;
            }
            else
            {
                resultado.TotalRegistros = resultado.Objeto.Count;
            }

            resultado.Status = ResultadoOperacao.Sucesso;

            return(Ok(resultado));
        }
        internal static PrestadorFiltroTo ToTransferObject(this PrestadorFiltroDto dto)
        {
            return new PrestadorFiltroTo
            {
                Nome = dto.Nome,
                //Login = dto.Login,
                //Email = dto.Email,

                IncluirObsoletos = dto.IncluirObsoletos,
                PaginaAtual = dto.PaginaAtual,
                TamanhoPagina = dto.TamanhoPagina,
                TotalRegistros = dto.TotalRegistros,
                Ordenacao = dto.Ordenacao,
                SentidoOrdenacao = dto.SentidoOrdenacao
            };
        }