查找是否可以预订时间

时间:2018-01-25 10:05:48

标签: java mysql spring

我正在开发一个预订spring java应用程序来预订特定的请求  时间(年,月,日,小时,分钟)请求时间由变量REQUEST_PERIOD确定,我想要一个解决方案来查看请求时间是否有效。 对问题的更多解释:如果约会有效(不在任何其他预约的约会范围[request_Time]中),则用户预约,然后系统将保留请求,否则将拒绝它。

示例:

REQUEST_PERIOD = 100分钟;

保留请求:

 requestA [year : 2018 , month : 5 , day : 1 , hour : 12 , minutes : 40]
 requestB [year : 2018 , month : 5 , day : 1 , hour : 15 , minutes : 30]

新请求(有效):

 requestC [year : 2018 , month : 5 , day : 1 , hour : 18 , minutes : 20]

新请求(无效):

 requestD [year : 2018 , month : 5 , day : 1 , hour : 15  , minutes : 40]
 requestF [year : 2018 , month : 5 , day : 1 , hour : 15  , minutes : 50]
 requestT [year : 2018 , month : 5 , day : 1 , hour : 15  , minutes : 50]

因请求范围在requestB time + REQUEST_PERIOD

中无效

1 个答案:

答案 0 :(得分:1)

解决此问题的一种方法是将间隔时间转换为long(如unix时间戳),然后搜索任何重叠间隔。

在此搜索中,有一个解释:search for interval overlap in list of intervals?