feat: end-point for bill of payment generation
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
from io import BytesIO
|
||||
from typing import Annotated
|
||||
|
||||
from fastapi import APIRouter, Depends
|
||||
from fastapi import APIRouter, Depends, Response
|
||||
from sqlalchemy.ext.asyncio import AsyncSession
|
||||
|
||||
from backend.dependecies import SessionDependency, CurrentUserDependency
|
||||
@@ -8,6 +9,7 @@ from backend.session import get_session
|
||||
from models import User
|
||||
from schemas.deal import *
|
||||
from services.auth import get_current_user, authorized_user, guest_user
|
||||
from services.billing import BillingService
|
||||
from services.deal import DealService
|
||||
|
||||
deal_router = APIRouter(
|
||||
@@ -162,6 +164,18 @@ async def create_guest_url(
|
||||
return DealService(session).create_guest_url(user, request)
|
||||
|
||||
|
||||
@deal_router.get(
|
||||
'/document/{deal_id}',
|
||||
operation_id='get_deal_document',
|
||||
# dependencies=[Depends(authorized_user)],
|
||||
)
|
||||
async def get_deal_document(
|
||||
deal_id: int,
|
||||
session: Annotated[AsyncSession, Depends(get_session)],
|
||||
):
|
||||
pdf_file: BytesIO = await BillingService(session).create_billing_document_pdf(deal_id)
|
||||
return Response(pdf_file.getvalue(), media_type='application/pdf')
|
||||
|
||||
# endregion
|
||||
|
||||
# region Deal services
|
||||
|
||||
Reference in New Issue
Block a user