change offer list serializer
This commit is contained in:
@@ -90,12 +90,19 @@ class OfferUpdateSerializer(serializers.ModelSerializer):
|
|||||||
|
|
||||||
|
|
||||||
class OffersSerializer(serializers.ModelSerializer):
|
class OffersSerializer(serializers.ModelSerializer):
|
||||||
|
counterparty = serializers.SerializerMethodField(method_name='get_counterparty')
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Offer
|
model = Offer
|
||||||
fields = [
|
fields = [
|
||||||
'id', 'number', 'price', 'price_type', 'phone', 'comment', 'qqs',
|
'id', 'number', 'price', 'price_type', 'phone', 'comment', 'qqs', 'counterparty'
|
||||||
]
|
]
|
||||||
|
|
||||||
|
def get_counterparty(self, obj):
|
||||||
|
return {
|
||||||
|
'id': obj.counterparty.id,
|
||||||
|
'name': obj.counterparty.name
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
class OrderListForOfferSerializer(serializers.ModelSerializer):
|
class OrderListForOfferSerializer(serializers.ModelSerializer):
|
||||||
|
|||||||
@@ -127,7 +127,7 @@ class MultipleOrderAddSerializer(serializers.Serializer):
|
|||||||
quantity = serializers.IntegerField()
|
quantity = serializers.IntegerField()
|
||||||
unit_amount = serializers.IntegerField()
|
unit_amount = serializers.IntegerField()
|
||||||
currency = serializers.ChoiceField(choices=[('uzs', 'uzs'), ('usd', 'usd')])
|
currency = serializers.ChoiceField(choices=[('uzs', 'uzs'), ('usd', 'usd')])
|
||||||
amount = serializers.UUIDField()
|
amount = serializers.IntegerField()
|
||||||
|
|
||||||
def validate(self, data):
|
def validate(self, data):
|
||||||
product = Product.objects.filter(id=data['product_id']).first()
|
product = Product.objects.filter(id=data['product_id']).first()
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ class PartyCreateSerializer(serializers.Serializer):
|
|||||||
with transaction.atomic():
|
with transaction.atomic():
|
||||||
resources = validated_data.pop('resources')
|
resources = validated_data.pop('resources')
|
||||||
orders = []
|
orders = []
|
||||||
|
total_price = 0
|
||||||
for resource in resources:
|
for resource in resources:
|
||||||
orders.append(Order(
|
orders.append(Order(
|
||||||
product=resource['product'],
|
product=resource['product'],
|
||||||
@@ -38,5 +39,11 @@ class PartyCreateSerializer(serializers.Serializer):
|
|||||||
project=resource.get('project'),
|
project=resource.get('project'),
|
||||||
counterparty=resource.get('counterparty'),
|
counterparty=resource.get('counterparty'),
|
||||||
wherehouse=resource.get('wherehouse'),
|
wherehouse=resource.get('wherehouse'),
|
||||||
|
quantity=resource.get('quantity'),
|
||||||
|
unit_amount=resource.get('unit_amount'),
|
||||||
|
currency=resource.get('currency'),
|
||||||
|
amount=resource.get('amount'),
|
||||||
))
|
))
|
||||||
|
total_price += resource.get('amount')
|
||||||
|
created_orders = Order.objects.bulk_create(orders)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user