我正在解决一个如下所示的问题:
想象一下在一个医生办公室,客户可以在下午 4 点进行预约。
想象一下另一个客户想要在下午 4 点去看医生,但由于药物已服用,他必须在下午 5 点去看医生。
现在想象一下,第二个客户可以额外选择下午 4 点作为访问的潜在日期时间,这样当第一个客户决定不来时,第二个客户就会收到一条通知:嘿,你可以早点来。
<小时/>客户#1 打开应用程序,选择预约日期,例如2015 年 5 月 23 日。
- 系统会打开包含服务的页面,客户 #1 选择“体检”+“血液测试”。
- 打开另一个页面,显示当天的可用时间(考虑到两项服务的持续时间)。
- 客户 #1 选择下午 4 点。
客户 #2 打开应用程序,选择相同的日期。
- 系统会打开包含服务的页面,客户 #2 选择“医疗查询”。
- 随即打开包含可用时间的页面。客户 #2 选择下午 4 点和下午 5 点。
下一步,
- 客户 #1 打开应用,取消下午 4 点的预约。
- 客户 #2 收到通知,称可以在下午 4 点进行预约。
我正在尝试为此创建一个简单的数据模型,但一个约会的多个日期时间快要了我的命。
这就是我现在拥有的:
表格:
Client
int id
string name
Service // Bloodtest, General medical checkup, etc.
int id
string title
int duration // estimated duration in minutes
Appointment
int id
int client_id
int doctor_id
List<Service> Services
List<DateTime> AppointmentDateTimes
Doctor
int id
string name
List<Service> Services
我的问题
List<DateTime>
大概是,我不知道哪个客户端优先于所选的日期时间(谁是第一个)以及客户端更喜欢其中的哪个日期时间。
如有任何建议,我们将不胜感激,谢谢。
最佳答案
设置您的约会日期时间,当前只是日期时间值,顶级对象。每个 AppointmentDateTime 对象都有一个有序的患者列表。排在第一位的患者是已预约的患者,排在第二位或更高位置的患者在等候名单上。
此外,每个 AppointmentDateTime 对象都可以包含分配的医生、房间等信息。您可以在同一时间段拥有多个 AppointmentDateTime 对象,每个对象对应不同的医生。
关于java - 约会的数据模型 - 选择多个日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30404697/