This commit is contained in:
Danamir
2025-11-10 08:25:56 +03:00
parent 86713fc75f
commit b1e0693131
5 changed files with 19 additions and 7 deletions

2
backend/__init__.py Normal file
View File

@@ -0,0 +1,2 @@
"""Backend package initializer."""

View File

@@ -1,5 +1,6 @@
# backend/main.py # backend/main.py
from fastapi import FastAPI from fastapi import FastAPI
from fastapi.responses import RedirectResponse
from fastapi.middleware.cors import CORSMiddleware from fastapi.middleware.cors import CORSMiddleware
from backend.routers.equipment_types import equipment_types from backend.routers.equipment_types import equipment_types
@@ -28,10 +29,15 @@ def ping():
return {"message": "pong"} return {"message": "pong"}
@app.get("/")
def root():
return RedirectResponse(url="/docs")
# Подключение роутов # Подключение роутов
app.include_router(equipment_types) app.include_router(equipment_types)
app.include_router(auditories) app.include_router(auditories)
app.include_router(oboruds) app.include_router(oboruds)
app.include_router(components) app.include_router(components)
app.include_router(consumables) app.include_router(consumables)
app.include_router(zametki) app.include_router(zametki)

View File

@@ -3,11 +3,9 @@
from sqlalchemy import Column, Integer, String, ForeignKey, DateTime from sqlalchemy import Column, Integer, String, ForeignKey, DateTime
from sqlalchemy.orm import relationship, declarative_base from sqlalchemy.orm import relationship, declarative_base
import datetime import datetime
from flask_sqlalchemy import SQLAlchemy
Base = declarative_base() Base = declarative_base()
db = SQLAlchemy()

View File

@@ -0,0 +1,2 @@
"""Routers package initializer."""

View File

@@ -1,4 +1,5 @@
from fastapi import APIRouter, Depends from fastapi import APIRouter, Depends, HTTPException
from typing import Optional
from sqlalchemy.orm import Session from sqlalchemy.orm import Session
from .. import models, schemas, database from .. import models, schemas, database
@@ -13,12 +14,15 @@ def create_oborud(item: schemas.OborudCreate, db: Session = Depends(database.get
return obj return obj
@oboruds.get("/", response_model=list[schemas.OborudRead]) @oboruds.get("/", response_model=list[schemas.OborudRead])
def list_oboruds(db: Session = Depends(database.get_db)): def list_oboruds(aud_id: Optional[int] = None, db: Session = Depends(database.get_db)):
return db.query(models.Oboruds).all() query = db.query(models.Oboruds)
if aud_id is not None:
query = query.filter(models.Oboruds.aud_id == aud_id)
return query.all()
@oboruds.get("/{oborud_id}", response_model=schemas.OborudRead) @oboruds.get("/{oborud_id}", response_model=schemas.OborudRead)
def get_oborud(oborud_id: int, db: Session = Depends(database.get_db)): def get_oborud(oborud_id: int, db: Session = Depends(database.get_db)):
obj = db.query(models.Oboruds).filter(models.Oboruds.id == oborud_id).first() obj = db.query(models.Oboruds).filter(models.Oboruds.id == oborud_id).first()
if not obj: if not obj:
raise HTTPException(status_code=404, detail="Oborud not found") raise HTTPException(status_code=404, detail="Oborud not found")
return obj return obj