Pessoal, já vi muita coisa sobre calculo de horas que não deu certo pra mim.
Sou novo, talvez esteja fazendo coisa errada.
Faço um select aonde retorno a hora de entrada e saída dos funcionarios.
São 6 horas, entrada e saída de manhã, entrada e saída de tarde e entrada e saída de noite.
Eu capturo as horas via select, (hora1, hora2…) jogo para long (hora1l, hora2l…)
e tento fazer o calculo, aonde hora 1 representa entrada, hora 2 saída e assim por diante.
Meu código:
long hora1l = hora1.getTime();
long hora2l = hora2.getTime();
long hora3l = hora3.getTime();
long hora4l = hora4.getTime();
long hora5l = hora5.getTime();
long hora6l = hora6.getTime();
long TotalDia = ((hora2l - hora1l) + (hora4l - hora3l) + (hora6l - hora5l));
meuobjeto.setTotal(new SimpleDateFormat("HH:mm:ss").format(new Date(TotalDia)));
Eu faço hora2l-hora1l , hora4l-hora3l e hora6l-hora5l
pois a hora de saída é maior que a hora de entrada.
As horas que usei para teste são:
hora1 = 09:00
hora2 = 12:00
hora3 = 13:00
hora4 = 18:00
hora5 = 19:00
hora6 = 22:00
O No total, me retorna 8 horas. sendo que são 11.
Não sei se o long não calcula direito ou se tenho que fazer alguma coisa antes.
Alguém tem alguma coisa que me ajude ?
Agradeço desde já.
