/** * 推广大师进行注册操作 * @return string */ public function actionSignupofmaster() { $post = Yii::$app->request->post(); $userIp = Yii::$app->request->userIp; //获取邀请码 $invite_code = $post['invite_code']; //解析链接中的手机号 $invite_phone = \frontend\actions\App\AloneMethod::decrypt($invite_code); //判定手机号的合法性 $res = UcenterMember::find()->where(['phone' => $invite_phone, 'username' => $invite_phone])->asArray()->one(); if ($res == null) { $return = array('errorNum' => '1', 'errorMsg' => '活动链接来源不合法', 'data' => null); return json_encode($return); } // 获取推荐人信息 $invitation_id = $res['id']; //进行注册操作 $phone = $post['phone']; $pwd = $post['password']; $phone_code = $post['validate_code']; $request = member::the_master_register($phone, $pwd, $phone_code, $invitation_id, $userIp); return json_encode($request); }
/** * 获取活动链接中邀请者身份 * 判定邀请次数 * @param $invite_code * @return array */ public static function get_invite_info($invite_code) { if ($invite_code == '0') { $return = array('errorNum' => '1', 'errorMsg' => '活动链接来源不合法', 'data' => null); return $return; } else { //解析链接中的手机号 $invite_phone = \frontend\actions\App\AloneMethod::decrypt($invite_code); //验证邀请者身份 $invitation_id = self::phoneIsRegister($invite_phone); if (!$invitation_id) { $return = array('errorNum' => '1', 'errorMsg' => '邀请者不存在', 'data' => null); return $return; } //判定邀请者资格--一定要有投资行为--防止链接伪造 $invite_code = \common\models\base\asset\Log::find()->where(['member_id' => $invitation_id, 'action' => 'Invest/invest', 'status' => \common\models\base\asset\Log::STATUS_INVEST_SUC])->count(); if (!$invite_code) { $return = array('errorNum' => '1', 'errorMsg' => '邀请者不合法', 'data' => null); return $return; } //可以邀请 $invite_count = ActivityLog::find()->where(['invite_id' => $invitation_id, 'invite_phone' => $invite_phone, 'status' => ActivityLog::STATUS_ACTIVITY])->count(); //存在邀请记录 $invite_test = ActivityLog::find()->where(['invite_id' => $invitation_id, 'invite_phone' => $invite_phone, 'status' => ActivityLog::STATUS_SUCCESS])->count(); if ($invite_count == 0 && $invite_test) { $data = array('invite_phone' => $invite_phone, 'invitation_id' => $invitation_id); $return = array('errorNum' => '2', 'errorMsg' => '红包已经被抢完', 'data' => $data); return $return; } else { $data = array('invite_phone' => $invite_phone, 'invitation_id' => $invitation_id); $return = array('errorNum' => '0', 'errorMsg' => 'success', 'data' => $data); return $return; } } }