| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- <?php
- namespace App\Http\Controllers\Mobile\DouyinRecruit;
- use App\Http\Controllers\Mobile\MobileBaseController;
- use App\Models\DouyinRecruit\CompanyEmployee;
- use App\Services\Common\WechatService;
- class LoginController extends MobileBaseController
- {
- private $wechatService;
- public function __construct(WechatService $wechatService)
- {
- $this->wechatService = $wechatService;
- }
- /**
- * 登录跳转
- */
- public function index($company_id)
- {
- $wechat_url = "https://open.weixin.qq.com/connect/oauth2/authorize?"
- . "appid=" . subsite_config('aix.system.oauth.wechat_official.app_id')
- . "&redirect_uri=" . urlencode(route('mobile.douyin_recruit.auth'))
- . "&response_type=code&scope=snsapi_userinfo&state=" . $company_id . "#wechat_redirect";
- return redirect($wechat_url);
- }
- /**
- * 登录
- */
- public function auth()
- {
- $officialAccount = $this->wechatService->getOfficialAccount();
- $wechatUser = $officialAccount->oauth->user()->getOriginal();
- $open_id = $wechatUser['openid'];
- //验证用户
- $emp = CompanyEmployee::where('open_id', $open_id)->first();
- if (empty($emp)) {
- $company_id = request()->get('state');
- $emp = CompanyEmployee::create(['open_id' => $open_id, 'create_time' => time(), 'company_id' => $company_id]);
- }
- //验证信息
- if (empty($emp['name'])) {
- $url = route('mobile.douyin_recruit.emp.register', ['id' => $emp['id']]);
- return redirect($url);
- }
- $url = route('mobile.douyin_recruit.emp.info', ['id' => $emp['id']]);
- return redirect($url);
- }
- }
|