participation_status.py 951 B
from graphene_django import DjangoObjectType
from aleksis.apps.alsijil.models import ParticipationStatus
from aleksis.core.schema.base import (
BaseBatchPatchMutation,
DjangoFilterMixin,
OptimisticResponseTypeMixin,
PermissionsTypeMixin,
)
class ParticipationStatusType(
OptimisticResponseTypeMixin,
PermissionsTypeMixin,
DjangoFilterMixin,
DjangoObjectType,
):
class Meta:
model = ParticipationStatus
fields = (
"id",
"person",
"absence_reason",
"related_documentation",
"base_absence",
)
class ParticipationStatusBatchPatchMutation(BaseBatchPatchMutation):
class Meta:
model = ParticipationStatus
fields = ("id", "absence_reason") # Only the reason can be updated after creation
permissions = ("alsijil.change_participation_status",) # FIXME
return_field_name = "participationStatuses"