# routers/employees.py
from fastapi import APIRouter, HTTPException, status
from pydantic import BaseModel
# 1. Create the APIRouter instance
router = APIRouter(
prefix="/employees",
tags=["Employees"]
)
class Employee(BaseModel):
id: int
name: str
department: str
# Sample Mock Database
EMPLOYEES = [
Employee(id=1, name="Alice", department="Engineering"),
Employee(id=2, name="Bob", department="HR")
]
# 2. Add endpoints using @router instead of @app
@router.get("/", response_model=list[Employee])
def list_employees():
return EMPLOYEES
@router.get("/{emp_id}", response_model=Employee)
def get_employee(emp_id: int):
for emp in EMPLOYEES:
if emp.id == emp_id:
return emp
raise HTTPException(status_code=404, detail="Employee not found")