from datetime import date from typing import Annotated from aws_lambda_powertools import Logger 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 ENROLLMENT_TABLE logger = Logger(__name__) router = Router() dyn = DynamoDBPersistenceLayer(ENROLLMENT_TABLE, dynamodb_client) @router.get('//enrollments/certs') def certs( org_id: str, month: Annotated[date, Query()], ): year_month = month.strftime('%Y-%m') return dyn.collection.query( KeyPair( f'CERT_REPORTING#ORG#{org_id}', f'MONTH#{year_month}#ENROLLMENT', ), )