Files
asuinventory/backend/main.py
2026-05-11 15:12:34 +03:00

58 lines
1.5 KiB
Python

# backend/main.py
from fastapi import FastAPI
from fastapi.responses import RedirectResponse
from starlette.staticfiles import StaticFiles
from fastapi.middleware.cors import CORSMiddleware
from backend.routers.equipment_types import equipment_types
from backend.routers.auditories import auditories
from backend.routers.oboruds import oboruds
from backend.routers.components import components
from backend.routers.rashodniki import consumables
from backend.routers.zametki import zametki
from backend.routers.auth import auth
from backend.routers.owners import owners
from backend.routers.inspections import inspections
app = FastAPI()
# Для фронтенда Vue.js
app.add_middleware(
CORSMiddleware,
allow_origins=["*"], # заменить на ['http://localhost:5173'] для безопасности
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
@app.get("/ping")
def ping():
return {"message": "pong"}
# Serve frontend
app.mount("/app", StaticFiles(directory="frontend", html=True), name="frontend")
@app.get("/")
def root():
return RedirectResponse(url="/app/")
@app.get("/login")
def login_page():
return RedirectResponse(url="/app/login.html")
# Подключение роутов
app.include_router(equipment_types)
app.include_router(auditories)
app.include_router(oboruds)
app.include_router(components)
app.include_router(consumables)
app.include_router(zametki)
app.include_router(auth)
app.include_router(owners)
app.include_router(inspections)