Skip to content
3 changes: 2 additions & 1 deletion iac/stack/iac_stack.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,8 @@ def __init__(
)

ENVIRONMENT_VARIABLES = {
"STAGE": stage,
# stage aqui precisa ser upper por causa do enum no environments.py
"STAGE": stage.upper(),
"DYNAMO_TABLE_NAME": self.dynamo_construct.table.table_name,
"DYNAMO_PARTITION_KEY": "PK",
"DYNAMO_SORT_KEY": "SK",
Expand Down
5 changes: 4 additions & 1 deletion src/shared/domain/enums/sport.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,11 @@ class SPORT(Enum):
HANDBALL = "Handball"
FUTSAL = "Futsal"
RUGBY = "Rugby"
PING_PONG= "Ping Pong"
TENIS_MESA= "Tenis de Mesa"
JUDO = "Judo"
FUNCIONAL = "Funcional"
BEACH_TENNIS = "Beach Tennis"
ATIVIDADES_ACADEMICAS = "Atividades Academicas"
NATACAO = "Natacao"
CORRIDA = "Corrida"
NA = "NA"
12 changes: 10 additions & 2 deletions src/shared/infra/repositories/booking_repository_dynamo.py
Original file line number Diff line number Diff line change
Expand Up @@ -124,8 +124,13 @@ def get_booking(self, booking_id: str) -> Optional[Booking]:

if "Item" not in dynamo_object:
return None

item_data = dynamo_object['Item']

if item_data.get('sport') == 'Ping Pong':
item_data['sport'] = 'Tenis de Mesa'

return BookingDynamoDTO.from_dynamo(dynamo_object['Item']).to_entity()
return BookingDynamoDTO.from_dynamo(item_data).to_entity()

def delete_booking(self, booking_id: str, user) -> Optional[Booking]:

Expand All @@ -137,9 +142,10 @@ def delete_booking(self, booking_id: str, user) -> Optional[Booking]:
return None

is_admin = user_role == 'ADMIN'
is_professor = user_role == 'PROFESSOR'
is_owner = user_role == 'STUDENT' and booking.user_id == user_id

if is_admin or is_owner:
if is_admin or is_owner or is_professor:
deleted = self.dynamo.delete_item(
partition_key=self.booking_partition_key_format(),
sort_key=self.booking_sort_key_format(booking_id)
Expand All @@ -164,6 +170,8 @@ def get_all_bookings(self) -> Optional[List[Booking]]:

for item in all_items:
if item.get('entity') == 'booking':
if item.get('sport') == 'Ping Pong':
item['sport'] = 'Tenis de Mesa'
all_bookings.append(BookingDynamoDTO.from_dynamo(item).to_entity())

return all_bookings
Expand Down
2 changes: 1 addition & 1 deletion src/shared/infra/repositories/booking_repository_mock.py
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ def __init__(self):
start_date=1634590800000,
end_date=1634592600000,
court_number=5,
sport=SPORT.PING_PONG,
sport=SPORT.TENIS_MESA,
user_id='c8435c66-13a4-4641-9d54-773b4b8ccc98',
booking_id='b8d3bebf-dc0d-4fc1-861c-506a40cc2925',
materials=['Raquete', 'Bola'],
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ def test_get_all_bookings_viewmodel(self):
'start_date': 1634590800000,
'end_date': 1634592600000,
'court_number': 5,
'sport': 'Ping Pong',
'sport': 'Tenis de Mesa',
'booking_id': 'b8d3bebf-dc0d-4fc1-861c-506a40cc2925',
'materials': ['Raquete', 'Bola'],
'type': 'Training'
Expand Down
Loading