From 339f6da22e5b4ab46adbeb428f7d86bd3b2b4019 Mon Sep 17 00:00:00 2001 From: Guilherme Guerreiro de Oliveira <155542954+GuiGuerreiroo@users.noreply.github.com> Date: Sat, 28 Feb 2026 19:17:47 -0300 Subject: [PATCH 1/2] feat: add to the usecase and viewmodel of the get_all_members and get_all_members_admin routes the logic to return the strikes_id that the user has recieved in the semester --- .../app/get_all_members_usecase.py | 1 + .../app/get_all_members_viewmodel.py | 2 + .../app/get_all_members_admin_usecase.py | 1 + .../app/get_all_members_admin_viewmodel.py | 3 + .../app/test_get_all_members_controller.py | 14 +++++ .../app/test_get_all_members_viewmodel.py | 56 +++++++++++++++++++ .../test_get_all_members_admin_controller.py | 14 +++++ .../test_get_all_members_admin_viewmodel.py | 28 ++++++++++ 8 files changed, 119 insertions(+) diff --git a/src/modules/get_all_members/app/get_all_members_usecase.py b/src/modules/get_all_members/app/get_all_members_usecase.py index 75a0daca..c696c29d 100644 --- a/src/modules/get_all_members/app/get_all_members_usecase.py +++ b/src/modules/get_all_members/app/get_all_members_usecase.py @@ -88,6 +88,7 @@ def __call__(self,user_id: str, start_date: Optional[int] = None, end_date: Opti member.strikes_allowed= 4 member.strikes= len(member_list_strike_this_sem) + member.strikes_id= [s.strike_id for s in member_list_strike_this_sem] member.hours_worked = hours_worked.get(member_user_id, 0) if is_admin else None member.project = member_projects[member_user_id] diff --git a/src/modules/get_all_members/app/get_all_members_viewmodel.py b/src/modules/get_all_members/app/get_all_members_viewmodel.py index 52a309e3..c1b4d2bd 100644 --- a/src/modules/get_all_members/app/get_all_members_viewmodel.py +++ b/src/modules/get_all_members/app/get_all_members_viewmodel.py @@ -40,6 +40,7 @@ def __init__(self, member: Member): self.user_id = member.user_id self.photo = member.photo self.strikes = member.strikes + self.strikes_id = member.strikes_id self.strikes_allowed = member.strikes_allowed self.hours_worked = member.hours_worked @@ -61,6 +62,7 @@ def to_dict(self): 'active' : self.active.value, 'user_id' : self.user_id, 'strikes' : self.strikes, + 'strikes_id' : self.strikes_id, 'strikes_allowed' : self.strikes_allowed, 'photo' : self.photo, diff --git a/src/modules/get_all_members_admin/app/get_all_members_admin_usecase.py b/src/modules/get_all_members_admin/app/get_all_members_admin_usecase.py index e18772c3..162475ae 100644 --- a/src/modules/get_all_members_admin/app/get_all_members_admin_usecase.py +++ b/src/modules/get_all_members_admin/app/get_all_members_admin_usecase.py @@ -98,6 +98,7 @@ def __call__(self,user_id: str, start_date: Optional[int] = None, end_date: Opti member.strikes_allowed= 4 member.strikes= len(member_list_strike_this_sem) + member.strikes_id= [s.strike_id for s in member_list_strike_this_sem] member.hours_worked = hours_worked.get(member_user_id, 0) member.project = member_projects[member_user_id] diff --git a/src/modules/get_all_members_admin/app/get_all_members_admin_viewmodel.py b/src/modules/get_all_members_admin/app/get_all_members_admin_viewmodel.py index f5b49637..e90c4bea 100644 --- a/src/modules/get_all_members_admin/app/get_all_members_admin_viewmodel.py +++ b/src/modules/get_all_members_admin/app/get_all_members_admin_viewmodel.py @@ -22,6 +22,7 @@ class MemberViewModel: user_id: str hours_worked: int strikes: int + strikes_id: list strikes_allowed: int photo: Optional[str] = None @@ -42,6 +43,7 @@ def __init__(self, member: Member): self.user_id = member.user_id self.hours_worked = member.hours_worked self.strikes = member.strikes + self.strikes_id = member.strikes_id self.strikes_allowed = member.strikes_allowed self.photo = member.photo @@ -64,6 +66,7 @@ def to_dict(self): 'user_id' : self.user_id, 'hours_worked' : self.hours_worked, 'strikes' : self.strikes, + 'strikes_id' : self.strikes_id, 'strikes_allowed' : self.strikes_allowed, 'photo' : self.photo } diff --git a/tests/modules/get_all_members/app/test_get_all_members_controller.py b/tests/modules/get_all_members/app/test_get_all_members_controller.py index f7ef0436..44c74c6a 100644 --- a/tests/modules/get_all_members/app/test_get_all_members_controller.py +++ b/tests/modules/get_all_members/app/test_get_all_members_controller.py @@ -46,6 +46,7 @@ def test_get_all_members_controller(self): 'user_id': "93bc6ada-c0d1-7054-66ab-e17414c48ae3", 'photo': None, 'strikes': 1, + 'strikes_id': ['t0u1v2w3-x4y5-6789-0123-456789tuvwxy'], 'strikes_allowed': 2 } }, @@ -68,6 +69,7 @@ def test_get_all_members_controller(self): 'user_id': "51ah5jaj-c9jm-1345-666ab-e12341c14a3", 'photo': None, 'strikes': 2, + 'strikes_id': ['f6g7h8i9-j0k1-2345-6789-012345fghijk', 's9t0u1v2-w3x4-5678-9012-345678stuvwx'], 'strikes_allowed': 2 } }, @@ -90,6 +92,7 @@ def test_get_all_members_controller(self): 'user_id': "76h35dg4-h76v-1875-987hn-h67gfv45Gt4", 'photo': None, 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2 } }, @@ -112,6 +115,7 @@ def test_get_all_members_controller(self): 'user_id': "6f5g4h7J-876j-0098-123hb-hgb567fy4hb", 'photo': None, 'strikes': 4, + 'strikes_id': ['d4e5f6g7-h8i9-0123-4567-890123defghi', 'g7h8i9j0-k1l2-3456-7890-123456ghijkl', 'h8i9j0k1-l2m3-4567-8901-234567hijklm', 'i9j0k1l2-m3n4-5678-9012-345678ijklmn'], 'strikes_allowed': 2 } }, @@ -134,6 +138,7 @@ def test_get_all_members_controller(self): 'user_id': "6574hgyt-785n-9134-18gn4-7gh5uvn36cG", 'photo': None, 'strikes': 4, + 'strikes_id': ['d4e5f6g7-h8i9-0123-4567-890123defghi', 'g7h8i9j0-k1l2-3456-7890-123456ghijkl', 'h8i9j0k1-l2m3-4567-8901-234567hijklm', 'i9j0k1l2-m3n4-5678-9012-345678ijklmn'], 'strikes_allowed': 2 } }, @@ -156,6 +161,7 @@ def test_get_all_members_controller(self): 'user_id': "7gh5yf5H-857H-1234-75hng-94832hvng1s", 'photo': None, 'strikes': 4, + 'strikes_id': ['b2c3d4e5-f6g7-8901-2345-678901bcdefg', 'o5p6q7r8-s9t0-1234-5678-901234opqrst', 'p6q7r8s9-t0u1-2345-6789-012345pqrstu', 'q7r8s9t0-u1v2-3456-7890-123456qrstuv'], 'strikes_allowed': 2 # alterei } @@ -179,6 +185,7 @@ def test_get_all_members_controller(self): 'user_id': "7465hvnb-143g-1675-86HnG-75hgnFbcg36", 'photo': None, 'strikes': 3, + 'strikes_id': ['a1b2c3d4-e5f6-7890-1234-567890abcdef', 'c3d4e5f6-g7h8-9012-3456-789012cdefgh', 'n4o5p6q7-r8s9-0123-4567-890123nopqrs'], 'strikes_allowed': 2 } }, @@ -201,6 +208,7 @@ def test_get_all_members_controller(self): 'user_id': "75648hbr-184n-1985-91han-7ghn4HgF182", 'photo': None, 'strikes': 3, + 'strikes_id': ['l2m3n4o5-p6q7-8901-2345-678901lmnopq', 'm3n4o5p6-q7r8-9012-3456-789012mnopqr', 'p6q7r8s9-t0u1-2345-6789-012345pqrstu'], 'strikes_allowed': 2 } }, @@ -223,6 +231,7 @@ def test_get_all_members_controller(self): 'user_id': "9183jBnh-997H-1010-10god-914gHy46tBh", 'photo': None, 'strikes': 3, + 'strikes_id': ['l2m3n4o5-p6q7-8901-2345-678901lmnopq', 'm3n4o5p6-q7r8-9012-3456-789012mnopqr', 'p6q7r8s9-t0u1-2345-6789-012345pqrstu'], 'strikes_allowed': 2 } }, @@ -245,6 +254,7 @@ def test_get_all_members_controller(self): 'user_id': '5f55f6a5-a66e-4fff-9faf-72cd478bd5a0', 'photo': None, 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2 } }, @@ -267,6 +277,7 @@ def test_get_all_members_controller(self): 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8dc', 'photo': None, 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2 } }, @@ -289,6 +300,7 @@ def test_get_all_members_controller(self): 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8bf', 'photo': None, 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2 } }, @@ -311,6 +323,7 @@ def test_get_all_members_controller(self): 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8ty', 'photo': None, 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2 } }, @@ -333,6 +346,7 @@ def test_get_all_members_controller(self): 'user_id': '3b07232f-4f65-42c6-b005-242550b8h9ir', 'photo': None, 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2 } } diff --git a/tests/modules/get_all_members/app/test_get_all_members_viewmodel.py b/tests/modules/get_all_members/app/test_get_all_members_viewmodel.py index 2d50d8c4..17cb3367 100644 --- a/tests/modules/get_all_members/app/test_get_all_members_viewmodel.py +++ b/tests/modules/get_all_members/app/test_get_all_members_viewmodel.py @@ -31,6 +31,7 @@ def test_get_all_members_viewmodel_admin(self): 'role': 'DIRECTOR', 'stack': 'INFRA', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '93bc6ada-c0d1-7054-66ab-e17414c48ae3', 'year': 1}}, @@ -49,6 +50,7 @@ def test_get_all_members_viewmodel_admin(self): 'role': 'HEAD', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '51ah5jaj-c9jm-1345-666ab-e12341c14a3', 'year': 3}}, @@ -67,6 +69,7 @@ def test_get_all_members_viewmodel_admin(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '76h35dg4-h76v-1875-987hn-h67gfv45Gt4', 'year': 2}}, @@ -85,6 +88,7 @@ def test_get_all_members_viewmodel_admin(self): 'role': 'DIRECTOR', 'stack': 'FRONTEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '6f5g4h7J-876j-0098-123hb-hgb567fy4hb', 'year': 6}}, @@ -103,6 +107,7 @@ def test_get_all_members_viewmodel_admin(self): 'role': 'PO', 'stack': 'BUSINESS', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '6574hgyt-785n-9134-18gn4-7gh5uvn36cG', 'year': 4}}, @@ -121,6 +126,7 @@ def test_get_all_members_viewmodel_admin(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '7gh5yf5H-857H-1234-75hng-94832hvng1s', 'year': 3}}, @@ -139,6 +145,7 @@ def test_get_all_members_viewmodel_admin(self): 'role': 'INTERNAL', 'stack': 'INTERNAL', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '7465hvnb-143g-1675-86HnG-75hgnFbcg36', 'year': 2}}, @@ -157,6 +164,7 @@ def test_get_all_members_viewmodel_admin(self): 'role': 'DEV', 'stack': 'UX_UI', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '75648hbr-184n-1985-91han-7ghn4HgF182', 'year': 1}}, @@ -175,6 +183,7 @@ def test_get_all_members_viewmodel_admin(self): 'role': 'DEV', 'stack': 'UX_UI', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '9183jBnh-997H-1010-10god-914gHy46tBh', 'year': 1}}, @@ -193,6 +202,7 @@ def test_get_all_members_viewmodel_admin(self): 'role': 'PO', 'stack': 'BUSINESS', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '5f55f6a5-a66e-4fff-9faf-72cd478bd5a0', 'year': 3}}, @@ -211,6 +221,7 @@ def test_get_all_members_viewmodel_admin(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8dc', 'year': 3}}, @@ -229,6 +240,7 @@ def test_get_all_members_viewmodel_admin(self): 'role': 'DIRECTOR', 'stack': 'RH', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8bf', 'year': 5}}, @@ -247,6 +259,7 @@ def test_get_all_members_viewmodel_admin(self): 'role': 'INTERNAL', 'stack': 'RH', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8ty', 'year': 1}}, @@ -265,6 +278,7 @@ def test_get_all_members_viewmodel_admin(self): 'role': 'INTERNAL', 'stack': 'INFRA', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8h9ir', 'year': 1}}], @@ -297,6 +311,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_admin(self): 'role': 'DIRECTOR', 'stack': 'INFRA', 'strikes': 1, + 'strikes_id': ['t0u1v2w3-x4y5-6789-0123-456789tuvwxy'], 'strikes_allowed': 2, 'user_id': '93bc6ada-c0d1-7054-66ab-e17414c48ae3', 'year': 1}}, @@ -315,6 +330,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_admin(self): 'role': 'HEAD', 'stack': 'BACKEND', 'strikes': 2, + 'strikes_id': ['f6g7h8i9-j0k1-2345-6789-012345fghijk', 's9t0u1v2-w3x4-5678-9012-345678stuvwx'], 'strikes_allowed': 2, 'user_id': '51ah5jaj-c9jm-1345-666ab-e12341c14a3', 'year': 3}}, @@ -333,6 +349,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_admin(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '76h35dg4-h76v-1875-987hn-h67gfv45Gt4', 'year': 2}}, @@ -351,6 +368,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_admin(self): 'role': 'DIRECTOR', 'stack': 'FRONTEND', 'strikes': 4, + 'strikes_id': ['d4e5f6g7-h8i9-0123-4567-890123defghi', 'g7h8i9j0-k1l2-3456-7890-123456ghijkl', 'h8i9j0k1-l2m3-4567-8901-234567hijklm', 'i9j0k1l2-m3n4-5678-9012-345678ijklmn'], 'strikes_allowed': 2, 'user_id': '6f5g4h7J-876j-0098-123hb-hgb567fy4hb', 'year': 6}}, @@ -369,6 +387,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_admin(self): 'role': 'PO', 'stack': 'BUSINESS', 'strikes': 4, + 'strikes_id': ['d4e5f6g7-h8i9-0123-4567-890123defghi', 'g7h8i9j0-k1l2-3456-7890-123456ghijkl', 'h8i9j0k1-l2m3-4567-8901-234567hijklm', 'i9j0k1l2-m3n4-5678-9012-345678ijklmn'], 'strikes_allowed': 2, 'user_id': '6574hgyt-785n-9134-18gn4-7gh5uvn36cG', 'year': 4}}, @@ -387,6 +406,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_admin(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 4, + 'strikes_id': ['b2c3d4e5-f6g7-8901-2345-678901bcdefg', 'o5p6q7r8-s9t0-1234-5678-901234opqrst', 'p6q7r8s9-t0u1-2345-6789-012345pqrstu', 'q7r8s9t0-u1v2-3456-7890-123456qrstuv'], 'strikes_allowed': 2, 'user_id': '7gh5yf5H-857H-1234-75hng-94832hvng1s', 'year': 3}}, @@ -405,6 +425,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_admin(self): 'role': 'INTERNAL', 'stack': 'INTERNAL', 'strikes': 3, + 'strikes_id': ['a1b2c3d4-e5f6-7890-1234-567890abcdef', 'c3d4e5f6-g7h8-9012-3456-789012cdefgh', 'n4o5p6q7-r8s9-0123-4567-890123nopqrs'], 'strikes_allowed': 2, 'user_id': '7465hvnb-143g-1675-86HnG-75hgnFbcg36', 'year': 2}}, @@ -423,6 +444,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_admin(self): 'role': 'DEV', 'stack': 'UX_UI', 'strikes': 3, + 'strikes_id': ['l2m3n4o5-p6q7-8901-2345-678901lmnopq', 'm3n4o5p6-q7r8-9012-3456-789012mnopqr', 'p6q7r8s9-t0u1-2345-6789-012345pqrstu'], 'strikes_allowed': 2, 'user_id': '75648hbr-184n-1985-91han-7ghn4HgF182', 'year': 1}}, @@ -441,6 +463,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_admin(self): 'role': 'DEV', 'stack': 'UX_UI', 'strikes': 3, + 'strikes_id': ['l2m3n4o5-p6q7-8901-2345-678901lmnopq', 'm3n4o5p6-q7r8-9012-3456-789012mnopqr', 'p6q7r8s9-t0u1-2345-6789-012345pqrstu'], 'strikes_allowed': 2, 'user_id': '9183jBnh-997H-1010-10god-914gHy46tBh', 'year': 1}}, @@ -459,6 +482,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_admin(self): 'role': 'PO', 'stack': 'BUSINESS', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '5f55f6a5-a66e-4fff-9faf-72cd478bd5a0', 'year': 3}}, @@ -477,6 +501,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_admin(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8dc', 'year': 3}}, @@ -495,6 +520,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_admin(self): 'role': 'DIRECTOR', 'stack': 'RH', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8bf', 'year': 5}}, @@ -513,6 +539,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_admin(self): 'role': 'INTERNAL', 'stack': 'RH', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8ty', 'year': 1}}, @@ -531,6 +558,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_admin(self): 'role': 'INTERNAL', 'stack': 'INFRA', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8h9ir', 'year': 1}}], @@ -563,6 +591,7 @@ def test_get_all_members_viewmodel_user(self): 'role': 'DIRECTOR', 'stack': 'INFRA', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '93bc6ada-c0d1-7054-66ab-e17414c48ae3', 'year': 1}}, @@ -580,6 +609,7 @@ def test_get_all_members_viewmodel_user(self): 'role': 'HEAD', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '51ah5jaj-c9jm-1345-666ab-e12341c14a3', 'year': 3}}, @@ -597,6 +627,7 @@ def test_get_all_members_viewmodel_user(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '76h35dg4-h76v-1875-987hn-h67gfv45Gt4', 'year': 2}}, @@ -614,6 +645,7 @@ def test_get_all_members_viewmodel_user(self): 'role': 'DIRECTOR', 'stack': 'FRONTEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '6f5g4h7J-876j-0098-123hb-hgb567fy4hb', 'year': 6}}, @@ -631,6 +663,7 @@ def test_get_all_members_viewmodel_user(self): 'role': 'PO', 'stack': 'BUSINESS', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '6574hgyt-785n-9134-18gn4-7gh5uvn36cG', 'year': 4}}, @@ -648,6 +681,7 @@ def test_get_all_members_viewmodel_user(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '7gh5yf5H-857H-1234-75hng-94832hvng1s', 'year': 3}}, @@ -665,6 +699,7 @@ def test_get_all_members_viewmodel_user(self): 'role': 'INTERNAL', 'stack': 'INTERNAL', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '7465hvnb-143g-1675-86HnG-75hgnFbcg36', 'year': 2}}, @@ -682,6 +717,7 @@ def test_get_all_members_viewmodel_user(self): 'role': 'DEV', 'stack': 'UX_UI', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '75648hbr-184n-1985-91han-7ghn4HgF182', 'year': 1}}, @@ -699,6 +735,7 @@ def test_get_all_members_viewmodel_user(self): 'role': 'DEV', 'stack': 'UX_UI', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '9183jBnh-997H-1010-10god-914gHy46tBh', 'year': 1}}, @@ -716,6 +753,7 @@ def test_get_all_members_viewmodel_user(self): 'role': 'PO', 'stack': 'BUSINESS', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '5f55f6a5-a66e-4fff-9faf-72cd478bd5a0', 'year': 3}}, @@ -733,6 +771,7 @@ def test_get_all_members_viewmodel_user(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8dc', 'year': 3}}, @@ -750,6 +789,7 @@ def test_get_all_members_viewmodel_user(self): 'role': 'DIRECTOR', 'stack': 'RH', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8bf', 'year': 5}}, @@ -767,6 +807,7 @@ def test_get_all_members_viewmodel_user(self): 'role': 'INTERNAL', 'stack': 'RH', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8ty', 'year': 1}}, @@ -784,6 +825,7 @@ def test_get_all_members_viewmodel_user(self): 'role': 'INTERNAL', 'stack': 'INFRA', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8h9ir', 'year': 1}}], @@ -814,6 +856,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_user(self): 'role': 'DIRECTOR', 'stack': 'INFRA', 'strikes': 1, + 'strikes_id': ['t0u1v2w3-x4y5-6789-0123-456789tuvwxy'], 'strikes_allowed': 2, 'user_id': '93bc6ada-c0d1-7054-66ab-e17414c48ae3', 'year': 1}}, @@ -831,6 +874,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_user(self): 'role': 'HEAD', 'stack': 'BACKEND', 'strikes': 2, + 'strikes_id': ['f6g7h8i9-j0k1-2345-6789-012345fghijk', 's9t0u1v2-w3x4-5678-9012-345678stuvwx'], 'strikes_allowed': 2, 'user_id': '51ah5jaj-c9jm-1345-666ab-e12341c14a3', 'year': 3}}, @@ -848,6 +892,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_user(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '76h35dg4-h76v-1875-987hn-h67gfv45Gt4', 'year': 2}}, @@ -865,6 +910,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_user(self): 'role': 'DIRECTOR', 'stack': 'FRONTEND', 'strikes': 4, + 'strikes_id': ['d4e5f6g7-h8i9-0123-4567-890123defghi', 'g7h8i9j0-k1l2-3456-7890-123456ghijkl', 'h8i9j0k1-l2m3-4567-8901-234567hijklm', 'i9j0k1l2-m3n4-5678-9012-345678ijklmn'], 'strikes_allowed': 2, 'user_id': '6f5g4h7J-876j-0098-123hb-hgb567fy4hb', 'year': 6}}, @@ -882,6 +928,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_user(self): 'role': 'PO', 'stack': 'BUSINESS', 'strikes': 4, + 'strikes_id': ['d4e5f6g7-h8i9-0123-4567-890123defghi', 'g7h8i9j0-k1l2-3456-7890-123456ghijkl', 'h8i9j0k1-l2m3-4567-8901-234567hijklm', 'i9j0k1l2-m3n4-5678-9012-345678ijklmn'], 'strikes_allowed': 2, 'user_id': '6574hgyt-785n-9134-18gn4-7gh5uvn36cG', 'year': 4}}, @@ -899,6 +946,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_user(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 4, + 'strikes_id': ['b2c3d4e5-f6g7-8901-2345-678901bcdefg', 'o5p6q7r8-s9t0-1234-5678-901234opqrst', 'p6q7r8s9-t0u1-2345-6789-012345pqrstu', 'q7r8s9t0-u1v2-3456-7890-123456qrstuv'], 'strikes_allowed': 2, 'user_id': '7gh5yf5H-857H-1234-75hng-94832hvng1s', 'year': 3}}, @@ -916,6 +964,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_user(self): 'role': 'INTERNAL', 'stack': 'INTERNAL', 'strikes': 3, + 'strikes_id': ['a1b2c3d4-e5f6-7890-1234-567890abcdef', 'c3d4e5f6-g7h8-9012-3456-789012cdefgh', 'n4o5p6q7-r8s9-0123-4567-890123nopqrs'], 'strikes_allowed': 2, 'user_id': '7465hvnb-143g-1675-86HnG-75hgnFbcg36', 'year': 2}}, @@ -933,6 +982,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_user(self): 'role': 'DEV', 'stack': 'UX_UI', 'strikes': 3, + 'strikes_id': ['l2m3n4o5-p6q7-8901-2345-678901lmnopq', 'm3n4o5p6-q7r8-9012-3456-789012mnopqr', 'p6q7r8s9-t0u1-2345-6789-012345pqrstu'], 'strikes_allowed': 2, 'user_id': '75648hbr-184n-1985-91han-7ghn4HgF182', 'year': 1}}, @@ -950,6 +1000,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_user(self): 'role': 'DEV', 'stack': 'UX_UI', 'strikes': 3, + 'strikes_id': ['l2m3n4o5-p6q7-8901-2345-678901lmnopq', 'm3n4o5p6-q7r8-9012-3456-789012mnopqr', 'p6q7r8s9-t0u1-2345-6789-012345pqrstu'], 'strikes_allowed': 2, 'user_id': '9183jBnh-997H-1010-10god-914gHy46tBh', 'year': 1}}, @@ -967,6 +1018,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_user(self): 'role': 'PO', 'stack': 'BUSINESS', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '5f55f6a5-a66e-4fff-9faf-72cd478bd5a0', 'year': 3}}, @@ -984,6 +1036,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_user(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8dc', 'year': 3}}, @@ -1001,6 +1054,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_user(self): 'role': 'DIRECTOR', 'stack': 'RH', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8bf', 'year': 5}}, @@ -1018,6 +1072,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_user(self): 'role': 'INTERNAL', 'stack': 'RH', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8ty', 'year': 1}}, @@ -1035,6 +1090,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date_user(self): 'role': 'INTERNAL', 'stack': 'INFRA', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8h9ir', 'year': 1}}], diff --git a/tests/modules/get_all_members_admin/app/test_get_all_members_admin_controller.py b/tests/modules/get_all_members_admin/app/test_get_all_members_admin_controller.py index 3f9bde74..ed833cba 100644 --- a/tests/modules/get_all_members_admin/app/test_get_all_members_admin_controller.py +++ b/tests/modules/get_all_members_admin/app/test_get_all_members_admin_controller.py @@ -45,6 +45,7 @@ def test_get_all_members_controller(self): 'role': 'DIRECTOR', 'stack': 'INFRA', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 4, 'user_id': '93bc6ada-c0d1-7054-66ab-e17414c48ae3', 'year': 1}}, @@ -66,6 +67,7 @@ def test_get_all_members_controller(self): 'role': 'HEAD', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 4, 'user_id': '51ah5jaj-c9jm-1345-666ab-e12341c14a3', 'year': 3}}, @@ -84,6 +86,7 @@ def test_get_all_members_controller(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 3, 'user_id': '76h35dg4-h76v-1875-987hn-h67gfv45Gt4', 'year': 2}}, @@ -105,6 +108,7 @@ def test_get_all_members_controller(self): 'role': 'DIRECTOR', 'stack': 'FRONTEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 4, 'user_id': '6f5g4h7J-876j-0098-123hb-hgb567fy4hb', 'year': 6}}, @@ -123,6 +127,7 @@ def test_get_all_members_controller(self): 'role': 'PO', 'stack': 'BUSINESS', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '6574hgyt-785n-9134-18gn4-7gh5uvn36cG', 'year': 4}}, @@ -144,6 +149,7 @@ def test_get_all_members_controller(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 4, 'user_id': '7gh5yf5H-857H-1234-75hng-94832hvng1s', 'year': 3}}, @@ -162,6 +168,7 @@ def test_get_all_members_controller(self): 'role': 'INTERNAL', 'stack': 'INTERNAL', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '7465hvnb-143g-1675-86HnG-75hgnFbcg36', 'year': 2}}, @@ -180,6 +187,7 @@ def test_get_all_members_controller(self): 'role': 'DEV', 'stack': 'UX_UI', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '75648hbr-184n-1985-91han-7ghn4HgF182', 'year': 1}}, @@ -198,6 +206,7 @@ def test_get_all_members_controller(self): 'role': 'DEV', 'stack': 'UX_UI', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '9183jBnh-997H-1010-10god-914gHy46tBh', 'year': 1}}, @@ -216,6 +225,7 @@ def test_get_all_members_controller(self): 'role': 'PO', 'stack': 'BUSINESS', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '5f55f6a5-a66e-4fff-9faf-72cd478bd5a0', 'year': 3}}, @@ -234,6 +244,7 @@ def test_get_all_members_controller(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8dc', 'year': 3}}, @@ -252,6 +263,7 @@ def test_get_all_members_controller(self): 'role': 'DIRECTOR', 'stack': 'RH', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8bf', 'year': 5}}, @@ -270,6 +282,7 @@ def test_get_all_members_controller(self): 'role': 'INTERNAL', 'stack': 'RH', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8ty', 'year': 1}}, @@ -288,6 +301,7 @@ def test_get_all_members_controller(self): 'role': 'INTERNAL', 'stack': 'INFRA', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8h9ir', 'year': 1}}], diff --git a/tests/modules/get_all_members_admin/app/test_get_all_members_admin_viewmodel.py b/tests/modules/get_all_members_admin/app/test_get_all_members_admin_viewmodel.py index 40b8de2f..fbeb5784 100644 --- a/tests/modules/get_all_members_admin/app/test_get_all_members_admin_viewmodel.py +++ b/tests/modules/get_all_members_admin/app/test_get_all_members_admin_viewmodel.py @@ -31,6 +31,7 @@ def test_get_all_members_viewmodel(self): 'role': 'DIRECTOR', 'stack': 'INFRA', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 4, 'user_id': '93bc6ada-c0d1-7054-66ab-e17414c48ae3', 'year': 1}}, @@ -52,6 +53,7 @@ def test_get_all_members_viewmodel(self): 'role': 'HEAD', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 4, 'user_id': '51ah5jaj-c9jm-1345-666ab-e12341c14a3', 'year': 3}}, @@ -70,6 +72,7 @@ def test_get_all_members_viewmodel(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 3, 'user_id': '76h35dg4-h76v-1875-987hn-h67gfv45Gt4', 'year': 2}}, @@ -91,6 +94,7 @@ def test_get_all_members_viewmodel(self): 'role': 'DIRECTOR', 'stack': 'FRONTEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 4, 'user_id': '6f5g4h7J-876j-0098-123hb-hgb567fy4hb', 'year': 6}}, @@ -109,6 +113,7 @@ def test_get_all_members_viewmodel(self): 'role': 'PO', 'stack': 'BUSINESS', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '6574hgyt-785n-9134-18gn4-7gh5uvn36cG', 'year': 4}}, @@ -130,6 +135,7 @@ def test_get_all_members_viewmodel(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 4, 'user_id': '7gh5yf5H-857H-1234-75hng-94832hvng1s', 'year': 3}}, @@ -148,6 +154,7 @@ def test_get_all_members_viewmodel(self): 'role': 'INTERNAL', 'stack': 'INTERNAL', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '7465hvnb-143g-1675-86HnG-75hgnFbcg36', 'year': 2}}, @@ -166,6 +173,7 @@ def test_get_all_members_viewmodel(self): 'role': 'DEV', 'stack': 'UX_UI', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '75648hbr-184n-1985-91han-7ghn4HgF182', 'year': 1}}, @@ -184,6 +192,7 @@ def test_get_all_members_viewmodel(self): 'role': 'DEV', 'stack': 'UX_UI', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '9183jBnh-997H-1010-10god-914gHy46tBh', 'year': 1}}, @@ -202,6 +211,7 @@ def test_get_all_members_viewmodel(self): 'role': 'PO', 'stack': 'BUSINESS', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '5f55f6a5-a66e-4fff-9faf-72cd478bd5a0', 'year': 3}}, @@ -220,6 +230,7 @@ def test_get_all_members_viewmodel(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8dc', 'year': 3}}, @@ -238,6 +249,7 @@ def test_get_all_members_viewmodel(self): 'role': 'DIRECTOR', 'stack': 'RH', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8bf', 'year': 5}}, @@ -256,6 +268,7 @@ def test_get_all_members_viewmodel(self): 'role': 'INTERNAL', 'stack': 'RH', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8ty', 'year': 1}}, @@ -274,6 +287,7 @@ def test_get_all_members_viewmodel(self): 'role': 'INTERNAL', 'stack': 'INFRA', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8h9ir', 'year': 1}}], @@ -307,6 +321,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date(self): 'role': 'DIRECTOR', 'stack': 'INFRA', 'strikes': 1, + 'strikes_id': ['t0u1v2w3-x4y5-6789-0123-456789tuvwxy'], 'strikes_allowed': 4, 'user_id': '93bc6ada-c0d1-7054-66ab-e17414c48ae3', 'year': 1}}, @@ -328,6 +343,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date(self): 'role': 'HEAD', 'stack': 'BACKEND', 'strikes': 2, + 'strikes_id': ['f6g7h8i9-j0k1-2345-6789-012345fghijk', 's9t0u1v2-w3x4-5678-9012-345678stuvwx'], 'strikes_allowed': 4, 'user_id': '51ah5jaj-c9jm-1345-666ab-e12341c14a3', 'year': 3}}, @@ -346,6 +362,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 3, 'user_id': '76h35dg4-h76v-1875-987hn-h67gfv45Gt4', 'year': 2}}, @@ -367,6 +384,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date(self): 'role': 'DIRECTOR', 'stack': 'FRONTEND', 'strikes': 4, + 'strikes_id': ['d4e5f6g7-h8i9-0123-4567-890123defghi', 'g7h8i9j0-k1l2-3456-7890-123456ghijkl', 'h8i9j0k1-l2m3-4567-8901-234567hijklm', 'i9j0k1l2-m3n4-5678-9012-345678ijklmn'], 'strikes_allowed': 4, 'user_id': '6f5g4h7J-876j-0098-123hb-hgb567fy4hb', 'year': 6}}, @@ -385,6 +403,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date(self): 'role': 'PO', 'stack': 'BUSINESS', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '6574hgyt-785n-9134-18gn4-7gh5uvn36cG', 'year': 4}}, @@ -406,6 +425,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 4, + 'strikes_id': ['b2c3d4e5-f6g7-8901-2345-678901bcdefg', 'o5p6q7r8-s9t0-1234-5678-901234opqrst', 'p6q7r8s9-t0u1-2345-6789-012345pqrstu', 'q7r8s9t0-u1v2-3456-7890-123456qrstuv'], 'strikes_allowed': 4, 'user_id': '7gh5yf5H-857H-1234-75hng-94832hvng1s', 'year': 3}}, @@ -424,6 +444,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date(self): 'role': 'INTERNAL', 'stack': 'INTERNAL', 'strikes': 3, + 'strikes_id': ['a1b2c3d4-e5f6-7890-1234-567890abcdef', 'c3d4e5f6-g7h8-9012-3456-789012cdefgh', 'n4o5p6q7-r8s9-0123-4567-890123nopqrs'], 'strikes_allowed': 2, 'user_id': '7465hvnb-143g-1675-86HnG-75hgnFbcg36', 'year': 2}}, @@ -442,6 +463,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date(self): 'role': 'DEV', 'stack': 'UX_UI', 'strikes': 3, + 'strikes_id': ['l2m3n4o5-p6q7-8901-2345-678901lmnopq', 'm3n4o5p6-q7r8-9012-3456-789012mnopqr', 'p6q7r8s9-t0u1-2345-6789-012345pqrstu'], 'strikes_allowed': 2, 'user_id': '75648hbr-184n-1985-91han-7ghn4HgF182', 'year': 1}}, @@ -460,6 +482,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date(self): 'role': 'DEV', 'stack': 'UX_UI', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '9183jBnh-997H-1010-10god-914gHy46tBh', 'year': 1}}, @@ -478,6 +501,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date(self): 'role': 'PO', 'stack': 'BUSINESS', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '5f55f6a5-a66e-4fff-9faf-72cd478bd5a0', 'year': 3}}, @@ -496,6 +520,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date(self): 'role': 'DEV', 'stack': 'BACKEND', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8dc', 'year': 3}}, @@ -514,6 +539,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date(self): 'role': 'DIRECTOR', 'stack': 'RH', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8bf', 'year': 5}}, @@ -532,6 +558,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date(self): 'role': 'INTERNAL', 'stack': 'RH', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8b8ty', 'year': 1}}, @@ -550,6 +577,7 @@ def test_get_all_members_viewmodel_no_start_and_end_date(self): 'role': 'INTERNAL', 'stack': 'INFRA', 'strikes': 0, + 'strikes_id': [], 'strikes_allowed': 2, 'user_id': '3b07232f-4f65-42c6-b005-242550b8h9ir', 'year': 1}}], From 37cde1d3c6cb988e3175881d29b1b1d95d3fd45d Mon Sep 17 00:00:00 2001 From: Guilherme Guerreiro de Oliveira <155542954+GuiGuerreiroo@users.noreply.github.com> Date: Sat, 28 Feb 2026 19:32:44 -0300 Subject: [PATCH 2/2] fix: changed the strike_id definition from list to List[str] in get_all_members_admin_viewmodel --- .../app/get_all_members_admin_viewmodel.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/get_all_members_admin/app/get_all_members_admin_viewmodel.py b/src/modules/get_all_members_admin/app/get_all_members_admin_viewmodel.py index e90c4bea..d1518df6 100644 --- a/src/modules/get_all_members_admin/app/get_all_members_admin_viewmodel.py +++ b/src/modules/get_all_members_admin/app/get_all_members_admin_viewmodel.py @@ -22,7 +22,7 @@ class MemberViewModel: user_id: str hours_worked: int strikes: int - strikes_id: list + strikes_id: List[str] strikes_allowed: int photo: Optional[str] = None