68 lines
1.7 KiB
Python
68 lines
1.7 KiB
Python
|
|
from rest_framework import serializers
|
||
|
|
from .models import (
|
||
|
|
EventStatus,
|
||
|
|
ActivityType,
|
||
|
|
Event,
|
||
|
|
EventOrganizer,
|
||
|
|
EventDetail,
|
||
|
|
EventParticipant,
|
||
|
|
MethodicalFile,
|
||
|
|
RelevantMethodicalFile,
|
||
|
|
)
|
||
|
|
|
||
|
|
class EventStatusSerializer(serializers.ModelSerializer):
|
||
|
|
class Meta:
|
||
|
|
model = EventStatus
|
||
|
|
fields = "__all__"
|
||
|
|
|
||
|
|
|
||
|
|
class ActivityTypeSerializer(serializers.ModelSerializer):
|
||
|
|
class Meta:
|
||
|
|
model = ActivityType
|
||
|
|
fields = "__all__"
|
||
|
|
|
||
|
|
|
||
|
|
class EventSerializer(serializers.ModelSerializer):
|
||
|
|
class Meta:
|
||
|
|
model = Event
|
||
|
|
fields = "__all__"
|
||
|
|
|
||
|
|
|
||
|
|
class EventOrganizerSerializer(serializers.ModelSerializer):
|
||
|
|
employee_name = serializers.SerializerMethodField()
|
||
|
|
|
||
|
|
class Meta:
|
||
|
|
model = EventOrganizer
|
||
|
|
fields = ["id", "employee", "event", "employee_name"]
|
||
|
|
|
||
|
|
def get_employee_name(self, obj):
|
||
|
|
return f"{obj.employee.account.first_name} {obj.employee.account.last_name}"
|
||
|
|
|
||
|
|
|
||
|
|
class EventDetailSerializer(serializers.ModelSerializer):
|
||
|
|
class Meta:
|
||
|
|
model = EventDetail
|
||
|
|
fields = "__all__"
|
||
|
|
|
||
|
|
|
||
|
|
class EventParticipantSerializer(serializers.ModelSerializer):
|
||
|
|
student_name = serializers.SerializerMethodField()
|
||
|
|
|
||
|
|
class Meta:
|
||
|
|
model = EventParticipant
|
||
|
|
fields = ["id", "student", "event", "points", "student_name"]
|
||
|
|
|
||
|
|
def get_student_name(self, obj):
|
||
|
|
return f"{obj.student.account.last_name} {obj.student.account.first_name}"
|
||
|
|
|
||
|
|
|
||
|
|
class MethodicalFileSerializer(serializers.ModelSerializer):
|
||
|
|
class Meta:
|
||
|
|
model = MethodicalFile
|
||
|
|
fields = "__all__"
|
||
|
|
|
||
|
|
|
||
|
|
class RelevantMethodicalFileSerializer(serializers.ModelSerializer):
|
||
|
|
class Meta:
|
||
|
|
model = RelevantMethodicalFile
|
||
|
|
fields = "__all__"
|