from fastapi import FastAPI

from app.api.auth import router as auth_router
from app.api.workspace import router as workspace_router
from app.api.products import router as products_router
from app.api.customers import router as customers_router
from app.api.suppliers import router as suppliers_router
from app.api.purchases import router as purchases_router
from app.api.sales import router as sales_router
from app.api.receivables import router as receivables_router
from app.api.invoices import router as invoices_router
from app.api.quotes import router as quotes_router
from app.api.expense_income import router as expense_income_router
from app.api.staff import router as staff_router
from app.api.payroll import router as payroll_router
from app.api.deliveries import router as deliveries_router
from app.api.loyalty import router as loyalty_router
from app.api.day_close import router as day_close_router
from app.api.reports import router as reports_router
from app.api.search import router as search_router
from app.api.notifications import router as notifications_router
from app.api.audit import router as audit_router
from app.api.admin import router as admin_router


app = FastAPI(
    title="AAD Business App API",
    version="0.1.0",
)


app.include_router(auth_router)
app.include_router(workspace_router)
app.include_router(products_router)
app.include_router(customers_router)
app.include_router(suppliers_router)
app.include_router(purchases_router)
app.include_router(sales_router)
app.include_router(receivables_router)
app.include_router(invoices_router)
app.include_router(quotes_router)
app.include_router(expense_income_router)
app.include_router(staff_router)
app.include_router(payroll_router)
app.include_router(deliveries_router)
app.include_router(loyalty_router)
app.include_router(day_close_router)
app.include_router(reports_router)
app.include_router(search_router)
app.include_router(notifications_router)
app.include_router(audit_router)
app.include_router(admin_router)


@app.get("/")
def root():
    return {
        "app": "AAD Business App",
        "company": "AAD Digital Technology",
        "status": "running",
    }


@app.get("/api/health")
def health():
    return {
        "status": "ok",
        "service": "AAD Business App API",
    }
