java - 约会的数据模型 - 选择多个日期

标签 java c# database datetime

我正在解决一个如下所示的问题:

想象一下在一个医生办公室,客户可以在下午 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/

相关文章:

php - 无法在 codeigniter 中显示我的数据库

循环中的java junit测试

java - 如何确定文件将被逻辑移动还是物理移动

java - maven-nar-plugin vs native-maven-plugin,哪个更好?

c# - 如何使用 Win32/User32 库检查当前鼠标按钮状态?

c# - 为什么 C# 代码在 Visual Studio 2015 编辑器中部分变灰?

c# - toString() 只对调试有用吗?

java - 在 hibernate 中打开查询

c# - 理解这段代码 _num = (_num & ~(1L << 63));

php - HTML 表单更改回显变量而不是数据库?