/**
  * 推广大师进行注册操作
  * @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);
 }
Beispiel #2
0
 /**
  * 获取活动链接中邀请者身份
  * 判定邀请次数
  * @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;
         }
     }
 }