2024-07-13 17:56:34 +00:00
|
|
|
from starlette.requests import Request
|
|
|
|
from starlette.responses import HTMLResponse
|
|
|
|
from starlette.templating import Jinja2Templates
|
|
|
|
|
2024-07-14 18:37:00 +00:00
|
|
|
from typing import Annotated
|
|
|
|
|
|
|
|
from fastapi import APIRouter, Depends
|
|
|
|
from sqlalchemy.ext.asyncio import AsyncSession
|
|
|
|
|
|
|
|
from models import db_helper
|
|
|
|
|
|
|
|
from crud import isp as isp_crud
|
|
|
|
from fastapi.encoders import jsonable_encoder
|
2024-07-13 17:56:34 +00:00
|
|
|
|
|
|
|
router = APIRouter(
|
2024-07-14 18:37:00 +00:00
|
|
|
tags=["Web"],
|
2024-07-13 17:56:34 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
templates = Jinja2Templates(directory="views/templates")
|
|
|
|
|
|
|
|
|
2024-07-14 18:37:00 +00:00
|
|
|
@router.get("/get_all", response_class=HTMLResponse)
|
|
|
|
async def get_all_isp(
|
|
|
|
request: Request,
|
|
|
|
session: Annotated[AsyncSession, Depends(db_helper.session_getter)],
|
|
|
|
):
|
|
|
|
isps = jsonable_encoder(
|
|
|
|
await isp_crud.get_all_isp(
|
|
|
|
session=session,
|
|
|
|
)
|
|
|
|
)
|
|
|
|
print(isps)
|
2024-07-13 17:56:34 +00:00
|
|
|
return templates.TemplateResponse(
|
2024-07-14 18:37:00 +00:00
|
|
|
"body-isp.html",
|
2024-07-13 17:56:34 +00:00
|
|
|
{
|
|
|
|
"request": request,
|
2024-07-14 18:37:00 +00:00
|
|
|
"isps": isps,
|
2024-07-13 17:56:34 +00:00
|
|
|
},
|
|
|
|
)
|