public function user()
 {
     //        $appid = Config::get('webchat.appid');
     $userService = new User('wx8e883164d9342b1f', 'e73145bd0fdef28ea54b0b3608061c33');
     $result = $userService->lists();
     var_dump($result);
 }
Example #2
0
 /**
  * 分段更新本地用户资料.
  *
  * @param int      $total
  * @param FanModel $fanModel
  * @param Account  $accountId
  */
 public function performUpdateUserDetail($total, $fanModel, $account)
 {
     $this->info("\n开始更新用户资料...");
     $this->output->progressStart($total);
     $userService = new User($account->app_id, $account->app_secret);
     $fanService = new FanService();
     $accountId = $account->id;
     $fanModel->where('account_id', $accountId)->orderBy('id', 'desc')->chunk(100, function ($fans) use($userService, $accountId, $fanModel, $fanService) {
         $fans = $userService->batchGet($fans->lists('openid')->toArray());
         foreach ($fans as $fan) {
             $fan = $fanService->formatFromWeChat($fan);
             $fanModel->where('openid', $fan['openid'])->update($fan);
             $this->output->progressAdvance();
         }
     });
     $this->output->progressFinish();
     $this->info("\n同步完成。");
 }
Example #3
0
 /**
  * 设置微信公众号用户备注
  *
  * @param Request $request POST请求
  *
  * @return Response
  */
 public function setRemark(Request $request)
 {
     if ($request->isMethod('post')) {
         $appId = $request->appId;
         $openId = $request->openId;
         $remark = $request->remark;
         $app = WechatApp::getAppById($appId);
         if (isset($app)) {
             $userService = new User($app['app_id'], $app['app_secret']);
             try {
                 if ($userService->remark($openId, $remark)) {
                     return '设置成功';
                 }
             } catch (\Exception $e) {
                 echo '获取用户备注失败:' . $e->getMessage();
             }
         }
     }
 }
Example #4
0
 /**
  * 粉丝更新完成后执行.
  *
  * @param \App\Models\Fan $fanModel
  */
 public function updated(Fan $fanModel)
 {
     /*
      * 1 获取更新的属性
      */
     $updateArr = $fanModel->getDirty();
     if (isset($updateArr['group_id'])) {
         /*
          * 1 移动用户到指定分组同步到线上
          */
         $this->group->moveUser($fanModel->openid, $updateArr['group_id']);
     }
     if (isset($updateArr['remark'])) {
         /*
          * 1 更改的粉丝备注同步到线上
          */
         $this->user->remark($fanModel->openid, $updateArr['remark']);
     }
 }
Example #5
0
 /**
  * Handle an incoming request.
  *
  * @param  \Illuminate\Http\Request $request
  * @param  \Closure $next
  * @return mixed
  */
 public function handle($request, Closure $next)
 {
     $appId = 'wx22be62c5077abcfe';
     $secret = 'f364efc269da0f33e7f376e0ca4c9cc0';
     $auth = new Auth($appId, $secret);
     $wxUser = Session::has("wxUser");
     if (!$wxUser) {
         $user = $auth->authorize(null, 'snsapi_base');
         $userService = new User($appId, $secret);
         $userInfo = $userService->get($user->openid);
         $wxUser = WxUser::getByOpenId($user->openid);
         if (!$wxUser) {
             $wxUser = WxUser::saveWxUser($userInfo);
         } else {
             $wxUser->updateWxUser($userInfo);
         }
         Session::put('wxUser', $wxUser);
     }
     return $next($request);
 }
Example #6
0
 /**
  * Execute the console command.
  *
  * @return mixed
  */
 public function handle()
 {
     $accountId = $this->argument('account_id');
     $openId = $this->argument('openid');
     /*
      * 1 获取Account
      */
     $account = $this->getAccount($accountId);
     $fanModel = new FanModel();
     $FanService = new FanService();
     /*
      * 2 初始化 SDK Config, 构建 SDK 对象
      */
     $userService = new User($account->app_id, $account->app_secret);
     $fan = $userService->get($openId);
     if (isset($fan['subscribe']) && $fan['subscribe']) {
         //subscribe=1 关注了公众号
         $updateInput = $FanService->formatFromWeChat($fan);
         /*
          * 存入本地
          */
         $fanModel->where('account_id', $accountId)->where('openid', $openId)->update($updateInput);
     }
 }
Example #7
0
 public function getUserInfo(User $user)
 {
     $userInfo = $user->get('oKHdSuBX5hdI7nkfEfG45-csdCDU');
     dd($userInfo);
 }