Files
DataRush/services/backend/api/v1/team/views.py
T
2025-03-02 03:17:18 +03:00

39 lines
991 B
Python

from uuid import UUID
from django.shortcuts import get_object_or_404
from ninja import Router
from api.v1.schemas import BadRequestError, NotFoundError, UnauthorizedError
from api.v1.team.schemas import CreateTeamSchema, TeamSchemaOut
from apps.team.models import Team
router = Router()
@router.post(
"",
response={
201: TeamSchemaOut,
400: BadRequestError,
401: UnauthorizedError,
},
description="Create team. Note: members array must have team members uuid, default can be empty",
)
def create_team(request, team_data: CreateTeamSchema) -> (int, TeamSchemaOut):
team = Team(name=team_data.name, owner=request.auth)
team.members.add(request.auth)
team.save()
return 201, team
@router.get(
"{team_id}",
response={
200: TeamSchemaOut,
401: UnauthorizedError,
404: NotFoundError,
},
)
def get_team(request, team_id: UUID) -> (int, TeamSchemaOut):
return get_object_or_404(Team, pk=team_id)