← 返回

珠海项目 - 数据建模:票务 & 会员 ER

6/3/2025

我们开始搭建数据库模型,核心是票务与会员系统。

系统的第一步是定义数据结构。我们决定从两个最核心的实体入手:票务与会员。

🎫 票务模块

票务系统主要承担如下功能:

  • 门票种类(成人票、亲子票、年卡等)
  • 每日限额与库存控制
  • 下单与核销流程
  • OTA 与线下票据统一建模

我们采用如下 ER 结构初稿:

TicketType <-- Ticket <-- Order <-- CheckInLog

其中 TicketType 定义商品,Ticket 是实际发出的票,CheckInLog 记录每一次核销。

🧑‍🤝‍🧑 会员模块

会员模块分为三层结构:

User <-- Membership <-- PointsLog / LevelLog
  • User 是账号本体(微信、手机号)
  • Membership 记录当前等级、有效期等
  • PointsLog 记录积分获取与使用

我们尽量将会员逻辑与票务解耦,这样既支持实名购票,也允许游客匿名买票。

设计约定

  • 所有金额字段使用整数(单位为分),避免浮点误差;
  • 使用 uuid 作为所有主键,统一格式;
  • 记录创建者、更新时间,便于追溯;
  • 所有票券具备 trace_id,方便链路追踪。

下篇我们会分享前端部分的技术选型,以及如何用 Solid 分拆这些复杂的表单组件。