From 1aff58a708602de1a2c0fb7942110ebaacc5bf80 Mon Sep 17 00:00:00 2001 From: Marwan Alwali Date: Thu, 6 Feb 2025 11:35:21 +0300 Subject: [PATCH] update --- inventory/__pycache__/views.cpython-311.pyc | Bin 177008 -> 177090 bytes inventory/views.py | 10 +++---- templates/sales/invoices/invoice_preview.html | 25 ++++++++---------- 3 files changed, 14 insertions(+), 21 deletions(-) diff --git a/inventory/__pycache__/views.cpython-311.pyc b/inventory/__pycache__/views.cpython-311.pyc index 0bea3251281c76e2deb91dd75d06c603d08856ff..36fadac538ff095241e666f40f6a1fe600aa4122 100644 GIT binary patch delta 12831 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 diff --git a/inventory/views.py b/inventory/views.py index 738c6bd3..db387c04 100644 --- a/inventory/views.py +++ b/inventory/views.py @@ -782,9 +782,7 @@ class CarFinanceUpdateView(LoginRequiredMixin, SuccessMessageMixin, UpdateView): def get_form(self, form_class=None): form = super().get_form(form_class) dealer = get_user_type(self.request) - form.fields[ - "additional_finances" - ].queryset = models.AdditionalServices.objects.filter(dealer=dealer) + form.fields["additional_finances"].queryset = models.AdditionalServices.objects.filter(dealer=dealer) return form @@ -866,13 +864,13 @@ class CarTransferCreateView(CreateView): # transfer = get_object_or_404(models.CarTransfer, pk=pk) # context = {"transfer": transfer} # return render(request, "inventory/transfer_details.html", context) + class CarTransferDetailView(LoginRequiredMixin, SuccessMessageMixin, DetailView): model = models.CarTransfer template_name = "inventory/transfer_details.html" context_object_name = "transfer" - def car_transfer_approve(request, car_pk, transfer_pk): car = get_object_or_404(models.Car, pk=car_pk) transfer = get_object_or_404(models.CarTransfer, pk=transfer_pk) @@ -1862,9 +1860,7 @@ def OrganizationUpdateView(request,pk): instance.phone = organization_dict["phone_number"] instance.email = organization_dict["email"] - organization_dict["logo"] = organization.additional_info["organization_info"][ - "logo" - ] + organization_dict["logo"] = organization.additional_info["organization_info"]["logo"] organization_dict["pk"] = str(instance.pk) instance.additional_info["organization_info"] = organization_dict instance.additional_info["type"] = "organization" diff --git a/templates/sales/invoices/invoice_preview.html b/templates/sales/invoices/invoice_preview.html index 62d538d7..61157ad9 100644 --- a/templates/sales/invoices/invoice_preview.html +++ b/templates/sales/invoices/invoice_preview.html @@ -1,4 +1,4 @@ -{% load i18n static%} +{% load i18n static custom_filters%} @@ -222,7 +222,8 @@
-

VAT/ضريبة القيمة المضافة ({{vat}}%): {{data.vat}} {{ _("SAR") }}

+ +

VAT/ضريبة القيمة المضافة ({{vat}}%): {{data.vat|percentage}} {{ _("SAR") }}

Additional Services/ الخدمات الإضافية
{% for service in data.additional_services %} @@ -246,30 +247,26 @@

- -