Files
RRBEC/orders/serializers.py

32 lines
1.0 KiB
Python

from rest_framework import serializers
from .models import Order
class OrderSerializer(serializers.ModelSerializer):
status = serializers.SerializerMethodField()
product_name = serializers.ReadOnlyField(source='id_product.name')
comanda_name = serializers.ReadOnlyField(source='id_comanda.name')
mesa_name = serializers.ReadOnlyField(source='id_comanda.mesa.name')
class Meta:
model = Order
fields = [
'id', 'id_product', 'product_name', 'id_comanda', 'comanda_name',
'mesa_name', 'obs', 'queue', 'preparing', 'finished',
'delivered', 'canceled', 'status'
]
extra_kwargs = {
'queue': {'read_only': True},
'status': {'read_only': True},
}
def get_status(self, obj):
if obj.delivered:
return 'Entregue'
if obj.finished:
return 'Pronto'
if obj.preparing:
return 'Preparando'
if obj.canceled:
return 'Cancelado'
return 'Em espera'