Added new features

This commit is contained in:
dormantman 2020-01-27 20:03:42 +03:00
parent 3796a698d2
commit f45eae56e9

View File

@ -12,8 +12,9 @@ from location.models import Address
from location.serializers import AddressDetailSerializer, TranslatedField from location.serializers import AddressDetailSerializer, TranslatedField
from main.models import Currency from main.models import Currency
from main.serializers import AwardSerializer from main.serializers import AwardSerializer
from timetable.serialziers import ScheduleRUDSerializer
from utils.decorators import with_base_attributes from utils.decorators import with_base_attributes
from utils.serializers import ImageBaseSerializer, TimeZoneChoiceField from utils.serializers import ImageBaseSerializer, ProjectModelSerializer, TimeZoneChoiceField
def phones_handler(phones_list, establishment): def phones_handler(phones_list, establishment):
@ -544,3 +545,54 @@ class EstablishmentEmployeeListSerializer(serializers.ModelSerializer):
'start', 'start',
'end', 'end',
] ]
class _PlateSerializer(ProjectModelSerializer):
name_translated = TranslatedField()
class Meta:
model = models.Plate
fields = [
'name_translated',
'price',
]
class MenuDishesSerializer(ProjectModelSerializer):
"""for dessert, main_course and starter category"""
schedule = ScheduleRUDSerializer(many=True, allow_null=True)
plates = _PlateSerializer(read_only=True, many=True, source='plate_set', allow_null=True)
category_translated = serializers.CharField(read_only=True)
last_update = serializers.DateTimeField(source='created')
class Meta:
model = models.Menu
fields = [
'id',
'category',
'category_translated',
'establishment',
'is_drinks_included',
'schedule',
'plates',
'last_update',
]
class MenuDishesRUDSerializers(ProjectModelSerializer):
"""for dessert, main_course and starter category"""
plates = _PlateSerializer(read_only=True, many=True, source='plate_set', allow_null=True)
schedule = ScheduleRUDSerializer(read_only=True, many=True, allow_null=True)
class Meta:
model = models.Menu
fields = [
'id',
'category',
'plates',
'establishment',
'is_drinks_included',
'schedule',
]