数据库设计
用户积分表
用户积分变更记录表
- 关联的用户
- 类别,记录变更的类别,例如1消费,5登陆积分,6绑定微信,7评论,9注册等(IntegralType)
- 积分,正或负,表示增减的积分
- 发生时间
- 说明
用户积分规则表
积分兑换规则表:指示每一积分可兑换多少钱
逻辑
过期减扣
说明:
积分有可用时间范围,例如一年期,那么去年1月产生的积分,在今年1月就不能再次使用。
每年或者每月进行一次,这里举例是每年减扣一次,减扣去年1月之前的
过程:
1月之前增加的积分数 1000,到目前为止减少的积分数700,那么1月份之前可用的积分为1000-700=300,这个300就是需要减扣的积分
注:这个过程有一个BUG,如果是退款退积分,会激活积分,还是上面的例子,假如用户用100积分购买了产品,这个时候积分扣减,然后退积分,即加积分,这个新加的积分其实是之前的100积分,但是时间变为了新的。