feat: Update endpoint login

This commit is contained in:
Backend IM Bot 2025-03-12 17:54:30 +00:00
parent f9784cec3b
commit 2a1d9d70ff

View File

@ -1,7 +1,31 @@
from fastapi import APIRouter from typing import Optional
from fastapi import APIRouter, Depends, HTTPException, status
from sqlalchemy.orm import Session
from models import User
from schemas import UserCreate
from database import get_db
from utils import hash_password
router = APIRouter() router = APIRouter()
@router.post("/login") @router.post("/register", response_model=UserCreate)
async def login(username: str, password: str): async def register(user: UserCreate, db: Session = Depends(get_db)):
return {"message": "User logged in successfully", "username": username} """
Register a new user
"""
existing_user = db.query(User).filter(User.email == user.email).first()
if existing_user:
raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="Email already registered")
hashed_password = hash_password(user.password)
new_user = User(
email=user.email,
password=hashed_password,
address=user.address,
dob=user.dob,
phone_number=user.phone_number
)
db.add(new_user)
db.commit()
db.refresh(new_user)
return new_user