admin frontend elkezdése, járművek tisztázása, frontend fejleszts
This commit is contained in:
@@ -305,4 +305,45 @@ async def get_current_user_profile(
|
||||
from app.schemas.user import UserResponse
|
||||
from app.api.v1.endpoints.users import _build_user_response
|
||||
response_data = _build_user_response(current_user)
|
||||
return UserResponse.model_validate(response_data)
|
||||
return UserResponse.model_validate(response_data)
|
||||
|
||||
|
||||
# ── 30 NAPOS FIÓKVISSZAÁLLÍTÁS (RESTORE) ──
|
||||
|
||||
class RestoreRequestIn(BaseModel):
|
||||
email: EmailStr = Field(..., description="A törölt fiók email címe")
|
||||
|
||||
class RestoreVerifyIn(BaseModel):
|
||||
email: EmailStr = Field(..., description="A törölt fiók email címe")
|
||||
code: str = Field(..., min_length=6, max_length=6, description="6-jegyű visszaállítási kód")
|
||||
|
||||
@router.post("/restore/request")
|
||||
async def restore_account_request(
|
||||
request: RestoreRequestIn,
|
||||
db: AsyncSession = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Fiók visszaállítási kód kérése.
|
||||
Ha a fiók 30 napon belül lett törölve, 6-jegyű OTP kódot küld.
|
||||
Ha 30 napon túl van, új regisztrációt engedélyez.
|
||||
"""
|
||||
result = await AuthService.request_account_restore(db, request.email)
|
||||
return result
|
||||
|
||||
|
||||
@router.post("/restore/verify")
|
||||
async def restore_account_verify(
|
||||
request: RestoreVerifyIn,
|
||||
db: AsyncSession = Depends(get_db),
|
||||
):
|
||||
"""
|
||||
Fiók visszaállítási kód ellenőrzése.
|
||||
Sikeres ellenőrzés után visszaállítja a fiókot (is_active=True, is_deleted=False, deleted_at=None).
|
||||
"""
|
||||
result = await AuthService.verify_account_restore(db, request.email, request.code)
|
||||
if result.get("status") != "success":
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_400_BAD_REQUEST,
|
||||
detail=result.get("message", "Érvénytelen vagy lejárt kód.")
|
||||
)
|
||||
return result
|
||||
Reference in New Issue
Block a user