chore(api): typing improvements
This commit is contained in:
@@ -1,4 +1,5 @@
|
|||||||
from http import HTTPStatus
|
from http import HTTPStatus
|
||||||
|
from uuid import UUID
|
||||||
|
|
||||||
from django.core.exceptions import ValidationError
|
from django.core.exceptions import ValidationError
|
||||||
from django.http import Http404, HttpRequest
|
from django.http import Http404, HttpRequest
|
||||||
@@ -101,7 +102,7 @@ def create_approver_group(
|
|||||||
@require_admin
|
@require_admin
|
||||||
def get_approver_group(
|
def get_approver_group(
|
||||||
request: HttpRequest,
|
request: HttpRequest,
|
||||||
group_id: str,
|
group_id: UUID,
|
||||||
) -> tuple[HTTPStatus, ApproverGroupOut]:
|
) -> tuple[HTTPStatus, ApproverGroupOut]:
|
||||||
group = get_object_or_404(
|
group = get_object_or_404(
|
||||||
ApproverGroup.objects.select_related("experimenter").prefetch_related(
|
ApproverGroup.objects.select_related("experimenter").prefetch_related(
|
||||||
@@ -124,7 +125,7 @@ def get_approver_group(
|
|||||||
@require_admin
|
@require_admin
|
||||||
def update_approver_group(
|
def update_approver_group(
|
||||||
request: HttpRequest,
|
request: HttpRequest,
|
||||||
group_id: str,
|
group_id: UUID,
|
||||||
payload: ApproverGroupUpdateIn,
|
payload: ApproverGroupUpdateIn,
|
||||||
) -> tuple[HTTPStatus, ApproverGroupOut]:
|
) -> tuple[HTTPStatus, ApproverGroupOut]:
|
||||||
group = get_object_or_404(
|
group = get_object_or_404(
|
||||||
@@ -160,7 +161,7 @@ def update_approver_group(
|
|||||||
@require_admin
|
@require_admin
|
||||||
def delete_approver_group(
|
def delete_approver_group(
|
||||||
request: HttpRequest,
|
request: HttpRequest,
|
||||||
group_id: str,
|
group_id: UUID,
|
||||||
) -> tuple[HTTPStatus, None]:
|
) -> tuple[HTTPStatus, None]:
|
||||||
group = get_object_or_404(
|
group = get_object_or_404(
|
||||||
ApproverGroup.objects.select_related("experimenter").prefetch_related(
|
ApproverGroup.objects.select_related("experimenter").prefetch_related(
|
||||||
@@ -184,7 +185,7 @@ def delete_approver_group(
|
|||||||
@require_admin
|
@require_admin
|
||||||
def add_approver_to_group(
|
def add_approver_to_group(
|
||||||
request: HttpRequest,
|
request: HttpRequest,
|
||||||
group_id: str,
|
group_id: UUID,
|
||||||
payload: ApproverGroupAddApproverIn,
|
payload: ApproverGroupAddApproverIn,
|
||||||
) -> tuple[HTTPStatus, ApproverGroupOut]:
|
) -> tuple[HTTPStatus, ApproverGroupOut]:
|
||||||
group = get_object_or_404(
|
group = get_object_or_404(
|
||||||
@@ -218,7 +219,7 @@ def add_approver_to_group(
|
|||||||
@require_admin
|
@require_admin
|
||||||
def remove_approver_from_group(
|
def remove_approver_from_group(
|
||||||
request: HttpRequest,
|
request: HttpRequest,
|
||||||
group_id: str,
|
group_id: UUID,
|
||||||
payload: ApproverGroupRemoveApproverIn,
|
payload: ApproverGroupRemoveApproverIn,
|
||||||
) -> tuple[HTTPStatus, ApproverGroupOut]:
|
) -> tuple[HTTPStatus, ApproverGroupOut]:
|
||||||
group = get_object_or_404(
|
group = get_object_or_404(
|
||||||
@@ -252,9 +253,9 @@ def remove_approver_from_group(
|
|||||||
@require_admin
|
@require_admin
|
||||||
def get_approver_group_by_experimenter(
|
def get_approver_group_by_experimenter(
|
||||||
request: HttpRequest,
|
request: HttpRequest,
|
||||||
experimenter_id: str,
|
experimenter_id: UUID,
|
||||||
) -> tuple[HTTPStatus, ApproverGroupOut]:
|
) -> tuple[HTTPStatus, ApproverGroupOut]:
|
||||||
group = approver_group_get_by_experimenter_id(experimenter_id)
|
group = approver_group_get_by_experimenter_id(str(experimenter_id))
|
||||||
if group is None:
|
if group is None:
|
||||||
raise Http404
|
raise Http404
|
||||||
|
|
||||||
@@ -311,7 +312,7 @@ def update_review_settings(
|
|||||||
)
|
)
|
||||||
def get_effective_policy(
|
def get_effective_policy(
|
||||||
request: HttpRequest,
|
request: HttpRequest,
|
||||||
experimenter_id: str,
|
experimenter_id: UUID,
|
||||||
) -> tuple[HTTPStatus, EffectiveReviewPolicyOut]:
|
) -> tuple[HTTPStatus, EffectiveReviewPolicyOut]:
|
||||||
experimenter = get_object_or_404(User, pk=experimenter_id)
|
experimenter = get_object_or_404(User, pk=experimenter_id)
|
||||||
|
|
||||||
@@ -330,7 +331,7 @@ def get_effective_policy(
|
|||||||
)
|
)
|
||||||
|
|
||||||
has_group = (
|
has_group = (
|
||||||
approver_group_get_by_experimenter_id(experimenter_id) is not None
|
approver_group_get_by_experimenter_id(str(experimenter_id)) is not None
|
||||||
)
|
)
|
||||||
|
|
||||||
return HTTPStatus.OK, EffectiveReviewPolicyOut(
|
return HTTPStatus.OK, EffectiveReviewPolicyOut(
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
from http import HTTPStatus
|
from http import HTTPStatus
|
||||||
|
from uuid import UUID
|
||||||
|
|
||||||
from django.core.exceptions import ValidationError
|
from django.core.exceptions import ValidationError
|
||||||
from django.http import HttpRequest
|
from django.http import HttpRequest
|
||||||
@@ -81,7 +82,7 @@ def create_user(
|
|||||||
@require_admin
|
@require_admin
|
||||||
def get_user(
|
def get_user(
|
||||||
request: HttpRequest,
|
request: HttpRequest,
|
||||||
user_id: str,
|
user_id: UUID,
|
||||||
) -> tuple[HTTPStatus, UserOut]:
|
) -> tuple[HTTPStatus, UserOut]:
|
||||||
user = get_object_or_404(User, pk=user_id)
|
user = get_object_or_404(User, pk=user_id)
|
||||||
return HTTPStatus.OK, UserOut.model_validate(user)
|
return HTTPStatus.OK, UserOut.model_validate(user)
|
||||||
@@ -100,7 +101,7 @@ def get_user(
|
|||||||
@require_admin
|
@require_admin
|
||||||
def update_user(
|
def update_user(
|
||||||
request: HttpRequest,
|
request: HttpRequest,
|
||||||
user_id: str,
|
user_id: UUID,
|
||||||
payload: UserUpdateIn,
|
payload: UserUpdateIn,
|
||||||
) -> tuple[HTTPStatus, UserOut]:
|
) -> tuple[HTTPStatus, UserOut]:
|
||||||
user = get_object_or_404(User, pk=user_id)
|
user = get_object_or_404(User, pk=user_id)
|
||||||
@@ -119,7 +120,7 @@ def update_user(
|
|||||||
@require_admin
|
@require_admin
|
||||||
def delete_user(
|
def delete_user(
|
||||||
request: HttpRequest,
|
request: HttpRequest,
|
||||||
user_id: str,
|
user_id: UUID,
|
||||||
) -> tuple[HTTPStatus, None]:
|
) -> tuple[HTTPStatus, None]:
|
||||||
user = get_object_or_404(User, pk=user_id)
|
user = get_object_or_404(User, pk=user_id)
|
||||||
|
|
||||||
@@ -144,7 +145,7 @@ def delete_user(
|
|||||||
@require_admin
|
@require_admin
|
||||||
def assign_role(
|
def assign_role(
|
||||||
request: HttpRequest,
|
request: HttpRequest,
|
||||||
user_id: str,
|
user_id: UUID,
|
||||||
payload: UserRoleAssignIn,
|
payload: UserRoleAssignIn,
|
||||||
) -> tuple[HTTPStatus, UserOut]:
|
) -> tuple[HTTPStatus, UserOut]:
|
||||||
user = get_object_or_404(User, pk=user_id)
|
user = get_object_or_404(User, pk=user_id)
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
from typing import Any
|
from typing import Any
|
||||||
|
|
||||||
from config.errors import ConflictError
|
|
||||||
from django.core.exceptions import ValidationError
|
from django.core.exceptions import ValidationError
|
||||||
from django.db import transaction
|
from django.db import transaction
|
||||||
|
|
||||||
from apps.reviews.models import ApproverGroup, ReviewSettings
|
from apps.reviews.models import ApproverGroup, ReviewSettings
|
||||||
from apps.users.models import User, UserRole
|
from apps.users.models import User, UserRole
|
||||||
|
from config.errors import ConflictError
|
||||||
|
|
||||||
|
|
||||||
def review_settings_update(
|
def review_settings_update(
|
||||||
|
|||||||
Reference in New Issue
Block a user