我真的很困惑实现这个数据库的最佳方法。
我的问题是:数据库是存储婚纱摄影客户信息的。
用户可以注册我的网站,输入婚礼的详细信息并获得自己的“婚礼资料页面”。他们不需要我们拍摄他们的婚礼就可以做到这一点。
用户可以随时预订聚会、婚礼或订婚照。该网站将检查我们是否有空。 (婚礼优先于聚会,因此想要在聚会当天预订婚礼的客户,聚会将被标记为重新安排)
我们还必须能够预订休息日。这些天无法预订婚礼/聚会/订婚照。
订婚拍摄费用和预付费用。举办婚礼时,需在 14 天内支付押金,否则该日期可再次释放。聚会是免费的。
我对如何实施这个系统很困惑。我只是一直在兜圈子,我能想到的最好的方法是有一个“日期”表,链接所有其他表,但我确信这不是最有效的方法。
我认为让我望而却步的事实是,同一天可以举行多场婚礼(对于只想要婚礼简介的人),但每天只能举行一场预订的婚礼。
那么我完全错了吗?或者我是否将所有约会存储在一张表中并使用“约会类型”表。
如此如此卡住,我希望你能帮助我!
附注为了更容易理解,我省略了大部分字段。
一开始就保持简单。您已经确定了许多应与实体相对应的名词:
用户 婚礼 参与拍摄 聚会 不可用 日期 付款
我建议 WEDDINGS、ENGAGEMENT_SHOOTS、MEETUPS 和 UNAVAILABLE 都是预订类型。你可以:
用户 预订 - 这有一个日期,也许还有一个状态 BOOKING_TYPE(婚礼、聚会、订婚拍摄、不可用) 付款
您可能希望将用户购买的与一次婚礼相关的所有物品打包到一个交易实体等中,这将允许将一次付款映射到多次预订。当您的一名员工不在时,他们可以预订假期等。
可能有 2 种类型的用户 - 分配给预订的摄影人员和您的客户。
基于预订状态,例如。已确认、待处理、已完成以及您的业务逻辑可以发送付款要求、后续行动等的日期。
创建一个简单的模型并开始添加数据,您很快就会看到差距和问题(如果有)。您应该预先拥有测试用例,以确保数据模型支持应用程序的所有场景,最好通过一组用例来做到这一点。
我最近在良好的技术堆栈中开发了婚礼场地网站