Files
keinasystem/backend/apps/workrecords/serializers.py

39 lines
1.0 KiB
Python

from rest_framework import serializers
from .models import WorkRecord
class WorkRecordSerializer(serializers.ModelSerializer):
work_type_display = serializers.CharField(source='get_work_type_display', read_only=True)
delivery_plan_id = serializers.SerializerMethodField()
delivery_plan_name = serializers.SerializerMethodField()
class Meta:
model = WorkRecord
fields = [
'id',
'work_date',
'work_type',
'work_type_display',
'title',
'year',
'auto_created',
'delivery_trip',
'delivery_plan_id',
'delivery_plan_name',
'spreading_session',
'created_at',
'updated_at',
]
def get_delivery_plan_id(self, obj):
if obj.delivery_trip_id:
return obj.delivery_trip.delivery_plan_id
return None
def get_delivery_plan_name(self, obj):
if obj.delivery_trip_id:
return obj.delivery_trip.delivery_plan.name
return None