From 319016a361ef5b6fe9d0088d3a3df2ee4c11ddba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20Rafael=20Siqueira?= Date: Fri, 12 Dec 2025 12:16:21 -0300 Subject: [PATCH] add billing --- .../app/routes/orgs/billing.py | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 api.saladeaula.digital/app/routes/orgs/billing.py diff --git a/api.saladeaula.digital/app/routes/orgs/billing.py b/api.saladeaula.digital/app/routes/orgs/billing.py new file mode 100644 index 0000000..f94ed9d --- /dev/null +++ b/api.saladeaula.digital/app/routes/orgs/billing.py @@ -0,0 +1,27 @@ +from datetime import date +from typing import Annotated + +from aws_lambda_powertools.event_handler.api_gateway import Router +from aws_lambda_powertools.event_handler.openapi.params import Query +from layercake.dynamodb import DynamoDBPersistenceLayer, KeyPair + +from boto3clients import dynamodb_client +from config import COURSE_TABLE + +router = Router() +dyn = DynamoDBPersistenceLayer(COURSE_TABLE, dynamodb_client) + + +@router.get('//billing') +def get_custom_pricing( + org_id: str, + start_date: Annotated[date, Query()], + end_date: Annotated[date, Query()], +): + return dyn.collection.query( + KeyPair( + pk=f'BILLING#ORG#{org_id}', + sk=f'START#{start_date}#END#{end_date}', + ), + limit=150, + )