2017-02-10 09:06:35 +00:00
|
|
|
from django.apps import apps
|
|
|
|
from rest_framework import serializers
|
2017-02-11 17:06:19 +00:00
|
|
|
from longclaw.orders.models import Order, OrderItem
|
2017-02-10 09:06:35 +00:00
|
|
|
from longclaw.products.serializers import ProductVariantSerializer
|
2017-02-11 17:06:19 +00:00
|
|
|
from longclaw.shipping.serializers import AddressSerializer
|
2017-02-10 09:06:35 +00:00
|
|
|
|
|
|
|
class OrderItemSerializer(serializers.ModelSerializer):
|
|
|
|
|
|
|
|
product = ProductVariantSerializer()
|
|
|
|
|
|
|
|
class Meta:
|
|
|
|
model = OrderItem
|
|
|
|
fields = "__all__"
|
|
|
|
|
|
|
|
|
|
|
|
class OrderSerializer(serializers.ModelSerializer):
|
|
|
|
|
|
|
|
items = OrderItemSerializer(many=True)
|
|
|
|
shipping_address = AddressSerializer()
|
|
|
|
total = serializers.SerializerMethodField()
|
|
|
|
|
|
|
|
class Meta:
|
|
|
|
model = Order
|
|
|
|
fields = "__all__"
|
|
|
|
|
|
|
|
def get_total(self, obj):
|
|
|
|
return obj.total
|