其他分享
首页 > 其他分享> > 简易抽奖系统

简易抽奖系统

作者:互联网

抽奖系统

ERD design for a simple lottery system

lottery system

实现功能

用户抽奖

限制抽奖次数

限制1

对每天,每周,每月,每年,终身对应的次数进行限制

实现方案:
通过设计的 count_date 与 count_limit 表格进行是否有抽奖资格的限制。
思路:
1.通过 user_id 普通查找 count_limit 表格,得到该用户每天,每周,每月,每年,终身限制的次数

** 开始事务 **
2.通过 user_id 使用悲观锁查找 count_date 表, 得到用户在该天,该周,该月,该年,终身以抽奖的次数
3.通过前两步得到的值进行判断用户是否有资格抽奖

限制2

对用户参与过的所有抽奖活动总和进行限制

实现方案:
通过设计的 count_lottery 与 count_limit 表格进行是否有抽奖资格的限制。
思路:
1.通过 user_id 普通查找 count_limit 表格,得到该用户参加所有抽奖活动总次数的限制值

** 开始事务 **
2.通过 user_id 使用悲观锁查找 count_lottery 表, 得到该用户参加的所有抽奖活动各自次数,计算出参加抽奖活动的总次数
3.通过前两步得到的值进行判断用户是否有资格抽奖

参考

  1. introduction of database
  2. introduction of ERD
  3. convert ERD to relation

标签:count,抽奖,lottery,表格,次数,系统,用户,简易
来源: https://blog.csdn.net/EJoft/article/details/111938748