Files
fdesk/app/common/controller/AuthController.php
T

115 lines
4.0 KiB
PHP
Raw Normal View History

2025-07-01 19:39:13 +08:00
<?php
namespace app\common\controller;
use app\common\service\AuthService;
use app\common\validate\UserValidate;
use support\Request;
class AuthController extends BaseController
{
2025-07-09 19:11:57 +08:00
/**
* 不需要头信息的方法
*/
2025-07-18 17:32:42 +08:00
protected $noNeedHeaderData = ['feishuAuth'];
2025-07-09 19:11:57 +08:00
2025-07-11 15:21:00 +08:00
protected $noNeedLogin = ['feishuScope', 'login', 'register', 'feishuAuth'];
2025-07-09 19:11:57 +08:00
// 调试
public function feishuAuth(Request $request)
{
try {
$code = $request->all();
return $this->success($code);
} catch (\Throwable $e) {
return $this->error($e->getMessage());
}
}
public function feishuScope(Request $request)
{
try {
$result = (new AuthService())->feishuAuthorize($request->corp_abbr, $request->system_code);
return $this->success($result);
} catch (\Throwable $e) {
return $this->error($e->getMessage());
}
}
2025-07-01 19:39:13 +08:00
public function login(Request $request)
{
try {
2025-07-09 19:11:57 +08:00
$data = $this->validate(new UserValidate(), $this->requestData($request), $request->login_type.'_login');
2025-07-01 19:39:13 +08:00
$result = (new AuthService())->login($data);
return $this->success($result, '登录成功');
} catch (\Throwable $e) {
return $this->error($e->getMessage());
}
}
public function register(Request $request)
{
try {
2025-07-09 19:11:57 +08:00
$data = $this->validate(new UserValidate(), $this->requestData($request), $request->login_type.'_register');
2025-07-01 19:39:13 +08:00
$result = (new AuthService())->register($data);
return $this->success($result, '注册成功');
} catch (\Throwable $e) {
2025-07-09 19:11:57 +08:00
return $this->error($e->getMessage());
2025-07-01 19:39:13 +08:00
}
}
public function refresh(Request $request)
{
try {
2025-07-11 15:21:00 +08:00
$data = $this->requestData($request);
if (!$data['refresh_token'] || !$data['system_code']) return $this->error('参数缺失', 422);
$result = (new AuthService())->refreshToken($data['refresh_token'], $data['system_code']);
2025-07-01 19:39:13 +08:00
return $this->success($result, '刷新成功');
} catch (\Throwable $e) {
return $this->error($e->getMessage(), 401);
}
}
2025-07-11 15:21:00 +08:00
// public function perm(Request $request)
// {
// try {
// $data = $this->requestData($request);
// if (!$data['access_token'] || !$data['system_code']) return $this->error('参数缺失', 422);
// $result = (new AuthService())->logout($data['access_token'], $data['system_code']);
// return $this->success($result, '已登出');
// } catch (\Throwable $e) {}
// }
// public function verify(Request $request)
// {
// try {
// $token = $request->post('access_token') ?: $request->header('authorization');
// $systemCode = $request->post('system_code');
// if (!$token || !$systemCode) return $this->error('参数缺失', 422);
// $payload = (new AuthService())->verifyToken($token, $systemCode);
// return $this->success($payload, '验证成功');
// } catch (\Throwable $e) {
// return $this->error($e->getMessage() ?: '无效或过期的token', 401);
// }
// }
// public function logout(Request $request)
// {
// $token = $request->post('access_token') ?: $request->header('Authorization');
// $systemCode = $request->post('system_code') ?: $request->header('system_code');
// (new AuthService())->logout($token, $systemCode);
// return $this->success([], '已登出');
// }
// public function blockToken(Request $request)
// {
// $token = $request->post('token');
// $systemCode = $request->post('system_code');
// if (!$token || !$systemCode) return $this->error('参数缺失', 422);
// (new AuthService())->blockToken($token, $systemCode);
// return $this->success([], '已强制停用该token');
// }
2025-07-01 19:39:13 +08:00
}