Skip to content

Commit ae1370a

Browse files
committed
fix: lint
1 parent 806303a commit ae1370a

File tree

7 files changed

+40
-47
lines changed

7 files changed

+40
-47
lines changed

todo/dto/responses/create_team_response.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@
44

55
class CreateTeamResponse(BaseModel):
66
team: TeamDTO
7-
message: str = "Team created successfully"
7+
message: str = "Team created successfully"

todo/dto/team_dto.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,4 @@ class TeamDTO(BaseModel):
1818
created_by: str
1919
updated_by: str
2020
created_at: datetime
21-
updated_at: datetime
21+
updated_at: datetime

todo/models/team.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ class TeamModel(Document):
1010
"""
1111
Model for teams.
1212
"""
13+
1314
collection_name: ClassVar[str] = "teams"
1415

1516
name: str
@@ -26,13 +27,14 @@ class UserTeamDetailsModel(Document):
2627
"""
2728
Model for user-team relationships.
2829
"""
30+
2931
collection_name: ClassVar[str] = "userTeamDetails"
3032

3133
user_id: PyObjectId
3234
team_id: PyObjectId
33-
is_active: bool = True
35+
is_active: bool = True
3436
role_id: str
3537
created_at: datetime = Field(default_factory=lambda: datetime.now(timezone.utc))
3638
updated_at: datetime = Field(default_factory=lambda: datetime.now(timezone.utc))
3739
created_by: PyObjectId
38-
updated_by: PyObjectId
40+
updated_by: PyObjectId

todo/repositories/team_repository.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44

55
from todo.models.team import TeamModel, UserTeamDetailsModel
66
from todo.repositories.common.mongo_repository import MongoRepository
7-
from todo.models.common.pyobjectid import PyObjectId
87

98

