File: /var/www/api_matriculas/app/Http/Controllers/AuthController.php
<?php
namespace App\Http\Controllers;
use App\Services\AuthService;
use Exception;
use Illuminate\Http\Request;
class AuthController extends Controller
{
private $authService;
public function __construct(AuthService $authService)
{
$this->authService = $authService;
}
public function login(Request $request)
{
try {
$data = $this->authService->login($request);
return genericResponse(['data' => $data, 'message' => 'OK', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function activateAccount(Request $request)
{
try {
$data = $this->authService->activateAccount($request);
return genericResponse(['data' => $data, 'message' => 'OK', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function validateCodeActivation(Request $request)
{
try {
$data = $this->authService->validateCodeActivation($request);
return genericResponse(['data' => $data, 'message' => 'OK', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function activatePasswordWithCode(Request $request)
{
try {
$data = $this->authService->activatePasswordWithCode($request);
return genericResponse(['data' => $data, 'message' => 'OK', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function sendRecoveryCode(Request $request)
{
try {
$data = $this->authService->sendRecoveryCode($request);
return genericResponse(['data' => $data, 'message' => 'OK', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function validateCode(Request $request)
{
try {
$data = $this->authService->validateCode($request);
return genericResponse(['data' => $data, 'message' => 'OK', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function resetPassword(Request $request)
{
try {
$data = $this->authService->resetPassword($request);
return genericResponse(['data' => $data, 'message' => 'OK', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function loginApi(Request $request)
{
try {
$data = $this->authService->login($request, 'api');
return genericResponse(['data' => $data, 'message' => 'OK', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function validateSession(Request $request)
{
try {
$data = $this->authService->validateSession($request);
return genericResponse(['data' => $data, 'message' => 'OK', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function getUser($id)
{
try {
$data = $this->authService->getUser($id);
return genericResponse(['data' => $data, 'message' => 'OK', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
public function logout(Request $request)
{
try {
$data = $this->authService->logout($request);
return genericResponse(['data' => null, 'message' => 'OK', 'code' => 200], 200);
} catch (Exception $e) {
$errorCode = $e->getCode();
return genericResponse(['error' => $e->getMessage()], $errorCode ? $errorCode : 500);
}
}
}