Files
hackathon-innovaflow5.0-cdf…/backend/app/schemas/auth.py
shinra32 45ffba69b2 Co-authored-by: eddgranados12 <eddgranados12@users.noreply.github.com>
Co-authored-by: MENDOZA BALLARDO GAEL RICARDO <gael-meb123@users.noreply.github.com>
Co-authored-by: Azareth-Tr <Azareth-Tr@users.noreply.github.com>

modificacion de las vistas principales para el usuario ciudadano, primer avance para el panel admin
2026-05-23 03:13:46 -06:00

32 lines
973 B
Python

from pydantic import BaseModel, EmailStr
from typing import Optional, Literal
class RegisterRequest(BaseModel):
email: Optional[str] = None
phone: Optional[str] = None
password: str
role: Literal["citizen", "driver", "admin"] = "citizen"
# Dirección inicial (opcional, se guarda en el mismo request para evitar un segundo HTTP call)
address_label: Optional[str] = None
address_calle: Optional[str] = None
address_colonia: Optional[str] = None
address_lat: Optional[float] = None
address_lng: Optional[float] = None
class LoginRequest(BaseModel):
email: Optional[str] = None
phone: Optional[str] = None
password: str
class TokenResponse(BaseModel):
access_token: str
token_type: str = "bearer"
user_id: str
role: str
# route_id se incluye opcionalmente para ciudadanos; permite al cliente
# suscribirse al topic correcto inmediatamente después del login.
route_id: Optional[str] = None