Guardaré dos veces desde el selector de tiempo. Uno se nombra start
y el otro se nombra end
tal vez a la 1:00 p. m. y a las 2:00 p. m., respectivamente. Necesito verificar si un usuario puede almorzar o hacer una determinada tarea en ese lapso de tiempo o cierto rango de tiempo en una fecha diferente y en cualquier fecha.
No estoy seguro de qué función usar. Esto es lo que pensé en probar:
Solución del problema
Ya hay una función para esto en la API de LocalDateTime
LocalDateTime startTime = LocalDateTime.of(2022, 01, 01, 14, 0);
LocalDateTime endTime = LocalDateTime.of(2022, 01, 01, 15, 0);
LocalDateTime someTime = LocalDateTime.of(2022, 01, 01, 14, 30); //LocalDatetime.now(); in your use case
if(someTime.isAfter(startTime) && someTime.isBefore(endTime)) {
System.out.println("User can take a break");
} else {
System.out.println("user can not take a break");
}
Si todavía está trabajando con java.util.Date, no lo haga;). Si no hay forma de evitar el uso de Fecha, simplemente convierta la Fecha a LocalDateTime y use su api Conversión entre java.time.LocalDateTime y java.util.Date. LocalDateTime es una de las características más cómodas de java8
No hay comentarios.:
Publicar un comentario