Listar por usuário logado
Tenho um sistema de abertura de chamados e estou tendo dificuldades para listar os chamados de acordo com o usuário logado.
No meu ChamadoController criei um método para listar por usuário logado. Coloquei um System.out.println(chamados) para ver se o array estava sendo retornado de acordo com a pesquisa e, realmente, aparece apenas os ids dos chamados referentes ao usuário logado no sistema, mas na minha jsp aparece todos os chamados cadastrados e não apenas os relacionados ao usário logado.
ChamadoController:
ChamadoRepository:
ChamadoService:
Desde já agradeço a ajuda.
No meu ChamadoController criei um método para listar por usuário logado. Coloquei um System.out.println(chamados) para ver se o array estava sendo retornado de acordo com a pesquisa e, realmente, aparece apenas os ids dos chamados referentes ao usuário logado no sistema, mas na minha jsp aparece todos os chamados cadastrados e não apenas os relacionados ao usário logado.
ChamadoController:
@RequestMapping(value = "/list", method = RequestMethod.GET) public ModelAndView listaChamados(ArrayList<Chamado> chamados, @AuthenticationPrincipal() UsuarioLogado logado) { ModelAndView view = new ModelAndView("chamado/list"); ModelMap model = new ModelMap(); chamados = chamadoService.findByUsarioId(logado.getId()); System.out.println("-------------------" + chamados + "------------------------------"); Page<Chamado> page = chamadoService.findByPagination(0, 5); model.addAttribute("page", page); model.addAttribute("urlPagination", "/chamado/page"); model.addAttribute("chamados",chamados); return new ModelAndView("chamado/list", model); }
ChamadoRepository:
public interface ChamadoRepository extends JpaRepository<Chamado, Long> { Page<Chamado> findAllByOrderByNomeAsc(Pageable pageable); List<Atividade> findAllByOrderByNomeAsc(Atividade atividade); List<Nivel> findAllByOrderByNomeAsc(Nivel nivel); List<Setor> findAllByOrderByNomeAsc(Setor setor); List<Frente> findAllByOrderByNomeAsc(Frente frente); Autor findByNome(String nome); @Query("select c from Chamado c where c.usuario.id = ?1") ArrayList<Chamado> findByUsuarioId(Long id); }
ChamadoService:
public ArrayList<Chamado> findByUsarioId(Long id) { return repository.findByUsuarioId(id); }
Desde já agradeço a ajuda.
Eduardo
Curtidas 0
Respostas
Eduardo
14/01/2019
Removi o código referente a paginação e funcionou perfeitamente.
Como faria para manter a paginação?
Como faria para manter a paginação?
@RequestMapping(value = "/list", method = RequestMethod.GET) public ModelAndView listChamados(@AuthenticationPrincipal() UsuarioLogado logado, ModelMap model) { List<Chamado> chamados = chamadoService.findByUsarioId(logado.getId()); model.addAttribute("chamados", chamados); return new ModelAndView("chamado/list", model); }
GOSTEI 0