常见的会员等级积分添加以及修改逻辑

假如我现在有这样一个需求,在网站后台可以添加修改会员等级,每个等级有积分限制。然后不管添加或修改或者删除的时候,都要保证不管多少积分都只能在一个等级积分范围内。可能这样有点绕。举个例子吧。

如下有A,B,C,D四个等级,

A等级的积分是0-500,

B等级的积分是500-1000,

C等级的积分是1000-2000,

D等级的积分是2000-999999999

(假设最高等级积分是999999999)。


添加A等级时,数据库里积分范围应该是 0-999999999,

添加B等级的时候应该有两条数据,首先把A等级的最大值修改为500,然后再添加B等级,积分范围是500-999999999

添加C的时候,同样的有两步,先把B的最大值改为1000,然后再添加C,以此类推

......

如果此时要添加一条最小值为800的等级,那么先找到最小值比800小按最小值倒序排列的第一条。就是B等级,然后把B的最大值改为800,然后再找到后面那一条,就是C,把C的最小值改为800.


直接代码吧

添加时

//获取离该分数最近的最大值
$last_level = $this->model->where(array('shop_id' => $shop_id, 'max_commission >' => $commission,'type'=>0,'is_delete'=>0))->order_by('max_
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值