我有一个医生计划页面,医生可以配置他/她的工作时间(开始时间和结束时间)从星期一到星期五。
通过使用访问页面,用户只能在每天的医生预定时间内安排他们的约会。
我正在使用访问表来进行用户的约会,并使用医师时间表来配置医师的工作时间。
访问表条目
id visit_date scheduled_intime scheduled_outtime physician_id
1 2012-04-23 09:15:00 09:30:00 1
2 2012-04-23 09:31:00 10:00:00 1
3 2012-04-24 10:00:00 10:15:00 1
4 2012-04-25 11:00:00 11:15:00 1
5 2012-04-26 15:15:00 15:30:00 1
6 2012-04-27 16:00:00 16:30:00 1
医生时间表表条目
id start_time end_time day_of_week physician_id
1 09:00:00 18:00:00 monday 1
2 10:00:00 18:00:00 tuesday 1
3 11:00:00 17:00:00 wednesday 1
4 15:00:00 18:00:00 thursday 1
5 16:00:00 20:00:00 friday 1
注意每位医师每天只能输入一个条目(共 5 个条目)。
当 医生更改他/她的日程安排时间时,我想找出在特定日期超过医生日程安排时间的所有现有访问。
例子
1)如果医生按照周三更改工作时间,我想查找id 4的就诊
start_time: 12:00:00
end_time: 17:00:00
2)如果医生在工作时间后发生变化,我想查找访问id 4,5
周三:
start_time: 12:00:00
end_time: 17:00:00
周四
start_time: 15:30:00
end_time: 18:00:00