admin/app/common/model/plus/bonus/User.php
@@ -5,6 +5,7 @@
use app\common\model\BaseModel;
use app\common\model\plus\bonus\Order as OrderModel;
use app\common\model\plus\bonus\Referee as RefereeModel;
use app\common\model\user\Grade as GradeModel;
use app\common\model\user\User as UserModel;
//use app\common\model\plus\bonus\Order as OrderModel;
use app\common\model\plus\bonus\Performance as PerformanceModel;
@@ -119,7 +120,7 @@
            } else {*/
                //规则2:查找有空缺的三叉树
                $parent = (new static())->where('child_num', '<', 3)
                                        ->where('user_id', "<>", $referee_id)
                                        /*->where('user_id', "<>", $referee_id)*/
                                        ->order(['tree_level' => 'asc', 'level_num' => 'asc'])->find();
            //}
            $data['parent_id'] = $parent['user_id'];
@@ -210,6 +211,48 @@
        }
        return true;
    }
    public  function addTheFirst4()
    {
        $model =  new self;
        $grade_id=GradeModel::getDefaultGradeId();
        if ($model->where('tree_level',4)->count()){
            return true;
        }
        //记录分红层级关系
        $i=4;
        $userList=$model->where('tree_level',3)->select();
        $k=0;
        foreach ($userList as $tree){
            $new_user_id=$tree['user_id'];
            for ($j=1; $j <= 3; $j++) {
                $k++;
                $user = UserModel::create([
                    'open_id' => $i . '_' .$k,
                    'reg_source' => 'sys',
                    'nickName' => '预留' . $i . '_' . $k,
                    'grade_id'=>$grade_id,
                    'app_id' => 10142
                ]);
                $child_user_id = $user->user_id;
                $model->create([
                    'user_id' => $child_user_id,
                    'is_delete' => 0,
                    'app_id' => 10142,
                    'parent_id' => $new_user_id,
                    'order_num' => $j,
                    'tree_level' => 4,
                    'level_num' => $k
                ]);
                $model->where('user_id',$new_user_id)->save([
                    'user_id' => $new_user_id,
                    'child_num' => $j
                ]);
                RefereeModel::createRelation($child_user_id, $new_user_id);
            }
        }
        return true;
    }
    /**
     * 查找横向位置内符合条件的用户