Added history endpoints
This commit is contained in:
parent
5e3261d1f7
commit
368052f713
1 changed files with 32 additions and 5 deletions
|
@ -1,9 +1,10 @@
|
||||||
|
from fastapi.responses import HTMLResponse, JSONResponse
|
||||||
from fastapi import APIRouter
|
from fastapi import APIRouter
|
||||||
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
import os
|
import os
|
||||||
|
import csv
|
||||||
|
|
||||||
from fastapi.responses import HTMLResponse, JSONResponse
|
|
||||||
|
|
||||||
router = APIRouter()
|
router = APIRouter()
|
||||||
|
|
||||||
|
@ -29,6 +30,32 @@ async def get_file():
|
||||||
return HTMLResponse("\n".join(fp.readlines()))
|
return HTMLResponse("\n".join(fp.readlines()))
|
||||||
|
|
||||||
|
|
||||||
|
@router.get("/file", tags=["file"])
|
||||||
|
async def get_history(count: int = None) -> []:
|
||||||
|
points = []
|
||||||
|
with open(file_path, "r", encoding="UTF-8") as fp:
|
||||||
|
reader = csv.DictReader(fp, delimiter=";")
|
||||||
|
for row in reader:
|
||||||
|
if not row:
|
||||||
|
continue
|
||||||
|
|
||||||
|
points.append(
|
||||||
|
{
|
||||||
|
"timestamp": row["timestamp"],
|
||||||
|
"total": float(row["total"]),
|
||||||
|
"tl": float(row["tl"]),
|
||||||
|
"tr": float(row["tr"]),
|
||||||
|
"bl": float(row["bl"]),
|
||||||
|
"br": float(row["br"]),
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
if count:
|
||||||
|
return points[-count]
|
||||||
|
else:
|
||||||
|
return points
|
||||||
|
|
||||||
|
|
||||||
@router.post("/add")
|
@router.post("/add")
|
||||||
async def add_weight(tl: int, tr: int, bl: int, br: int):
|
async def add_weight(tl: int, tr: int, bl: int, br: int):
|
||||||
global latest_values
|
global latest_values
|
||||||
|
@ -48,10 +75,10 @@ async def get_latest():
|
||||||
total = sum(latest_values)
|
total = sum(latest_values)
|
||||||
return JSONResponse(
|
return JSONResponse(
|
||||||
{
|
{
|
||||||
"top-left": latest_values[0],
|
"tl": latest_values[0],
|
||||||
"top-right": latest_values[1],
|
"tr": latest_values[1],
|
||||||
"bottom-left": latest_values[2],
|
"bl": latest_values[2],
|
||||||
"bottom-right": latest_values[3],
|
"br": latest_values[3],
|
||||||
"total": total,
|
"total": total,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in a new issue