Advertisement
Guest User

Untitled

a guest
Jan 28th, 2020
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.51 KB | None | 0 0
  1. private BooleanBuilder getQueryAgendamentosDeAgendaDisponiveisParaCancelamento(Long agendaId, String periodoFinal, Integer quantidadeVagaEletivoUrgencia) {
  2. Classificacao situacaoCancelada = classificacaoService.getClassificacaoByAtributo1(TipoClassificacao.AGENDAMENTO_SITUACAO, Agendamento.SITUACAO_CANCELADO);
  3. Classificacao situacaoFinalizada = classificacaoService.getClassificacaoByAtributo1(TipoClassificacao.AGENDAMENTO_SITUACAO, Agendamento.SITUACAO_FINALIZADO);
  4. BooleanBuilder periodoFinalFilter;
  5. BooleanBuilder qtdVagasEletivosUrgencia;
  6.  
  7. Agenda agenda = basicRepository.find(Agenda.class, agendaId);
  8.  
  9. QAgendamento q = QAgendamento.agendamento;
  10. BooleanBuilder where = new BooleanBuilder(q.agenda().id.eq(agendaId));
  11. where.and(q.classificacaoSituacao().id.notIn(situacaoCancelada.getId(), situacaoFinalizada.getId()).and(q.inativo.ne(Boolean.TRUE)));
  12.  
  13. if (quantidadeVagaEletivoUrgencia < agenda.getQuantidadeVagaUrgencia() + agenda.getQuantidadeVagaEletivo()) {
  14. qtdVagasEletivosUrgencia = new BooleanBuilder(q.posicaoFinal.gt(quantidadeVagaEletivoUrgencia));
  15. where.and(qtdVagasEletivosUrgencia);
  16. }
  17.  
  18. if (periodoFinal != null) {
  19. LocalDate periodoFinalParsed = LocalDate.parse(periodoFinal);
  20. periodoFinalFilter = new BooleanBuilder(q.dataAgendamento.goe(periodoFinalParsed));
  21. where.and(periodoFinalFilter);
  22. }
  23.  
  24. teste(where);
  25. return where;
  26. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement