小程序项目业务逻辑回忆4

用户查询积分

积分获取规则如下:

邀请其他用户购票参会,将获取该用户花费金额的10%获取积分。

邀请用户注册参观展览,需注册并现场签到,将获取10分的奖励积分。

邀请企业用户参展,将获取企业参展金额的5%获取到积分。

上述3条积分获取规则分条进行计算

用户在邀请其他用户注册或者购票时会将自己的邀请码拼接到分享的注册或购票的请求地址处,其他用户通过链接进行操作时,字符串截取可获得到邀请码

情况1:邀请的是展商,根据邀请码去exhibitor_applications展商报名表中遍历查询是否存在被邀请的展商,如果存在则将events中point_time注册展览获应取积分计入该用户的总积分当中

情况2:邀请的是个人用户,这时需根据被邀请人的用户ID,去signin_record签到信息表中去查询被邀请人所拥有的门票,然后通过signin_records表中的ticket_type去判断是会议门票还是展览门票

情况2.1:如果是展览门票,即不花钱的那种,先判断登记时间sign_in_time登记时间即门票生成时间是否在被邀请人注册的14日以内,如果是则在用户获取积分列表中展示该项记录,此时将events表中的point_time注册展览获取积分(此项是商家通过后台系统输入的)作为积分数量进行显示,将signin_records签到信息表中的sign_in_status签到状态作为状态显示在列表上,其实就相当于列出用户积分获取的明细列表,但是否计入为有效积分还需进行逻辑判断,判断sign_in_status的签到状态,如果签到了即签到状态为是,才将events表中的point_time作为积分计入到邀请人用户user表中的points中

情况2.2:如果为会议门票,即花钱的那种,同样首先判断登记时间sigin_in_time门票激活时间是否在邀请人注册14日内,(情况2.1与情况2.2中注册时间与门票生效时间超过14天,积分分数都不作数,有鼓励是否参展摇摆不定的人买票的意思),如果在14天以内,查询门票的折后价格discount乘上events表中的point_proportion付款返还率(10%,商家可以后台修改)作为积分数量显示在拟获取积分列表中,默认签到状态为是(毕竟花钱了,来不来都应算作积分),最后将积分计入到邀请人用户user表中的points里

上述业务其实积分查询最合理的方式,应该是将积分获取过程分散写在各个业务中,用户激活票劵参展签到积分应及时生效,将积分明细中的积分获取过程的数据记录在一张专门记录积分明细的表中.但是为简化业务,参展二维码签到为人工验票,没有使用物联设备,情况1与情况2.1没法实时更新数据,展商入住状态status与用户展览签到状态sign_in_status是展会过去后期通过人工在后台将状态进行修改的,这与展会举办时长有关,举办时长不长人工验票更为合算,举办时长够长机器验票数据更新更为安全可靠.

积分在展会过后还存在提现过程,根据UI设计积分是能够分段提取的,因此存在withdrawal_requests积分提现请求表,此时累计积分应减去提现积分,并且提现积分理应显示在积分明细列表中

数据库设计过程中,应将一些通过UI界面看不见的字段合理设计到数据库各个表中,比如user用户信息表中除了看的见的字段姓名、电话号等,还应将注册时间registration_time,邀请码invitation_user邀请人的邀请码,points积分余额等字段记录在内,方便逻辑判断与查询,展商入驻状态与用户签到状态都应设计在对应的数据表中

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值