30 lines
799 B
Python
30 lines
799 B
Python
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('/<org_id>/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',
|
|
),
|
|
)
|