109
class TeamRepository(MongoRepository):
@@ -50,7 +49,7 @@ def create(cls, user_team: UserTeamDetailsModel) -> UserTeamDetailsModel:
5049
collection = cls.get_collection()
5150
user_team.created_at = datetime.now(timezone.utc)
5251
user_team.updated_at = datetime.now(timezone.utc)
53-
52+
5453
user_team_dict = user_team.model_dump(mode="json", by_alias=True, exclude_none=True)
5554
insert_result = collection.insert_one(user_team_dict)
5655
user_team.id = insert_result.inserted_id
@@ -63,17 +62,18 @@ def create_many(cls, user_teams: list[UserTeamDetailsModel]) -> list[UserTeamDet
6362
"""
6463
collection = cls.get_collection()
6564
current_time = datetime.now(timezone.utc)
66-
65+
6766
for user_team in user_teams:
6867
user_team.created_at = current_time
6968
user_team.updated_at = current_time
70-
71-
user_teams_dicts = [user_team.model_dump(mode="json", by_alias=True, exclude_none=True)
72-
for user_team in user_teams]
69+
70+
user_teams_dicts = [
71+
user_team.model_dump(mode="json", by_alias=True, exclude_none=True) for user_team in user_teams
72+
]
7373
insert_result = collection.insert_many(user_teams_dicts)
74-
74+
7575
# Set the inserted IDs
7676
for i, user_team in enumerate(user_teams):
7777
user_team.id = insert_result.inserted_ids[i]
78-
79-
return user_teams
78+
79+
return user_teams

todo/serializers/create_team_serializer.py

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,5 @@
44
class CreateTeamSerializer(serializers.Serializer):
55
name = serializers.CharField(max_length=100)
66
description = serializers.CharField(max_length=500, required=False, allow_blank=True)
7-
member_ids = serializers.ListField(
8-
child=serializers.CharField(),
9-
required=False,
10-
default=list
11-
)
12-
poc_id = serializers.CharField(required=True, allow_null=False)
7+
member_ids = serializers.ListField(child=serializers.CharField(), required=False, default=list)
8+
poc_id = serializers.CharField(required=True, allow_null=False)

todo/services/team_service.py

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,14 @@ def create_team(cls, dto: CreateTeamDTO, created_by_user_id: str) -> CreateTeamR
3232
description=dto.description,
3333
poc_id=PyObjectId(dto.poc_id) if dto.poc_id else None,
3434
created_by=PyObjectId(created_by_user_id),
35-
updated_by=PyObjectId(created_by_user_id)
35+
updated_by=PyObjectId(created_by_user_id),
3636
)
3737

3838
created_team = TeamRepository.create(team)
3939

4040
# Create user-team relationships
4141
user_teams = []
42-
42+
4343
# Add members to the team
4444
if dto.member_ids:
4545
for user_id in dto.member_ids:
@@ -48,18 +48,29 @@ def create_team(cls, dto: CreateTeamDTO, created_by_user_id: str) -> CreateTeamR
4848
team_id=created_team.id,
4949
role_id="1",
5050
created_by=PyObjectId(created_by_user_id),
51-
updated_by=PyObjectId(created_by_user_id)
51+
updated_by=PyObjectId(created_by_user_id),
5252
)
5353
user_teams.append(user_team)
5454

55+
# Add POC if not already in member_ids
56+
if dto.poc_id and dto.poc_id not in dto.member_ids:
57+
poc_user_team = UserTeamDetailsModel(
58+
user_id=PyObjectId(dto.poc_id),
59+
team_id=created_team.id,
60+
role_id="2", # POC role
61+
created_by=PyObjectId(created_by_user_id),
62+
updated_by=PyObjectId(created_by_user_id),
63+
)
64+
user_teams.append(poc_user_team)
65+
5566
# Add creator if not already in member_ids
5667
if created_by_user_id not in dto.member_ids:
5768
creator_user_team = UserTeamDetailsModel(
5869
user_id=PyObjectId(created_by_user_id),
5970
team_id=created_team.id,
6071
role_id="1",
6172
created_by=PyObjectId(created_by_user_id),
62-
updated_by=PyObjectId(created_by_user_id)
73+
updated_by=PyObjectId(created_by_user_id),
6374
)
6475
user_teams.append(creator_user_team)
6576

@@ -82,4 +93,4 @@ def create_team(cls, dto: CreateTeamDTO, created_by_user_id: str) -> CreateTeamR
8293
return CreateTeamResponse(team=team_dto)
8394

8495
except Exception as e:
85-
raise ValueError(str(e))
96+
raise ValueError(str(e))

todo/views/team.py

Lines changed: 7 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -27,32 +27,25 @@ def post(self, request: Request):
2727
created_by_user_id = request.user_id
2828
response: CreateTeamResponse = TeamService.create_team(dto, created_by_user_id)
2929

30-
return Response(
31-
data=response.model_dump(mode="json"),
32-
status=status.HTTP_201_CREATED
33-
)
30+
return Response(data=response.model_dump(mode="json"), status=status.HTTP_201_CREATED)
3431

3532
except ValueError as e:
3633
if isinstance(e.args[0], ApiErrorResponse):
3734
error_response = e.args[0]
38-
return Response(
39-
data=error_response.model_dump(mode="json"),
40-
status=error_response.statusCode
41-
)
35+
return Response(data=error_response.model_dump(mode="json"), status=error_response.statusCode)
4236

4337
fallback_response = ApiErrorResponse(
4438
statusCode=500,
4539
message=ApiErrors.UNEXPECTED_ERROR_OCCURRED,
4640
errors=[{"detail": str(e) if settings.DEBUG else ApiErrors.INTERNAL_SERVER_ERROR}],
4741
)
4842
return Response(
49-
data=fallback_response.model_dump(mode="json"),
50-
status=status.HTTP_500_INTERNAL_SERVER_ERROR
43+
data=fallback_response.model_dump(mode="json"), status=status.HTTP_500_INTERNAL_SERVER_ERROR
5144
)
5245

5346
def _handle_validation_errors(self, errors):
5447
from todo.dto.responses.error_response import ApiErrorDetail, ApiErrorSource
55-
48+
5649
formatted_errors = []
5750
for field, messages in errors.items():
5851
if isinstance(messages, list):
@@ -67,19 +60,10 @@ def _handle_validation_errors(self, errors):
6760
else:
6861
formatted_errors.append(
6962
ApiErrorDetail(
70-
source={ApiErrorSource.PARAMETER: field},
71-
title=ApiErrors.VALIDATION_ERROR,
72-
detail=str(messages)
63+
source={ApiErrorSource.PARAMETER: field}, title=ApiErrors.VALIDATION_ERROR, detail=str(messages)
7364
)
7465
)
7566

76-
error_response = ApiErrorResponse(
77-
statusCode=400,
78-
message=ApiErrors.VALIDATION_ERROR,
79-
errors=formatted_errors
80-
)
67+
error_response = ApiErrorResponse(statusCode=400, message=ApiErrors.VALIDATION_ERROR, errors=formatted_errors)
8168

82-
return Response(
83-
data=error_response.model_dump(mode="json"),
84-
status=status.HTTP_400_BAD_REQUEST
85-
)
69+
return Response(data=error_response.model_dump(mode="json"), status=status.HTTP_400_BAD_REQUEST)

0 commit comments

Comments
 (0)