Esempio n. 1
0
 public static IEnumerable<Table> GetFreeTablesForReservation(IEnumerable<Table> allAvailableTables, Reservation requestedRervation)
 {
     return allAvailableTables.Where(
             table =>
                 !table.Reservations.Any(
                     reservation =>
                         IsTimeOverlapping(requestedRervation, reservation) ||
                         IsWorkDaysOverlapping(requestedRervation, reservation)));
 }
Esempio n. 2
0
 private static bool IsWorkDaysOverlapping(Reservation reservation1, Reservation reservation2)
 {
     return (reservation1.WorkDays & reservation2.WorkDays) > 0;
 }
Esempio n. 3
0
 private static bool IsTimeOverlapping(Reservation reservation1, Reservation reservation2)
 {
     return reservation2.StartTime < reservation1.EndTime && reservation1.StartTime < reservation2.EndTime;
 }