2025-12-07 03:29:54 +01:00
|
|
|
"""
|
|
|
|
|
Billing Frontend Views
|
|
|
|
|
Serves HTML pages for billing features
|
|
|
|
|
"""
|
|
|
|
|
|
2025-12-08 09:15:52 +01:00
|
|
|
from fastapi import APIRouter, Request
|
|
|
|
|
from fastapi.templating import Jinja2Templates
|
|
|
|
|
from fastapi.responses import HTMLResponse
|
2025-12-07 03:29:54 +01:00
|
|
|
|
|
|
|
|
router = APIRouter()
|
2025-12-08 09:15:52 +01:00
|
|
|
templates = Jinja2Templates(directory="app")
|
2025-12-07 03:29:54 +01:00
|
|
|
|
|
|
|
|
|
2025-12-08 09:15:52 +01:00
|
|
|
@router.get("/billing/supplier-invoices", response_class=HTMLResponse)
|
|
|
|
|
async def supplier_invoices_page(request: Request):
|
2025-12-07 03:29:54 +01:00
|
|
|
"""Supplier invoices (kassekladde) page"""
|
2025-12-08 09:15:52 +01:00
|
|
|
return templates.TemplateResponse("billing/frontend/supplier_invoices.html", {
|
|
|
|
|
"request": request,
|
|
|
|
|
"title": "Kassekladde"
|
|
|
|
|
})
|
2025-12-07 03:29:54 +01:00
|
|
|
|
|
|
|
|
|
2025-12-08 09:15:52 +01:00
|
|
|
@router.get("/billing/template-builder", response_class=HTMLResponse)
|
|
|
|
|
async def template_builder_page(request: Request):
|
2025-12-07 03:29:54 +01:00
|
|
|
"""Template builder for supplier invoice extraction"""
|
2025-12-08 09:15:52 +01:00
|
|
|
return templates.TemplateResponse("billing/frontend/template_builder.html", {
|
|
|
|
|
"request": request,
|
|
|
|
|
"title": "Template Builder"
|
|
|
|
|
})
|
2025-12-07 03:29:54 +01:00
|
|
|
|
|
|
|
|
|
2025-12-08 09:15:52 +01:00
|
|
|
@router.get("/billing/templates", response_class=HTMLResponse)
|
|
|
|
|
async def templates_list_page(request: Request):
|
2025-12-07 03:29:54 +01:00
|
|
|
"""Templates list and management page"""
|
2025-12-08 09:15:52 +01:00
|
|
|
return templates.TemplateResponse("billing/frontend/templates_list.html", {
|
|
|
|
|
"request": request,
|
|
|
|
|
"title": "Templates"
|
|
|
|
|
})
|