Projekt

Obecné

Profil

Stáhnout (1.05 KB) Statistiky
| Větev: | Tag: | Revize:
1 6c1e92e3 Matej Zeman
from typing import List
2
3
from fastapi import Depends, FastAPI, HTTPException, APIRouter
4
from sqlalchemy.orm import Session
5
from ...sql_app import crud, models, schemas
6
from ..database import SessionLocal, engine
7
8
models.Base.metadata.create_all(bind=engine)
9
10
licenses = APIRouter()
11
12
13
# Dependency
14
def get_db():
15
    db = SessionLocal()
16
    try:
17
        yield db
18
    finally:
19
        db.close()
20
21
22
@licenses.post("/license/", response_model=schemas.License)
23
def create_license(license: schemas.LicenseCreate, db: Session = Depends(get_db)):
24
    print(crud.create_license(db=db, license=license))
25
26
27
@licenses.get("/licenses/", response_model=List[schemas.License])
28
def read_licenses(skip: int = 0, limit: int = 100, db: Session = Depends(get_db)):
29
    licenses = crud.get_licenses(db, skip=skip, limit=limit)
30
    return licenses
31
32
33
@licenses.post("/device_license/", response_model=schemas.DeviceLicense)
34
def create_device_license(device_license: schemas.DeviceLicenseCreate, db: Session = Depends(get_db)):
35
    print(crud.create_device_license(db=db, device_license=device_license))