From bec001cbc010f12dd21fc519e3f331e3b47bb5ec Mon Sep 17 00:00:00 2001 From: ismail Date: Wed, 30 Jul 2025 17:38:54 +0300 Subject: [PATCH] fix the item services uom --- inventory/models.py | 5 ++++- inventory/signals.py | 2 +- inventory/views.py | 5 +++++ templates/base.html | 2 +- templates/dealers/dealer_detail.html | 3 ++- templates/ledger/reports/cash_flow_statement.html | 14 +++++++------- 6 files changed, 20 insertions(+), 11 deletions(-) diff --git a/inventory/models.py b/inventory/models.py index 223d8f40..e2653559 100644 --- a/inventory/models.py +++ b/inventory/models.py @@ -48,7 +48,7 @@ from imagekit.models import ImageSpecField from imagekit.processors import ResizeToFill # from plans.models import AbstractPlan # from simple_history.models import HistoricalRecords - +from plans.models import Invoice class Base(models.Model): id = models.UUIDField( @@ -1262,6 +1262,9 @@ class Dealer(models.Model, LocalizedNameMixin): def __str__(self): return self.name + @property + def invoices(self): + return Invoice.objects.filter(order__user=self.user) class StaffTypes(models.TextChoices): # MANAGER = "manager", _("Manager") diff --git a/inventory/signals.py b/inventory/signals.py index e62fafde..4276d69e 100644 --- a/inventory/signals.py +++ b/inventory/signals.py @@ -502,7 +502,7 @@ def create_item_service(sender, instance, created, **kwargs): """ if created: entity = instance.dealer.entity - uom = entity.get_uom_all().get(name=str(instance.uom).lower()) + uom = entity.get_uom_all().filter(unit_abbr=instance.uom).first() cogs = ( entity.get_all_accounts() .filter(role=roles.COGS, active=True, role_default=True) diff --git a/inventory/views.py b/inventory/views.py index a6ce8e19..89b95e9b 100644 --- a/inventory/views.py +++ b/inventory/views.py @@ -7203,6 +7203,7 @@ class ItemServiceCreateView( def form_valid(self, form): dealer = get_user_type(self.request) vat = models.VatRate.objects.get(dealer=dealer, is_active=True) + form.instance.dealer = dealer # if form.instance.taxable: # form.instance.price = (form.instance.price * vat.rate) + form.instance.price @@ -7252,7 +7253,11 @@ class ItemServiceUpdateView( def form_valid(self, form): dealer = get_user_type(self.request) vat = models.VatRate.objects.get(dealer=dealer, is_active=True) + uom = dealer.entity.get_uom_all().filter(unit_abbr=form.instance.uom).first() form.instance.dealer = dealer + form.instance.uom = uom.name + form.instance.item.uom = uom + # if form.instance.taxable: # form.instance.price = (form.instance.price * vat.rate) + form.instance.price return super().form_valid(form) diff --git a/templates/base.html b/templates/base.html index 45491024..53d4dbdf 100644 --- a/templates/base.html +++ b/templates/base.html @@ -84,7 +84,7 @@ {% include "plans/expiration_messages.html" %} {% block period_navigation %} {% endblock period_navigation %} -
+
diff --git a/templates/dealers/dealer_detail.html b/templates/dealers/dealer_detail.html index 59bab6df..7a1730d7 100644 --- a/templates/dealers/dealer_detail.html +++ b/templates/dealers/dealer_detail.html @@ -7,11 +7,12 @@

{% trans 'Profile' %}

+ {{dealer.invoices}}
{{ _("Billing Information") }} diff --git a/templates/ledger/reports/cash_flow_statement.html b/templates/ledger/reports/cash_flow_statement.html index 02e664be..2ab477a2 100644 --- a/templates/ledger/reports/cash_flow_statement.html +++ b/templates/ledger/reports/cash_flow_statement.html @@ -5,16 +5,16 @@ {% block title %} {% trans 'Cash Flow Statement' %} {% endblock %} {% block period_navigation %} - {% if unit_model and entity %} -
{% period_navigation 'unit-cf' %}
+ {% if unit_model and entity %} +
{% period_navigation 'unit-cf' %}
{% elif entity %} -
{% period_navigation 'entity-cf' %}
+
{% period_navigation 'entity-cf' %}
{% elif ledger %} -
{% period_navigation 'ledger-cf' %}
+
{% period_navigation 'ledger-cf' %}
{% elif unit_model %} -
{% period_navigation 'unit-cf' %}
- {% endif %} - {% endblock %} +
{% period_navigation 'unit-cf' %}
+ {% endif %} + {% endblock period_navigation %} {% block content %}