add($referee_id, $user_id, 1); // # 记录二级推荐关系 if ($setting['level'] >= 2) { // 二级分销商id $referee_2_id = self::getRefereeUserId($referee_id, 1, true); // 新增关系记录 $referee_2_id > 0 && $model->add($referee_2_id, $user_id, 2); } // # 记录三级推荐关系 if ($setting['level'] == 3) { // 三级分销商id $referee_3_id = self::getRefereeUserId($referee_id, 2, true); // 新增关系记录 $referee_3_id > 0 && $model->add($referee_3_id, $user_id, 3); } return true; } /** * 新增关系记录 */ private function add($agent_id, $user_id, $level = 1) { // 新增推荐关系 $app_id = self::$app_id; $create_time = time(); $this->insert(compact('agent_id', 'user_id', 'level', 'app_id', 'create_time')); // 记录分销商成员数量 User::setMemberInc($agent_id, $level); return true; } /** * 是否已存在推荐关系 */ private static function isExistReferee($user_id) { return !!(new static())->where(['user_id' => $user_id])->find(); } }