Estou finalizando um projeto de Folha de Ponto para uma contabilidade e é meu primeiro projeto então ainda não experiência em manipular data e hora no java e no banco de dados, sem mais delongas:
Preciso única e exclusivamente fazer a seguinte conta através do sistema:
Hora Entrada Hora Saída Almoço Retorno Almoço Saída
08:00 11:00 13:00 17:00Totalizando 3horas trabalhadas pela manhã e mais 4 horas trabalhadas a tarde. Gostaria de saber a melhor forma de manipular e fazer esta conta, pensei em transformar em long mais não consegui concluir a idéias. Eu sei que de longe isso é um exemplo Mínimo, Completo e Verificável, mais gosto de entender como fazer e depois me virar, quem poder me ajudar agradeço muito!!
Após assistir várias video aulas, fiz da forma abaixo, para que eu possa descobrir a duração entre as horas de entrada e saída, mais realmente achei que ficou uma gambiarra, quem poder me ajudar a melhorar esse código, transformar 23:00 em dois atributos inteiros um de 23 e outro com valor 00 não parece estar certo para mim, desde já agradeço!
public void teste(){
int teste1 = (Integer.parseInt(jTextFieldHora1.getText().substring(0,2)));
int teste2 = (Integer.parseInt(jTextFieldHora1.getText().substring(3,4)));
int teste3 = (Integer.parseInt(jTextFieldHora2.getText().substring(0,2)));
int teste4 = (Integer.parseInt(jTextFieldHora2.getText().substring(3,4)));
LocalTime time1 = LocalTime.of(teste1,teste2);
LocalTime time2 = LocalTime.of(teste3,teste4);
System.out.println(ChronoUnit.MINUTES.between(time1, time2));