add mid
This commit is contained in:
@@ -1,5 +1,6 @@
|
|||||||
from http import HTTPStatus
|
from http import HTTPStatus
|
||||||
|
|
||||||
|
from aws_lambda_powertools import Logger
|
||||||
from aws_lambda_powertools.event_handler.api_gateway import Router
|
from aws_lambda_powertools.event_handler.api_gateway import Router
|
||||||
from aws_lambda_powertools.event_handler.exceptions import NotFoundError
|
from aws_lambda_powertools.event_handler.exceptions import NotFoundError
|
||||||
from layercake.dynamodb import DynamoDBPersistenceLayer, KeyPair
|
from layercake.dynamodb import DynamoDBPersistenceLayer, KeyPair
|
||||||
@@ -18,6 +19,7 @@ from models import Course
|
|||||||
from rules.course import create_course, update_course
|
from rules.course import create_course, update_course
|
||||||
|
|
||||||
router = Router()
|
router = Router()
|
||||||
|
logger = Logger(__name__)
|
||||||
meili_client = Meilisearch(MEILISEARCH_HOST, MEILISEARCH_API_KEY)
|
meili_client = Meilisearch(MEILISEARCH_HOST, MEILISEARCH_API_KEY)
|
||||||
course_layer = DynamoDBPersistenceLayer(COURSE_TABLE, dynamodb_client)
|
course_layer = DynamoDBPersistenceLayer(COURSE_TABLE, dynamodb_client)
|
||||||
user_layer = DynamoDBPersistenceLayer(USER_TABLE, dynamodb_client)
|
user_layer = DynamoDBPersistenceLayer(USER_TABLE, dynamodb_client)
|
||||||
@@ -36,15 +38,19 @@ def get_courses():
|
|||||||
page = int(event.get_query_string_value('page', '1'))
|
page = int(event.get_query_string_value('page', '1'))
|
||||||
hits_per_page = int(event.get_query_string_value('hitsPerPage', '25'))
|
hits_per_page = int(event.get_query_string_value('hitsPerPage', '25'))
|
||||||
|
|
||||||
return meili_client.index(COURSE_TABLE).search(
|
try:
|
||||||
query,
|
return meili_client.index(COURSE_TABLE).search(
|
||||||
{
|
query,
|
||||||
'sort': [sort],
|
{
|
||||||
'locales': ['pt'],
|
'sort': [sort],
|
||||||
'page': page,
|
'locales': ['pt'],
|
||||||
'hitsPerPage': hits_per_page,
|
'page': page,
|
||||||
},
|
'hitsPerPage': hits_per_page,
|
||||||
)
|
},
|
||||||
|
)
|
||||||
|
except Exception as exc:
|
||||||
|
logger.exception(exc)
|
||||||
|
raise
|
||||||
|
|
||||||
|
|
||||||
@router.post(
|
@router.post(
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ import urllib.parse as parse
|
|||||||
from http import HTTPStatus
|
from http import HTTPStatus
|
||||||
from typing import Annotated
|
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.api_gateway import Router
|
||||||
from aws_lambda_powertools.event_handler.exceptions import (
|
from aws_lambda_powertools.event_handler.exceptions import (
|
||||||
BadRequestError as PowertoolsBadRequestError,
|
BadRequestError as PowertoolsBadRequestError,
|
||||||
@@ -41,6 +42,7 @@ router = Router()
|
|||||||
user_layer = DynamoDBPersistenceLayer(USER_TABLE, dynamodb_client)
|
user_layer = DynamoDBPersistenceLayer(USER_TABLE, dynamodb_client)
|
||||||
user_collect = DynamoDBCollection(user_layer, exc_cls=BadRequestError)
|
user_collect = DynamoDBCollection(user_layer, exc_cls=BadRequestError)
|
||||||
meili_client = Meilisearch(MEILISEARCH_HOST, MEILISEARCH_API_KEY) # noqa: F821
|
meili_client = Meilisearch(MEILISEARCH_HOST, MEILISEARCH_API_KEY) # noqa: F821
|
||||||
|
logger = Logger(__name__)
|
||||||
|
|
||||||
|
|
||||||
@router.get(
|
@router.get(
|
||||||
@@ -70,16 +72,20 @@ def get_users():
|
|||||||
},
|
},
|
||||||
] + filter_
|
] + filter_
|
||||||
|
|
||||||
return meili_client.index(USER_TABLE).search(
|
try:
|
||||||
query,
|
return meili_client.index(USER_TABLE).search(
|
||||||
{
|
query,
|
||||||
'sort': [sort],
|
{
|
||||||
'locales': ['pt'],
|
'sort': [sort],
|
||||||
'page': page,
|
'locales': ['pt'],
|
||||||
'hitsPerPage': hits_per_page,
|
'page': page,
|
||||||
'filter': meili.encode(filter_),
|
'hitsPerPage': hits_per_page,
|
||||||
},
|
'filter': meili.encode(filter_),
|
||||||
)
|
},
|
||||||
|
)
|
||||||
|
except Exception as exc:
|
||||||
|
logger.exception(exc)
|
||||||
|
raise
|
||||||
|
|
||||||
|
|
||||||
class UserData(BaseModel):
|
class UserData(BaseModel):
|
||||||
|
|||||||
@@ -115,6 +115,7 @@ def set_score(
|
|||||||
+ SortKey('0')
|
+ SortKey('0')
|
||||||
+ SortKey(
|
+ SortKey(
|
||||||
sk='METADATA#COURSE',
|
sk='METADATA#COURSE',
|
||||||
|
# Prevent conflicts with `course`
|
||||||
rename_key='metadata__course',
|
rename_key='metadata__course',
|
||||||
)
|
)
|
||||||
+ SortKey(
|
+ SortKey(
|
||||||
|
|||||||
Reference in New Issue
Block a user