mirror of
http://124.126.16.154:8888/singularity/hyperf-admin.git
synced 2026-01-15 03:35:07 +08:00
将多个文件的权限从644更改为755以允许执行 添加release.sh和docker-env.sh脚本以支持发布流程 添加Gitea工作流配置文件以实现自动化发布 添加.versionrc文件以规范版本更新日志格式
80 lines
1.9 KiB
PHP
Executable File
80 lines
1.9 KiB
PHP
Executable File
<?php
|
|
namespace HyperfAdmin\Admin\Service;
|
|
|
|
use HyperfAdmin\Admin\Model\User;
|
|
|
|
class UserService
|
|
{
|
|
public function getUser($filter)
|
|
{
|
|
if (!is_array($filter)) {
|
|
$where = ['id' => (int)$filter];
|
|
} else {
|
|
$where = $filter;
|
|
}
|
|
$user = make(User::class)->where2query($where)->select([
|
|
'id',
|
|
'username',
|
|
'realname',
|
|
'mobile',
|
|
'email',
|
|
'status',
|
|
'is_admin',
|
|
'avatar',
|
|
'roles',
|
|
])->first();
|
|
if (!$user) {
|
|
return false;
|
|
}
|
|
|
|
return $user->toArray();
|
|
}
|
|
|
|
public function batchGetUser(array $ids, $status = YES)
|
|
{
|
|
$users = User::query()->whereIn('id', $ids)->where('status', $status)->select([
|
|
'id',
|
|
'username',
|
|
'realname',
|
|
'mobile',
|
|
'email',
|
|
'status',
|
|
'is_admin',
|
|
'avatar',
|
|
'roles',
|
|
])->get();
|
|
if (!$users) {
|
|
return false;
|
|
}
|
|
|
|
return $users->toArray();
|
|
}
|
|
|
|
public function findUserOrCreate($sso_user_info)
|
|
{
|
|
$where = empty($sso_user_info['mobile']) ? [
|
|
'username' => $sso_user_info['name'],
|
|
] : [
|
|
'username' => [$sso_user_info['name'], $sso_user_info['mobile']],
|
|
];
|
|
$user_info = $this->getUser($where);
|
|
if ($user_info) {
|
|
return $user_info;
|
|
}
|
|
$data = [
|
|
'username' => $sso_user_info['mobile'],
|
|
'mobile' => $sso_user_info['mobile'],
|
|
'avatar' => $sso_user_info['avatar'] ?? '',
|
|
'password' => '',
|
|
'status' => YES,
|
|
'realname' => $sso_user_info['name'] ?? '',
|
|
'login_time' => date("Y-m-d H:i:s"),
|
|
'login_ip' => '',
|
|
];
|
|
$user = new User($data);
|
|
$user->save();
|
|
|
|
return $user->toArray();
|
|
}
|
|
}
|