2023-02-22 11:54:08 +08:00

67 lines
1.5 KiB
PHP

<?php
namespace App\Services;
use App\Model\User as UserModel;
use Extend\Alibaba\Oss;
/**
* 安全服务
*/
class SafeService extends BaseService
{
/**
* 获取oss签名数据
* @return array
*/
public function getOssSign(): array
{
$user_type = $this->request->input('user_type');
$scene = $this->request->input('scene');
$user_info = $this->request->getAttribute("userInfo") ?? [];
if (empty($user_info)){
return fail();
}
if ($user_type == 1){
$dir = "applet/patient/";
}elseif ($user_type == 2){
$dir = "applet/doctor/";
}elseif ($user_type == 3){
$dir = "applet/pharmacist/";
}
$dir = $dir . $scene;
switch ($scene) {
case 1:
// 头像
$dir = $dir . 'avatar/';
break;
case 2:
// 证书
$dir = $dir . 'cert/';
break;
default:
// code...
break;
}
// 获取用户数据
$params = array();
$params['user_id'] = $user_info['user_id'];
$user = UserModel::getOne($params);
if (empty($user)){
return fail();
}
if ($user['user_type'] != $user_info['user_type']){
return fail();
}
$oss = new Oss();
return success($oss->signature($dir));
}
}