2024-05-18 14:01:51 +08:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace app\api\logic\shop;
|
|
|
|
|
|
|
|
use app\api\service\UserTokenService;
|
|
|
|
use app\common\logic\BaseLogic;
|
2024-05-18 15:28:17 +08:00
|
|
|
use app\common\model\user\UserSession;
|
2024-05-18 14:01:51 +08:00
|
|
|
use think\facade\Db;
|
|
|
|
|
|
|
|
class ShopLogic extends BaseLogic
|
|
|
|
{
|
2024-05-21 09:08:22 +08:00
|
|
|
public static function auth($token,$jg_register_id='')
|
2024-05-18 14:01:51 +08:00
|
|
|
{
|
|
|
|
list(, $base64UrlPayload,) = explode('.', $token);
|
|
|
|
$payload = base64UrlDecode($base64UrlPayload);
|
|
|
|
$data = json_decode($payload, true);
|
|
|
|
if($data){
|
|
|
|
if($data['exp'] < time()){
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
$user=Db::name('user_auth_shop')->where('shop_uid',$data['jti'][0])->where('apply_status',1)->find();
|
|
|
|
if($user){
|
2024-05-18 15:28:17 +08:00
|
|
|
$userSession = UserSession::where([['user_id', '=', $user['user_id']], ['terminal', '=', 6]])->find();
|
|
|
|
if($userSession){
|
|
|
|
UserTokenService::overtimeToken($userSession['token']);
|
|
|
|
return $userSession['token'];
|
|
|
|
}
|
2024-05-18 14:01:51 +08:00
|
|
|
$userInfo = UserTokenService::setToken($user['user_id'], 6);
|
2024-05-21 09:08:22 +08:00
|
|
|
if($jg_register_id){
|
2024-05-21 16:49:17 +08:00
|
|
|
//清除其他账号绑定的相同的极光id
|
|
|
|
Db::name('user_auth_shop')->where('jg_register_id',$jg_register_id)->update(['jg_register_id'=>'']);
|
2024-05-21 09:08:22 +08:00
|
|
|
Db::name('user_auth_shop')->where('id',$user['id'])->update(['jg_register_id'=>$jg_register_id]);
|
|
|
|
}
|
2024-05-18 14:01:51 +08:00
|
|
|
return $userInfo['token'];
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return false;
|
|
|
|
}
|
|
|
|
}
|