Yo guardaria en una tabla los turnos reservados, entre los datos que guardes no pueden faltan la fecha y la hora. El resto es informacion que definis vos. Con esos datos podes calcular todas las atenciones de un dia. Los turnos ocupados son los que estan en tu tabla; los turnos libres es justamente lo contrario, es lo que no esta en tu tabla. Por decirlo de alguna manera: dia entero - turnos ocupados = turnos libres.
Osea no deberias guardar "cuando no esta libre". Asume que el dia esta todo libre a menos que haya un turno en ese mismo horario. Par la parte de la operatoria que consiste en comparar las horas para determinar "esta libre este horario?" intenta pensarla como lo harias cotidianamente, y luego traducelo a codigo
|