Revize eaf8ace4
Přidáno uživatelem Matěj Zeman před asi 2 roky(ů)
server/sql_app/api/devices_web.py | ||
---|---|---|
11 | 11 |
from fastapi.templating import Jinja2Templates |
12 | 12 |
|
13 | 13 |
models.Base.metadata.create_all(bind=engine) |
14 |
templates = Jinja2Templates(directory="../templates/devices")
|
|
14 |
templates = Jinja2Templates(directory="templates/devices") |
|
15 | 15 |
|
16 | 16 |
device_web = APIRouter(prefix="/api/v1") |
17 | 17 |
|
... | ... | |
28 | 28 |
@device_web.get("/devices-web", response_class=HTMLResponse) |
29 | 29 |
async def read_devices(request: Request, skip: int = 0, limit: int = 100, db: Session = Depends(get_db)): |
30 | 30 |
devices = crud.get_devices(db, skip=skip, limit=limit) |
31 |
return templates.TemplateResponse("devices.html", {"request": request, "devs": devices}) |
|
31 |
statuses = [] |
|
32 |
for i in range(0, len(devices)): |
|
33 |
statuses.append(devices[i].logs[len(devices[i].logs)-1].status) |
|
34 |
licenses = crud.get_licenses(db, skip=skip, limit=limit) |
|
35 |
return templates.TemplateResponse("devices.html", {"request": request, "devs": len(devices), "devices": devices, |
|
36 |
"statuses": statuses, "licenses": licenses}) |
|
32 | 37 |
|
33 | 38 |
|
34 | 39 |
@device_web.post("/devices-web", response_class=HTMLResponse) |
... | ... | |
42 | 47 |
def_devices.append(dev) |
43 | 48 |
if lic == "all": |
44 | 49 |
def_devices = devices |
45 |
return templates.TemplateResponse("devices.html", {"request": request, "devs": def_devices}) |
|
50 |
statuses = [] |
|
51 |
for i in range(0, len(def_devices)): |
|
52 |
statuses.append(def_devices[i].logs[len(def_devices[i].logs) - 1].status) |
|
53 |
licenses = crud.get_licenses(db, skip=skip, limit=limit) |
|
54 |
return templates.TemplateResponse("devices.html", {"request": request, "devs": len(def_devices), "devices": def_devices, |
|
55 |
"statuses": statuses, "licenses": licenses}) |
|
56 |
|
|
57 |
|
|
58 |
@device_web.get("/device-license/{device_id}", response_class=HTMLResponse) |
|
59 |
async def connect_dev_lic(request: Request, device_id: int, db: Session = Depends(get_db)): |
|
60 |
device = crud.get_device(db, device_id) |
|
61 |
licenses = crud.get_licenses(db, 0, 100) |
|
62 |
return templates.TemplateResponse("devicelicense.html", |
|
63 |
{"request": request, "device": device, "licenses": licenses}) |
|
64 |
|
|
65 |
|
|
66 |
@device_web.post("/devices-web/{device_id}", response_class=HTMLResponse) |
|
67 |
async def connect_post(request: Request, device_id: int, lic: str = Form(...), skip: int = 0, limit: int = 100, |
|
68 |
db: Session = Depends(get_db)): |
|
69 |
crud.create_device_license(db, device_id, int(lic), datetime.now()) |
|
70 |
devices = crud.get_devices(db, skip=skip, limit=limit) |
|
71 |
statuses = [] |
|
72 |
for i in range(0, len(devices)): |
|
73 |
statuses.append(devices[i].logs[len(devices[i].logs) - 1].status) |
|
74 |
licenses = crud.get_licenses(db, skip=skip, limit=limit) |
|
75 |
return templates.TemplateResponse("devices.html", {"request": request, "devs": len(devices), "devices": devices, |
|
76 |
"statuses": statuses, "licenses": licenses}) |
Také k dispozici: Unified diff
Added functionality for creating licenses and teams and connecting them to devices a PCs.