Repository retornando 0. Consulta no banco retornando 2 - resolvido

O Spring JPA gerou esta consulta

select 
  usuariored0_.pk_usuario_rede as pk_usuar1_53_, 
  usuariored0_.ts_cadastro as ts_cadas2_53_, 
  usuariored0_.ts_movimentacao as ts_movim3_53_, 
  usuariored0_.st_situacao as st_situa4_53_, 
  usuariored0_.ip_movimentacao as ip_movim5_53_, 
  usuariored0_.cd_login_movimentacao as cd_login6_53_, 
  usuariored0_.st_registro as st_regis7_53_, 
  usuariored0_.tp_operacao as tp_opera8_53_, 
  usuariored0_.nr_versao as nr_versa9_53_, 
  usuariored0_.fk_rede as fk_rede10_53_, 
  usuariored0_.fk_usuario as fk_usua11_53_ 
from 
  tab_usuario_rede usuariored0_ 
  inner join tab_rede rede1_ on usuariored0_.fk_rede = rede1_.pk_rede 
  inner join tab_usuario usuario2_ on usuariored0_.fk_usuario = usuario2_.pk_usuario 
where 
  rede1_.ds_chave = ? 
  and usuario2_.st_receber_email=‘SIM’
order by 
  usuario2_.ds_nome ASC
select usuariored0_.pk_usuario_rede as pk_usuar1_53_, usuariored0_.ts_cadastro as ts_cadas2_53_, usuariored0_.ts_movimentacao as ts_movim3_53_, usuariored0_.st_situacao as st_situa4_53_, usuariored0_.ip_movimentacao as ip_movim5_53_, usuariored0_.cd_login_movimentacao as cd_login6_53_, usuariored0_.st_registro as st_regis7_53_, usuariored0_.tp_operacao as tp_opera8_53_, usuariored0_.nr_versao as nr_versa9_53_, usuariored0_.fk_rede as fk_rede10_53_, usuariored0_.fk_usuario as fk_usua11_53_ from tab_usuario_rede usuariored0_ inner join tab_rede rede1_ on usuariored0_.fk_rede=rede1_.pk_rede inner join tab_usuario usuario2_ on usuariored0_.fk_usuario=usuario2_.pk_usuario 
where rede1_.ds_chave='eaf8d6b2-07c5-41f3-a3e4-feb597e68394' 
and usuario2_.st_receber_email='SIM' order by usuario2_.ds_nome ASC


Que retornou dois registros

Já o servidor retorna 0.
Código

    public Collection<UsuarioEmailDTO> buscarUsuarioEnvioEmailRedeLogada(final Principal principal) {
        log.info("buscarUsuarioEnvioEmailRedeLogada");
        log.info("usuario logado: " + principal.getName());
        final UsuarioLogadoDTO usuarioLogado = buscarUsuarioLogado(principal);
        log.info("usuarioLogado: " + principal.getName());
        log.info("chaveRede: " + usuarioLogado.getChaveRede());
        final Collection<UsuarioRede> usuariosRedes = usuarioRedeRepository.buscarUsuarioEnvioEmailRedeLogada(usuarioLogado.getChaveRede());
        log.info("usuariosRedes: " + usuariosRedes.size());
        return usuarioEmailPreencher.paraDTO(usuariosRedes);
    }

O que pode ser ?

UsuarioRedeRepository

    @Query(value = "SELECT e FROM UsuarioRede e INNER JOIN e.rede r INNER JOIN e.usuario u WHERE (r.chave = :chave) AND (u.receberEmail = 'SIM') ORDER BY u.nome ASC ")
    Collection<UsuarioRede> buscarUsuarioEnvioEmailRedeLogada(@Param("chave") String chave);

Estranho msm. Posta a classe UsuarioRede pra gente ver.

E o que essa linha return usuarioEmailPreencher.paraDTO(usuariosRedes); está fazendo?

1 curtida

Pode me xingar, mas eu fui ver no banco, agora, depois de quebrar a cabeça e não tinha nem um usuário com u.receberEmail = ‘SIM’.

Eu to me xingando até agora.

:rage::rage::rage::rage:

1 curtida