I am writing a C# program to handle scheduling. Now each employee needs the ability have limitations on their schedule for ex:
Sally can only work Monday, Wednesday, Friday from 9am-3pm
Billy can only work Tuesday, Thursday, Sunday from 5pm-9pm
Sally can only work Monday, Wednesday, Friday from 9am-3pm until so and so date and then she can work a different set of times and days.
These are some examples of limitations that I need to apply to each employee object. What I wanted were some suggestions on how to architect this as efficiently and generically as as possible. Obviously I am going to have to be able to access this data and be able to apply these limitations. For example when the manger is trying to make the schedule he needs to able to see that when he schedules Sally on Tuesday at 4 their is an issue. Also how should I store this data of each employee?