甩收购拼团系统源码分享

甩收购拼团系统开发案例的部分核心源码分享以下,有需要研究趣味拼团系统开发的朋友可以一起探讨。
甩手购系统拼团分润制度如下
一,充值100开启抢购模式:
每次参与抢购获得抢购金额的1%,即1元,单品每天最低抢购10次即10元,每天签到送10张抢购劵
二,推荐奖:
直接推荐参与抢购后,奖励20张抢购劵间接推荐参与抢购后,奖励10张抢购劵

以下是甩手购分润核心代码:

/**
     *拼团系统奖励发放判断核心
     * @param $order_uid   是谁的购买的vip
     * @param $uid  查找谁的上级
     * @param int $speed    第几次处理逻辑
     * @return bool
     * @throws \think\Exception
     * @throws \think\db\exception\DataNotFoundException
     * @throws \think\db\exception\DbException
     * @throws \think\db\exception\ModelNotFoundException
     */
    public function teamReward($order_uid,$uid,$speed=1)
    {
        //获取用户信息
        $user_info = User::getUserInfo($uid);
        //如果有上级则进行逻辑处理,如果没有则结束
        if($user_info['spread_uid'])
        {
            //获取我的上级信息
            $spread_user_info = User::where('uid', $user_info['spread_uid'])->field('now_money,brokerage_price,level')->find()->toArray();
            //普通VIP = 1, 总代 = 2  SVIP = 3
            //需要是总代或者SVIP才可以,不然直到找到为止
            //如果第一次查找就查找到SVIP,并且订单用户id和被查找用户id相同,则是SVIP直推,不发放奖励;
            if( $spread_user_info['level'] == 3
                && $speed == 1
                && $uid == $order_uid
            )
            {
                return true;
            }
            //等级必须是总代或者SVIP
            if( $spread_user_info['level'] > 1)
            {
                //获取上级当前的等级信息
                $level_info = SystemUserLevel::get(['id'=>$spread_user_info['level']]);
                $level_info = $level_info->toArray();
                /**
                 *  列出关系  第一次只可能是总代或者SVIP
                 *           第二次只可能是总代或者SVIP,如果是总代就会产生平级
                 *           第三次只可能是SVIP了。
                 *  所以逻辑处理最多三次完成。中间任何一次碰到SVIP,则奖励发放完后终止
                 */
                //获取当前等级的极差额度
                $money = $level_info['vip_eqlevel_reward'];
                //如果是第一次处理,并且上级是SVIP,那上级直接获取双倍极差额度
                if($speed == 1 && $level_info['id'] == 3)
                {
                    //奖金翻倍
                    $money = bcmul($money ,2,2);
                    //如果是第二次处理而且上级为总代 或者是第三次处理而且上级为SVIP 此状态下则是平级减半奖励
                } else if( ( $level_info['id'] == 2 && $speed == 2 )
                    OR ( $speed == 3 && $level_info['id'] ==3 ) )
                {
                    //奖金减半
                    $money = bcdiv($money ,2,2);
                }
                //发放奖励
                $this->sendBrokerageReward($spread_user_info['uid'],'VIP团队奖励',$money,$spread_user_info['brokerage_price']);
                //决定是否继续查找 只要碰到SVIP,则停止。
                if($level_info['id'] == 3)
                    return true;
                //没有碰到SVIP的情况下自动进入下一轮
                $speed++ ;
                $this->teamReward($order_uid,$spread_user_info['uid'],$speed);

            } else {
                //如果上级等级不达标,继续递归查找。
                $this->teamReward($order_uid,$user_info['spread_uid'],$speed);
            }
        }
    }

三,甩手劵和消费积分:
每次抢购成功,系统自动奖励20元甩手劵和100消费积分
单品累计抢购成功5次,当第6次参与抢购,可在平台提现前5次的甩手劵(100元)和消费积分(600元),当天提现,当天到账。
四,贡献奖:
直接推荐3名白银会员,自动升级为黄金会员,即可享受整个销售市场的抢购奖励,每抢购一次,不管抢中与否,每次都获得0.5元-2元贡献值奖励。
(注:拿一代贡献奖收益的10%)
贡献值奖励区间图表:
0—200贡献值 0.5元;
201—2000贡献值 1元;
2001–2万贡献值 1.5元;
2万贡献值以上 2元

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值