feat(api): implement endpoints to products, customer and sales.
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
from rest_framework import serializers
|
||||
|
||||
from .models import Sale, SaleLine
|
||||
from .models import Sale, SaleLine, Product, Customer
|
||||
|
||||
|
||||
class SaleLineSerializer(serializers.ModelSerializer):
|
||||
@@ -9,9 +9,31 @@ class SaleLineSerializer(serializers.ModelSerializer):
|
||||
fields = ['id', 'sale', 'product', 'unit_price', 'quantity']
|
||||
|
||||
|
||||
class SaleSerializer(serializers.ModelSerializer):
|
||||
class SaleWithLinesSerializer(serializers.ModelSerializer):
|
||||
lines = SaleLineSerializer(many=True)
|
||||
|
||||
class Meta:
|
||||
model = Sale
|
||||
fields = ['id', 'customer', 'date', 'lines']
|
||||
|
||||
|
||||
class SaleSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Sale
|
||||
fields = ['id', 'customer', 'date']
|
||||
|
||||
def to_representation(self, instance):
|
||||
representation = super().to_representation(instance)
|
||||
representation['lines'] = [line for line in instance.saleline_set.all().values()]
|
||||
return representation
|
||||
|
||||
|
||||
class ProductSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Product
|
||||
fields = ['name', 'price', 'measuring_unit', 'categories']
|
||||
|
||||
class CustomerSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = Customer
|
||||
fields = ['name', 'address']
|
||||
|
||||
Reference in New Issue
Block a user