VitoYi 2020-02-11 17:50 采纳率: 100%
浏览 1065
已采纳

酒店订房:如何确认一个时间段的酒店房间状态

我在思考一个需求,比如用户打开某酒店的 app, 选择一个住店的时间范围,比如 2020-01-10 入住,2020-01-20 离店。



作为开发者,我很容易就能知道某个房间当前的状态,是有入住还是没有入住,但是如何根据一个时间段来判断呢?我如何判断 2020-01-10 —— 2020-01-20 这个时间段的房间剩余情况呢?



比如用户选定了 2020-01-10 —— 2020-01-20 这个时间段,现在有一件房A, 2020-01-10 —— 2020-01-19 是空房状态,但是 2020-01-20 这一天被人预定了,那么这间房A就不能够匹配用户所选择的这个时间段。



补充一:

不好意思,可能是我描述的不够清楚。设想这样一个场景:用户打开携程订酒店,根据入住时间和离店时间选择了一个区间,然后开始搜索,得到一个酒店列表。



问题1:假如我是携程后台,我这边有很多酒店,不止一家,我如何判断我的这些酒店,在用户选择的这个时间段内,哪些酒店是有房的,哪些是没房的,如果有房又有几间房(对于没房的,就没有必要显示出来了)

问题2:用户根据得到的酒店列表,选择了其中一家酒店,这个时候会向用户展示该酒店的房型。此时时间区间是已知的,我如何确定该酒店的某个房型在这个时间段内是有房的,又剩余几件房?

  • 写回答

2条回答 默认 最新

  • threenewbee 2020-02-12 00:11
    关注

    这种排班、排房间、排资源,等等的业务逻辑都是一样的,就是空间换时间,也就是建立一个以房间-时间片为关系的表
    比如说你预订了2020-2-10~2020-2-20的1234房间,那么产生
    1234 2020-2-10
    1234 2020-2-11
    ...
    1234 2020-2-20
    这么10条记录。
    这样你查询的话,只要查有没有你时间段内已经预订的记录就可以了。

    因为预订只涉及今天到未来很短一段时间(比如30天或者90天),所以你每天写一个作业,将今天以前的记录删除就可以保持很高的性能了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 专家修改了标签 11月29日
  • 已采纳回答 12月29日

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算