Revize b6f0e019
Přidáno uživatelem Matěj Zeman před asi 2 roky(ů)
server/sql_app/api/licenses.py | ||
---|---|---|
2 | 2 |
|
3 | 3 |
from fastapi import Depends, FastAPI, HTTPException, APIRouter, Form |
4 | 4 |
from sqlalchemy.orm import Session |
5 |
from datetime import date |
|
5 |
from datetime import datetime
|
|
6 | 6 |
from sql_app import crud, models, schemas |
7 | 7 |
from ..database import SessionLocal, engine |
8 |
from fastapi import FastAPI, Request |
|
9 |
from fastapi.responses import HTMLResponse |
|
10 |
from fastapi.staticfiles import StaticFiles |
|
11 |
from fastapi.templating import Jinja2Templates |
|
12 | 8 |
|
13 | 9 |
models.Base.metadata.create_all(bind=engine) |
14 |
templates = Jinja2Templates(directory="templates/licenses") |
|
15 | 10 |
|
16 | 11 |
licenses = APIRouter(prefix="/api/v1") |
17 | 12 |
|
... | ... | |
25 | 20 |
db.close() |
26 | 21 |
|
27 | 22 |
|
28 |
@licenses.get("/license-create", response_class=HTMLResponse) |
|
29 |
async def licenses_create_web(request: Request): |
|
30 |
return templates.TemplateResponse("license_create.html", {"request": request}) |
|
31 |
|
|
32 |
|
|
33 |
@licenses.get("/licenses-web", response_class=HTMLResponse) |
|
34 |
async def licenses_web(request: Request, skip: int = 0, limit: int = 100, db: Session = Depends(get_db)): |
|
35 |
licenses = crud.get_licenses(db, skip=skip, limit=limit) |
|
36 |
return templates.TemplateResponse("licenses.html", {"request": request, "licenses": licenses}) |
|
37 |
|
|
38 |
|
|
39 |
@licenses.post("/licenses-web", response_class=HTMLResponse) |
|
40 |
def create_license(request: Request, name: str = Form(...), expdate: date = Form(...), skip: int = 0, limit: int = 100, |
|
41 |
db: Session = Depends(get_db)): |
|
42 |
db_license = crud.create_license(db, name, expdate) |
|
43 |
if db_license is None: |
|
44 |
print("something went wrong") |
|
45 |
licenses = crud.get_licenses(db, skip=skip, limit=limit) |
|
46 |
return templates.TemplateResponse("licenses.html", {"request": request, "licenses": licenses}) |
|
47 |
|
|
48 |
|
|
49 | 23 |
@licenses.get("/licenses", response_model=List[schemas.License]) |
50 | 24 |
def read_licenses(skip: int = 0, limit: int = 100, db: Session = Depends(get_db)): |
51 | 25 |
licenses = crud.get_licenses(db, skip=skip, limit=limit) |
... | ... | |
54 | 28 |
|
55 | 29 |
@licenses.post("/device-license", response_model=schemas.DeviceLicense) |
56 | 30 |
def create_device_license(device_license: schemas.DeviceLicenseCreate, db: Session = Depends(get_db)): |
57 |
print(crud.create_device_license(db=db, device_license=device_license)) |
|
31 |
print(crud.create_device_license(db=db, device=device_license.device_id, license=device_license.license_id, |
|
32 |
time=datetime.now())) |
Také k dispozici: Unified diff
re #9575 Filtering Over logs and devices.