【问题标题】:Appointment System with Google Calendar API (Timeslots) React/NodeJS带有 Google 日历 API(时隙)React/NodeJS 的预约系统
【发布时间】:2021-08-08 20:39:41
【问题描述】:

我目前正在使用 Google Calendar API 使用 React 和 NodeJS 开发约会日历。目标是归档以下内容:

第 1 步:用户在日历中选择所需的日期(完成) 第 2 步:显示开放时间之间的 30 分钟免费时段(完成) 第 3 步:预约并添加到日历(完成)

但现在的问题是,每个时间段可以有 10 个单独的预订,我想显示还剩多少(例如 3 人在 15:30 预订了该时间段,我想显示还剩下 7 个时间段) 目前如果有人预订了 15:30 的时段,则将其删除。那是因为我使用了一个 FreeBusy 查询,它只显示忙碌的时间,而不是有多少事件。

我的第一个想法是将预订也保存在数据库中,然后在每个时间段查找之前预订了多少人,但这似乎不是最佳解决方案。

您对如何解决这个问题有更好的想法吗?

提前致谢

【问题讨论】:

    标签: node.js reactjs express google-calendar-api appointment


    【解决方案1】:

    只是一个建议,但也许对于放置在日历上的每个活动,您都可以附加一个扩展属性以将活动标记为已预订。

    "extendedProperties": {
        "shared": {
          "booked": "false",}
        }
    

    https://developers.google.com/calendar/v3/reference/events#resource

    然后,每当有人预订活动时,您可以通过更改提及的扩展属性将该活动标记为已预订。要显示可免费预订的活动数量,您可以按所选时间段的 timeMin、timeMax 过滤活动列表,并计算标记为免费或预订的活动数量。

    【讨论】:

    • 感谢您的建议,我会试一试:-)
    猜你喜欢
    • 2018-08-28
    • 2021-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-24
    • 2022-01-11
    • 1970-01-01
    相关资源
    最近更新 更多