mysql+php如何进行抽奖活动,方便统计?

客户有一需求,有个福利区,用户在商城下单,每周交易次数达到10次,就可以入围,按他交易金额取得分配当期奖池总额的50%。另外50%奖池金额,滚动到下一期。每周最后一天,22点,进行统计,分配积分到用户的余额中。交易金额多就分的多,只有本期入围的用户,才参与分配。

怎样设计这个需求的表结构,比较好呢!

我先是这么设计了一个表。福利表

用户id,成交金额,成交日期,交易相关订单号。

用户商城下单支付后,就添加一条记录,记录到福利表.这里无需考虑退货问题。不可以退货。

例如a 下单 100元,拿出3元,记录到福利表里,

然后没思路了,怎样实现这个上一期奖池总额的50%、,滑到本期总的奖池总额中!

怎样展示,当日,新入围用户的id列表!

id,成交金额,成交次数,入围时间。

怎样知道,当前期数,正在当前进行的期数。上一期是怎么获得的。

例如有个统计页面,需要展示历史开奖数据,

20210401-20210407 , 10000.00 表示这期的时间段,这期的发放总额是多少,点击后,展示

每个入围选手各自的分配情况,是一个列表

成交金额/成交次数, 用户id,发放金额!

这些数据是怎么提供的,php动态统计出的结果,还是数据库中,统计后,弄到一个表中。php直接输出查询出来的。

本期奖池金额的50%,滚动到下一期,这个咋设计?
期数是咋设计的,我还要建立一个开奖期数表?

期号,开始时间,结束时间

好像没什么用,又好像有用!

现在不知道哪些数据是该统计出来的数据,哪些是应该做成表中的字段!

例如开奖期数,好像也可以,把每年的时间,按周分割出来,进行统计。又觉得这么做有点不妥。

统计入围名单,这个是应该有个表,记录吗?

入围表?

用户id,成交金额,成交次数,入围时间!

如果这么做,是不是需要一个定时统计功能,例如每10分钟统计一次,方便给前端展示出来!

有大佬吗,指点一下

阅读 2k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题