Estou usando JSF + JPA Hibernate + Spring
Meu objetivo é não permiitir um novo intervalo de hora que seja igual ou entre os valores de horas ja cadastrados, estou fazendo assim
mas esta me retornando Erro null; alguem pode me ajudar?
Segue resumo do códiog abaixo:
//CAMADA APRESENTACAO
<h:panelGrid columns="1">
<h:outputText value="Hr.Inicial:" />
<h:inputText style="width: 60px; color:#FF6600;" id="idHrInicial" immediate="true" maxlength="5" value="#{agendaCirurgicaController.agendaCirurgica.hrInicial}" required="true" requiredMessage="* Campo (Inicial) é obrigatório">
<f:convertDateTime pattern="HH:mm" />
<rich:jQuery selector="#idHrInicial" query="mask('99:99')" timing="onload" />
</h:inputText>
</h:panelGrid>
<h:panelGrid columns="1">
<h:outputText value="Hr.Final:" />
<h:inputText style="width: 60px; color:#FF6600;" id="idHrFinal" maxlength="5" value="#{agendaCirurgicaController.agendaCirurgica.hrFinal}" required="true" requiredMessage="* Campo (Fim) é obrigatório">
<f:convertDateTime pattern="HH:mm" />
<rich:jQuery selector="#idHrFinal" query="mask('99:99')" timing="onload" />
</h:inputText>
</h:panelGrid>
//REFERENCIA DA CAMADA APRESENTAÇÃO
private Date hrInicial;
private Date hrFinal;
//CHAMA METODO COMPARA HORA
if (comparaHora(hrInicial, hrFinal)){
agendaCirurgica.setHrInicial(utils.formatHoraSqlServer(hrInicial));
agendaCirurgica.setHrFinal(utils.formatHoraSqlServer(hrFinal));
}
// COMPARA HORA INICIAL E HORA FINAL
public Boolean comparaHora(Date horaInicio, Date horaFinal) {
Calendar periodoInicial = Calendar.getInstance();
Calendar periodoFinal = Calendar.getInstance();
periodoInicial.setTime(horaInicio);
periodoFinal.setTime(horaFinal);
for (AgendaCirurgica agenda : agendaCirurgicaDao.todos()) {
if (periodoInicial.getTime().after(agenda.getHrInicial())
&& periodoFinal.getTime().before(agenda.getHrFinal())) {
System.out.println("<<<<<<<<<<<<<<<<<<<<HORARIO NÃO PERMITIDO>>>>>>>>>>>>>>>>");
return false;
}
}
return true;
}