Как ограничить пользователя в получении бонуса после реферирования минимум двух пользователей в Laravel - PullRequest
0 голосов
/ 22 сентября 2019

У меня есть код, в котором, что происходит, когда пользователь обновляет свой аккаунт, его спонсор получает очки ранга.Это код:

 function updateDepositBV($id, $deposit_amount)
 {
  while($id !="" || $id != "0") {
    if(isMemberExists($id))
    {
        $posid = getParentId($id);
        if($posid == "0")
            break;
        $position = getPositionParent($id);
        $currentBV = MemberExtra::where('user_id', $posid)->first();

        if($position == "L"){

            $new_lbv = $currentBV->left_bv + $deposit_amount ;
            $new_rbv = $currentBV->right_bv;
        }else{
            $new_lbv = $currentBV->left_bv;
            $new_rbv = $currentBV->right_bv + $deposit_amount ;
        }

        MemberExtra::where('user_id', $posid)
            ->update([
               'left_bv' => $new_lbv,
               'right_bv' => $new_rbv,
            ]);

        $id = $posid;

    } else {
        break;
    }

}//while
return 0;
}

И что мне нужно сделать с этим кодом, так это ограничить пользователя в получении бонуса, пока он не зарегистрирует двух человек, спонсируемых им с обеих сторон (левый двоичный и правый двоичный),Я пробовал этот код, но он не работает: пожалуйста, посмотрите и дайте мне знать, где я не прав.Я новичок в laravel и PHP.

function updateDepositBV($id, $deposit_amount)
{
while($id !="" || $id != "0") {
    if(isMemberExists($id))
    {
        $posid = getParentId($id);
        if($posid == "0")
            break;
        $position = getPositionParent($id);
        $currentBV = MemberExtra::where('user_id', $posid)->first();
        $totalL = $position["L"]->count();
        if($position == "L"){
            if($position["L"]->count > 1){
            $new_lbv = $currentBV->left_bv + $deposit_amount ;
            $new_rbv = $currentBV->right_bv;
        }else{
            $new_lbv = $currentBV->left_bv;
            $new_rbv = $currentBV->right_bv + $deposit_amount ;
        }
        }
        MemberExtra::where('user_id', $posid)
            ->update([
               'left_bv' => $new_lbv,
               'right_bv' => $new_rbv,
            ]);

        $id = $posid;

    } else {
        break;
    }

}//while
return 0;
}

В последнем коде я попытался подсчитать строки левого и правого пользователей, которые спонсируются пользователем, и создать условие:

if(Left Binary sponsered users rows count >= 2 ){action for true condition}

elseif(Right Binary sponsered users rows count >= 2){action for true condition}

может кто-нибудь подсказать мне это?извините за мой плохой английский.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...