基本上有一个约会模型,以及一个Available_Hours模型。
预约模型由客户使用。员工使用Available_Hours来设置给定日期的小时数,因此每个对象都是给定的一天。
约会对象时间字段需要依赖于Available_Hours对象。因此,当客户创建约会时,将会有一个下拉选择字段,显示员工拥有的所有可用小时数。
我不熟悉使用数据库。
另外,假设Available_Hours长达8小时。预约只需要2个小时,因此其他未使用的小时数应保留在用户设定约会时间的下拉菜单中。
class AvailableHours(models.Model):
"""Hours Employee Has Available For That Day"""
owner = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE,)
date_added = models.DateTimeField(auto_now_add=True)
work_date = models.DateField()
start_work_time = models.TimeField()
end_work_time = models.TimeField()
class Appointment(models.Model):
"""Appointment Information"""
owner = models.OneToOneField(settings.AUTH_USER_MODEL, on_delete=models.CASCADE,)
date_added = models.DateTimeField(auto_now_add=True)
date = models.DateField()
time = models.TimeField()