erp_old/app/api/logic/shop/ShopLogic.php

40 lines
1.4 KiB
PHP
Raw Normal View History

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;
}
}