public object PesquisarUsuarios(PesquisarUsuariosQueryFilter filter) { if (string.IsNullOrEmpty(filter.Descritivo)) { // Pesquisar sem filtro retorna lista vazia return(new object()); } else { var query = _session.QueryOver <Usuario>() .Where(x => x.Ativo); var a = query.List(); var comparador = Restrictions.Disjunction(); comparador.Add(Restrictions.InsensitiveLike(Projections.Property <Usuario>(x => x.Username), filter.Descritivo, MatchMode.Start)); comparador.Add(Restrictions.InsensitiveLike(Projections.Property <Usuario>(x => x.Nome), filter.Descritivo, MatchMode.Start)); comparador.Add(Restrictions.InsensitiveLike(Projections.Property <Usuario>(x => x.Descricao), filter.Descritivo, MatchMode.Start)); query.Where(comparador); query.OrderBy(x => x.Username).Asc(); var pagedObject = new PagedObject <Usuario>(); pagedObject.Paginate(query, 30, filter.Pagina); return(pagedObject.PageResult(Mapper.Map <IList <UsuarioQueryModelSearch> >(pagedObject.ResultQuery.List()))); } }
public IActionResult PesquisarUsuarios([FromBody] PesquisarUsuariosQueryFilter filter) { var query = _usuarioQuery.Query.PesquisarUsuarios(filter); return(Ok(query)); }