活动报名数据库表该如何设计?
发布活动包括免费和收费活动,免费活动不涉及支付,收费活动会涉及到支付,这里我设计了3个表:活动表、报名表和订单表。
活动表字段:id、name、type(1免费 2收费)、amount(收费活动填写)
报名表字段:id、uid、actid、status(1报名成功 2报名取消)
订单表:id、orderNo、actid、amount、status(0待支付 1已支付 2已取消)
1.活动报名(免费)流程:活动详情-》点击报名-》-》报名确认-》添加报名记录(设置status为报名成功)
2.活动报名(收费)流程:活动详情-》点击报名-》报名确认-》生成报名记录(设置status为空)、生成订单记录(设置status待支付)-》发起支付-》支付成功后更新报名状态为报名成功、更新订单状态为已支付
3.查看活动报名列表:查询报名表status为报名成功的记录
以上是我的想法,不知道设计是否合理有问题。还请大佬帮忙看看,非常感谢!🙏
另外还有几个疑问:
1.报名表和订单表设计一个表还是两个表比较好?
2.报名收费活动时,如果点击支付但没有付款,报名记录需要删除吗?什么时候去删除?如果不删除,那再次报名是创建新的报名记录还是用原来的?
3.如果报名需要审核的话,是不是直接在报名表增加个审核字段就行了(0待审核 1通过 2未通过)?还是和status共用一个字段?
4.报名审核应该是先审核通过再让支付还是先报名支付再审核?
报名表和订单表设计一个表还是两个表比较好?—— 两个
报名收费活动时,如果点击支付但没有付款,报名记录需要删除吗?什么时候去删除?如果不删除,那再次报名是创建新的报名记录还是用原来的?—— 软删除
如果报名需要审核的话,是不是直接在报名表增加个审核字段就行了(0待审核 1通过 2未通过)?还是和status共用一个字段?—— 独立字段
报名审核应该是先审核通过再让支付还是先报名支付再审核?—— 随意