| 12345678910111213141516171819202122232425262728293031323334353637 |
- <?php
- namespace App\Http\Controllers\agent;
- use App\Http\Controllers\AgentApiController;
- use App\Services\Agent\AgentAuthService;
- use Illuminate\Http\Request;
- class AuthController extends AgentApiController
- {
- public function login(Request $request, AgentAuthService $service)
- {
- return $this->execute(function () use ($request, $service) {
- $data = $request->validate([
- 'username' => ['required', 'string', 'max:64'],
- 'password' => ['required', 'string', 'max:100'],
- ]);
- $result = $service->login(trim($data['username']), $data['password'], $request);
- $agent = \App\Models\Agent\Agent::query()->where('username', trim($data['username']))->firstOrFail();
- $result['agent'] = [
- 'id' => (int) $agent->id,
- 'username' => $agent->username,
- 'real_name' => $agent->real_name,
- 'invitation_code' => $agent->invitation_code,
- ];
- return $result;
- });
- }
- public function logout(AgentAuthService $service)
- {
- return $this->execute(function () use ($service) {
- $service->logout(request()->attributes->get('agent_token'));
- return [];
- });
- }
- }
|