diff --git a/core/apps/orders/serializers/party.py b/core/apps/orders/serializers/party.py index bf276b4..a31baaf 100644 --- a/core/apps/orders/serializers/party.py +++ b/core/apps/orders/serializers/party.py @@ -304,6 +304,7 @@ class PartyUpdateSerializer(serializers.ModelSerializer): } def update(self, instance, validated_data): + total_price = 0 orders_data = validated_data.pop("orders") update_orders = [] with transaction.atomic(): @@ -326,6 +327,7 @@ class PartyUpdateSerializer(serializers.ModelSerializer): order.currency = order_data["currency"] order.unit_amount = order_data["unit_amount"] order.total_price = order_data["total_price"] + total_price += order.total_price if "project_folder" in order_data: order.project_folder = order_data["project_folder"] if "project" in order_data: @@ -348,6 +350,11 @@ class PartyUpdateSerializer(serializers.ModelSerializer): "project", ], ) + party_amount = PartyAmount.objects.get(party=instance) + party_amount.total_price = total_price + party_amount.cost_amount = total_price - instance.discount + party_amount.payment_amount = total_price - instance.discount + party_amount.save() return instance