From 0d48e7281a7fd6b3859e7c51ee40e15fe1e3777b Mon Sep 17 00:00:00 2001 From: aminhashemi92 Date: Tue, 7 Oct 2025 07:07:55 +0330 Subject: [PATCH 01/10] fix price seperation --- templates/_base.html | 2 ++ 1 file changed, 2 insertions(+) diff --git a/templates/_base.html b/templates/_base.html index 94ebdd1..0a41233 100644 --- a/templates/_base.html +++ b/templates/_base.html @@ -169,6 +169,8 @@ layout-navbar-fixed layout-menu-fixed layout-compact + + From b406f1d7c497e32fa190df33a073215fdec20918 Mon Sep 17 00:00:00 2001 From: aminhashemi92 Date: Tue, 7 Oct 2025 07:08:03 +0330 Subject: [PATCH 02/10] fix price seperation --- .../invoices/final_invoice_step.html | 15 ++++++++-- .../invoices/final_settlement_step.html | 28 ++++++++++++++++++- .../invoices/quote_payment_step.html | 11 ++++++-- 3 files changed, 49 insertions(+), 5 deletions(-) diff --git a/invoices/templates/invoices/final_invoice_step.html b/invoices/templates/invoices/final_invoice_step.html index 1d99072..17e6730 100644 --- a/invoices/templates/invoices/final_invoice_step.html +++ b/invoices/templates/invoices/final_invoice_step.html @@ -224,7 +224,7 @@
- +
@@ -246,8 +246,17 @@ else { el.classList.add('show'); el.style.display = 'block'; } } function submitSpecialCharge(){ - const fd = new FormData(document.getElementById('specialChargeForm')); + const form = document.getElementById('specialChargeForm'); + const fd = new FormData(form); fd.append('csrfmiddlewaretoken', document.querySelector('input[name=csrfmiddlewaretoken]').value); + // Ensure raw numeric amount is sent + (function ensureRawAmount(){ + const amountInput = document.getElementById('id_charge_amount'); + if (amountInput){ + const raw = (amountInput.getAttribute('data-raw-value') || amountInput.value.replace(/\D/g, '')); + if (raw) fd.set('amount', raw); + } + })(); fetch('{% url "invoices:add_special_charge" instance.id step.id %}', { method: 'POST', body: fd }) .then(r=>r.json()).then(resp=>{ if (resp.success){ @@ -285,6 +294,8 @@ } }).catch(()=> showToast('خطا در ارتباط با سرور', 'danger')); }); + + // Number formatting is handled by number-formatter.js {% endblock %} diff --git a/invoices/templates/invoices/final_settlement_step.html b/invoices/templates/invoices/final_settlement_step.html index a4767d4..e03a7e2 100644 --- a/invoices/templates/invoices/final_settlement_step.html +++ b/invoices/templates/invoices/final_settlement_step.html @@ -76,7 +76,7 @@
- +
@@ -405,6 +405,14 @@ function buildForm(){ const fd = new FormData(document.getElementById('formFinalPayment')); + // Ensure raw numeric amount is sent + (function ensureRawAmount(){ + const amountInput = document.getElementById('id_amount'); + if (amountInput){ + const raw = (amountInput.getAttribute('data-raw-value') || amountInput.value.replace(/\D/g, '')); + if (raw) fd.set('amount', raw); + } + })(); // تبدیل تاریخ شمسی به میلادی برای ارسال const persianDateValue = $('#id_payment_date').val(); @@ -465,6 +473,24 @@ } // Legacy approve button removed; using modal forms below + + // Handle AJAX form submission with number formatting + $(document).ready(function() { + // Override buildForm function for AJAX submission + const originalBuildForm = window.buildForm; + window.buildForm = function() { + // Set raw values before creating FormData + if (window.setRawValuesForSubmission) { + window.setRawValuesForSubmission(); + } + const result = originalBuildForm ? originalBuildForm() : new FormData(document.querySelector('form')); + // Restore formatted values for display + if (window.restoreFormattedValues) { + window.restoreFormattedValues(); + } + return result; + }; + }); {% endblock %} diff --git a/invoices/templates/invoices/quote_payment_step.html b/invoices/templates/invoices/quote_payment_step.html index e9bc07f..4a071f8 100644 --- a/invoices/templates/invoices/quote_payment_step.html +++ b/invoices/templates/invoices/quote_payment_step.html @@ -72,7 +72,7 @@
- +
@@ -366,6 +366,12 @@ } const form = document.getElementById('formAddPayment'); const fd = buildFormData(form); + // Ensure raw numeric amount is sent + (function ensureRawAmount(){ + const amountInput = document.getElementById('id_amount'); + const raw = (amountInput.getAttribute('data-raw-value') || amountInput.value.replace(/\D/g, '')); + if (raw) fd.set('amount', raw); + })(); // تبدیل تاریخ شمسی به میلادی برای ارسال const persianDateValue = $('#id_payment_date').val(); @@ -383,7 +389,7 @@ setTimeout(() => { window.location.href = resp.redirect; }, 700); } } else { - showToast(resp.message + ':' + resp.error || 'خطا در ثبت فیش', 'danger'); + showToast((resp.message || resp.error || 'خطا در ثبت فیش'), 'danger'); } }).catch(() => showToast('خطا در ارتباط با سرور', 'danger')); }); @@ -460,6 +466,7 @@ } catch (e) { console.error('Error initializing Persian Date Picker:', e); } } })(); + {% endblock %} From 65cc48769dc3f77544da05f90ed1ef5aa759bdcc Mon Sep 17 00:00:00 2001 From: aminhashemi92 Date: Tue, 7 Oct 2025 07:08:23 +0330 Subject: [PATCH 03/10] fix price seperation --- static/assets/js/number-formatter.js | 144 +++++++++++++++++++++++++++ 1 file changed, 144 insertions(+) create mode 100644 static/assets/js/number-formatter.js diff --git a/static/assets/js/number-formatter.js b/static/assets/js/number-formatter.js new file mode 100644 index 0000000..47b2e88 --- /dev/null +++ b/static/assets/js/number-formatter.js @@ -0,0 +1,144 @@ +/** + * Number Formatter Utility + * Formats numbers with comma separators for better readability + */ + +// Format number with comma separators (e.g., 1234567 -> 1,234,567) +function formatNumber(num) { + if (!num) return ''; + return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ','); +} + +// Remove comma separators from formatted number +function unformatNumber(str) { + if (!str) return ''; + return str.replace(/,/g, ''); +} + +// Extract only digits from any string +function extractDigits(str) { + if (!str) return ''; + return str.replace(/\D/g, ''); +} + +// Initialize number formatting for specified input selectors +function initNumberFormatting(selectors) { + if (typeof $ === 'undefined') { + console.warn('jQuery not found. Number formatting requires jQuery.'); + return; + } + + $(document).ready(function() { + selectors.forEach(function(selector) { + // Store cursor position to maintain it after formatting + function setCursorPosition(input, pos) { + if (input.setSelectionRange) { + input.setSelectionRange(pos, pos); + } + } + + $(selector).on('input', function(e) { + let input = $(this); + let inputElement = this; + let value = input.val(); + let cursorPos = inputElement.selectionStart; + + // Extract only digits + let digitsOnly = extractDigits(value); + + // Store raw value + input.attr('data-raw-value', digitsOnly); + + // Format and set the value + let formattedValue = formatNumber(digitsOnly); + input.val(formattedValue); + + // Adjust cursor position + let oldLength = value.length; + let newLength = formattedValue.length; + let newCursorPos = cursorPos + (newLength - oldLength); + + // Make sure cursor position is valid + if (newCursorPos < 0) newCursorPos = 0; + if (newCursorPos > newLength) newCursorPos = newLength; + + // Set cursor position after a short delay + setTimeout(function() { + setCursorPosition(inputElement, newCursorPos); + }, 1); + }); + + // Handle paste events + $(selector).on('paste', function(e) { + let input = $(this); + setTimeout(function() { + let value = input.val(); + let digitsOnly = extractDigits(value); + input.attr('data-raw-value', digitsOnly); + input.val(formatNumber(digitsOnly)); + }, 1); + }); + }); + + // Before form submission, replace formatted values with raw values + $('form').on('submit', function() { + selectors.forEach(function(selector) { + let input = $(selector); + let rawValue = input.attr('data-raw-value'); + if (rawValue) { + input.val(rawValue); + } + }); + }); + }); +} + +// Helper function to get raw value from formatted input +function getRawValue(input) { + return $(input).attr('data-raw-value') || unformatNumber($(input).val()); +} + +// Helper function to set raw value before AJAX submission +function setRawValuesForSubmission(selectors) { + selectors.forEach(function(selector) { + let input = $(selector); + let rawValue = input.attr('data-raw-value'); + if (rawValue) { + input.val(rawValue); + } + }); +} + +// Helper function to restore formatted values after AJAX submission +function restoreFormattedValues(selectors) { + selectors.forEach(function(selector) { + let input = $(selector); + let rawValue = input.attr('data-raw-value'); + if (rawValue) { + input.val(formatNumber(rawValue)); + } + }); +} + +// Auto-initialize for common amount input selectors +$(document).ready(function() { + const commonSelectors = [ + '#id_amount', + '#id_charge_amount', + 'input[name="amount"]', + 'input[name="unit_price"]', + 'input[name="price"]' + ]; + + initNumberFormatting(commonSelectors); + + // Make helper functions globally available for AJAX forms + window.formatNumber = formatNumber; + window.unformatNumber = unformatNumber; + window.getRawValue = getRawValue; + // Avoid name collision causing recursion by aliasing helpers + const __nf_setRawValuesForSubmission = setRawValuesForSubmission; + const __nf_restoreFormattedValues = restoreFormattedValues; + window.setRawValuesForSubmission = function() { __nf_setRawValuesForSubmission(commonSelectors); }; + window.restoreFormattedValues = function() { __nf_restoreFormattedValues(commonSelectors); }; +}); From 169a9bd6247ec9c9878890656f7cc17181a2df0e Mon Sep 17 00:00:00 2001 From: aminhashemi92 Date: Tue, 7 Oct 2025 07:45:09 +0330 Subject: [PATCH 04/10] fix force approve and vat show --- .gitignore | 4 +- invoices/models.py | 18 +++++ .../invoices/final_invoice_print.html | 4 + .../invoices/final_invoice_step.html | 4 + .../invoices/final_settlement_step.html | 4 +- .../invoices/quote_preview_step.html | 2 + invoices/templates/invoices/quote_print.html | 4 + invoices/views.py | 79 +++++++++++++++++++ .../templates/processes/request_list.html | 7 +- processes/views.py | 12 +++ 10 files changed, 133 insertions(+), 5 deletions(-) diff --git a/.gitignore b/.gitignore index 77e02cd..d975f31 100644 --- a/.gitignore +++ b/.gitignore @@ -9,8 +9,8 @@ *.pyc __pycache__/ local_settings.py -# *.sqlite3 -# db.sqlite3 +*.sqlite3 +db.sqlite3 db.sqlite3-journal media #static diff --git a/invoices/models.py b/invoices/models.py index 4a48c8c..89dcd50 100644 --- a/invoices/models.py +++ b/invoices/models.py @@ -151,6 +151,15 @@ class Quote(NameSlugModel): remaining = Decimal('0') return remaining + def get_vat_amount(self) -> Decimal: + """محاسبه مبلغ مالیات به صورت جداگانه بر اساس VAT_RATE.""" + base_amount = (self.total_amount or Decimal('0')) - (self.discount_amount or Decimal('0')) + try: + vat_rate = Decimal(str(getattr(settings, 'VAT_RATE', 0))) + except Exception: + vat_rate = Decimal('0') + return base_amount * vat_rate + class QuoteItem(BaseModel): """مدل آیتم‌های پیش‌فاکتور""" quote = models.ForeignKey(Quote, on_delete=models.CASCADE, related_name='items', verbose_name="پیش‌فاکتور") @@ -291,6 +300,15 @@ class Invoice(NameSlugModel): remaining = self.final_amount - paid return remaining + def get_vat_amount(self) -> Decimal: + """محاسبه مبلغ مالیات به صورت جداگانه بر اساس VAT_RATE.""" + base_amount = (self.total_amount or Decimal('0')) - (self.discount_amount or Decimal('0')) + try: + vat_rate = Decimal(str(getattr(settings, 'VAT_RATE', 0))) + except Exception: + vat_rate = Decimal('0') + return base_amount * vat_rate + def get_status_display_with_color(self): """نمایش وضعیت با رنگ""" diff --git a/invoices/templates/invoices/final_invoice_print.html b/invoices/templates/invoices/final_invoice_print.html index d9c8333..1b28c4e 100644 --- a/invoices/templates/invoices/final_invoice_print.html +++ b/invoices/templates/invoices/final_invoice_print.html @@ -153,6 +153,10 @@ {{ invoice.discount_amount|floatformat:0|intcomma:False }} {% endif %} + + مالیات بر ارزش افزوده(تومان): + {{ invoice.get_vat_amount|floatformat:0|intcomma:False }} + مبلغ نهایی (شامل مالیات)(تومان): {{ invoice.final_amount|floatformat:0|intcomma:False }} diff --git a/invoices/templates/invoices/final_invoice_step.html b/invoices/templates/invoices/final_invoice_step.html index 17e6730..3200a48 100644 --- a/invoices/templates/invoices/final_invoice_step.html +++ b/invoices/templates/invoices/final_invoice_step.html @@ -159,6 +159,10 @@ تخفیف {{ invoice.discount_amount|floatformat:0|intcomma:False }} تومان + + مالیات بر ارزش افزوده + {{ invoice.get_vat_amount|floatformat:0|intcomma:False }} تومان + مبلغ نهایی (با مالیات) {{ invoice.final_amount|floatformat:0|intcomma:False }} تومان diff --git a/invoices/templates/invoices/final_settlement_step.html b/invoices/templates/invoices/final_settlement_step.html index e03a7e2..e32fa41 100644 --- a/invoices/templates/invoices/final_settlement_step.html +++ b/invoices/templates/invoices/final_settlement_step.html @@ -60,7 +60,7 @@
- {% if is_broker %} + {% if is_broker and invoice.get_remaining_amount != 0 %}
ثبت تراکنش تسویه
@@ -193,7 +193,7 @@
- {% if approver_statuses %} + {% if approver_statuses and invoice.get_remaining_amount != 0 and step_instance.status != 'completed' %}
وضعیت تاییدها
diff --git a/invoices/templates/invoices/quote_preview_step.html b/invoices/templates/invoices/quote_preview_step.html index eeead73..08e3bd8 100644 --- a/invoices/templates/invoices/quote_preview_step.html +++ b/invoices/templates/invoices/quote_preview_step.html @@ -213,6 +213,7 @@ {% if quote.discount_amount > 0 %}

تخفیف:

{% endif %} +

مالیات بر ارزش افزوده:

مبلغ نهایی (شامل مالیات):

@@ -220,6 +221,7 @@ {% if quote.discount_amount > 0 %}

{{ quote.discount_amount|floatformat:0|intcomma:False }} تومان

{% endif %} +

{{ quote.get_vat_amount|floatformat:0|intcomma:False }} تومان

{{ quote.final_amount|floatformat:0|intcomma:False }} تومان

diff --git a/invoices/templates/invoices/quote_print.html b/invoices/templates/invoices/quote_print.html index fc445a6..fb67046 100644 --- a/invoices/templates/invoices/quote_print.html +++ b/invoices/templates/invoices/quote_print.html @@ -212,6 +212,10 @@ {{ quote.discount_amount|floatformat:0|intcomma:False }} {% endif %} + + مالیات بر ارزش افزوده(تومان): + {{ quote.get_vat_amount|floatformat:0|intcomma:False }} + مبلغ نهایی (با مالیات)(تومان): {{ quote.final_amount|floatformat:0|intcomma:False }} diff --git a/invoices/views.py b/invoices/views.py index 778d837..04ea85c 100644 --- a/invoices/views.py +++ b/invoices/views.py @@ -898,6 +898,29 @@ def add_special_charge(request, instance_id, step_id): unit_price=amount_dec, ) invoice.calculate_totals() + # If the next step was completed, reopen it (set to in_progress) due to invoice change + try: + step = get_object_or_404(instance.process.steps, id=step_id) + next_step = instance.process.steps.filter(order__gt=step.order).first() + if next_step: + si, _ = StepInstance.objects.get_or_create(process_instance=instance, step=next_step) + if si.status in ['completed', 'approved']: + si.status = 'in_progress' + si.completed_at = None + si.save(update_fields=['status', 'completed_at']) + # Clear prior approvals/rejections as the underlying totals changed + try: + for appr in list(si.approvals.all()): + appr.delete() + except Exception: + pass + try: + for rej in list(si.rejections.all()): + rej.delete() + except Exception: + pass + except Exception: + pass return JsonResponse({'success': True, 'redirect': reverse('invoices:final_invoice_step', args=[instance.id, step_id])}) @@ -921,6 +944,29 @@ def delete_special_charge(request, instance_id, step_id, item_id): return JsonResponse({'success': False, 'message': 'امکان حذف این مورد وجود ندارد'}) inv_item.hard_delete() invoice.calculate_totals() + # If the next step was completed, reopen it (set to in_progress) due to invoice change + try: + step = get_object_or_404(instance.process.steps, id=step_id) + next_step = instance.process.steps.filter(order__gt=step.order).first() + if next_step: + si, _ = StepInstance.objects.get_or_create(process_instance=instance, step=next_step) + if si.status in ['completed', 'approved']: + si.status = 'in_progress' + si.completed_at = None + si.save(update_fields=['status', 'completed_at']) + # Clear prior approvals/rejections as the underlying totals changed + try: + for appr in list(si.approvals.all()): + appr.delete() + except Exception: + pass + try: + for rej in list(si.rejections.all()): + rej.delete() + except Exception: + pass + except Exception: + pass return JsonResponse({'success': True, 'redirect': reverse('invoices:final_invoice_step', args=[instance.id, step_id])}) @@ -939,6 +985,23 @@ def final_settlement_step(request, instance_id, step_id): # Ensure step instance exists step_instance, _ = StepInstance.objects.get_or_create(process_instance=instance, step=step, defaults={'status': 'in_progress'}) + + # Auto-complete step when invoice is fully settled (no approvals needed) + try: + invoice.calculate_totals() + if invoice.get_remaining_amount() == 0: + if step_instance.status != 'completed': + step_instance.status = 'completed' + step_instance.completed_at = timezone.now() + step_instance.save() + # if next_step: + # instance.current_step = next_step + # instance.save(update_fields=['current_step']) + # return redirect('processes:step_detail', instance_id=instance.id, step_id=next_step.id) + # return redirect('processes:request_list') + except Exception: + # If totals calculation fails, continue with normal flow + pass # Build approver statuses for template (include reason to display in UI) reqs = list(step.approver_requirements.select_related('role').all()) @@ -1048,6 +1111,14 @@ def final_settlement_step(request, instance_id, step_id): except Exception: messages.error(request, 'فقط مدیر مجاز به تایید اضطراری است.') return redirect('invoices:final_settlement_step', instance_id=instance.id, step_id=step.id) + # Allow emergency approval only when invoice has a remaining (non-zero) + try: + invoice.calculate_totals() + if invoice.get_remaining_amount() == 0: + messages.error(request, 'فاکتور تسویه شده است؛ تایید اضطراری لازم نیست.') + return redirect('invoices:final_settlement_step', instance_id=instance.id, step_id=step.id) + except Exception: + pass # Mark step completed regardless of remaining amount/approvals step_instance.status = 'approved' step_instance.save() @@ -1094,6 +1165,14 @@ def add_final_payment(request, instance_id, step_id): except Exception: return JsonResponse({'success': False, 'message': 'شما مجوز افزودن تراکنش تسویه را ندارید'}, status=403) + # Prevent adding payments if invoice already settled + try: + invoice.calculate_totals() + if invoice.get_remaining_amount() == 0: + return JsonResponse({'success': False, 'message': 'فاکتور تسویه شده است؛ افزودن تراکنش مجاز نیست'}) + except Exception: + pass + amount = (request.POST.get('amount') or '').strip() payment_date = (request.POST.get('payment_date') or '').strip() payment_method = (request.POST.get('payment_method') or '').strip() diff --git a/processes/templates/processes/request_list.html b/processes/templates/processes/request_list.html index 9ec7e92..eee1727 100644 --- a/processes/templates/processes/request_list.html +++ b/processes/templates/processes/request_list.html @@ -245,7 +245,12 @@ {{ item.progress_percentage }}%
- {{ item.instance.get_status_display_with_color|safe }} + + {{ item.instance.get_status_display_with_color|safe }} + {% if item.emergency_approved %} + تایید اضطراری + {% endif %} + {% if item.installation_scheduled_date %}
diff --git a/processes/views.py b/processes/views.py index e959b2e..372c8e7 100644 --- a/processes/views.py +++ b/processes/views.py @@ -123,6 +123,17 @@ def request_list(request): reference_date = None installation_scheduled_date = reference_date if reference_date and reference_date > sched_date else sched_date + + # Emergency approved flag (final settlement step forced approval) + try: + final_settlement_step = instance.process.steps.filter(order=8).first() + emergency_approved = False + if final_settlement_step: + si = instance.step_instances.filter(step=final_settlement_step).first() + emergency_approved = bool(si and si.status == 'approved') + except Exception: + emergency_approved = False + instances_with_progress.append({ 'instance': instance, 'progress_percentage': round(progress_percentage), @@ -130,6 +141,7 @@ def request_list(request): 'total_steps': total_steps, 'installation_scheduled_date': installation_scheduled_date, 'installation_overdue_days': overdue_days, + 'emergency_approved': emergency_approved, }) # Summary stats for header cards From dd64b7b47cda3c397e2aa939782c0727eafaa652 Mon Sep 17 00:00:00 2001 From: aminhashemi92 Date: Tue, 7 Oct 2025 07:59:52 +0330 Subject: [PATCH 05/10] fix quote payments show --- invoices/models.py | 4 ++-- invoices/templates/invoices/quote_payment_step.html | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/invoices/models.py b/invoices/models.py index 89dcd50..93fcfc9 100644 --- a/invoices/models.py +++ b/invoices/models.py @@ -137,11 +137,11 @@ class Quote(NameSlugModel): return '{}'.format(color, self.get_status_display()) def get_paid_amount(self): - """مبلغ پرداخت شده برای این پیش‌فاکتور بر اساس پرداخت‌های فاکتور مرتبط""" + """خالص پرداختی (دریافتی از مشتری منهای پرداختی به مشتری) برای این پیش‌فاکتور بر اساس پرداخت‌های فاکتور مرتبط""" invoice = Invoice.objects.filter(quote=self).first() if not invoice: return Decimal('0') - return sum(p.amount for p in invoice.payments.filter(is_deleted=False).all()) + return sum((p.amount if p.direction == 'in' else -p.amount) for p in invoice.payments.filter(is_deleted=False).all()) def get_remaining_amount(self): """مبلغ باقی‌مانده بر اساس پرداخت‌ها""" diff --git a/invoices/templates/invoices/quote_payment_step.html b/invoices/templates/invoices/quote_payment_step.html index 4a071f8..05096e4 100644 --- a/invoices/templates/invoices/quote_payment_step.html +++ b/invoices/templates/invoices/quote_payment_step.html @@ -153,6 +153,7 @@ + @@ -163,7 +164,8 @@ {% for p in payments %} - + + @@ -175,9 +177,7 @@ {% endif %} {% if is_broker %} - + {% endif %} From 02415f4dee784402b7edfbde80d7cf74e45134ff Mon Sep 17 00:00:00 2001 From: aminhashemi92 Date: Tue, 7 Oct 2025 08:01:58 +0330 Subject: [PATCH 06/10] change to rial --- .../installation_report_step.html | 4 ++-- invoices/admin.py | 4 ++-- invoices/models.py | 4 ++-- .../invoices/final_invoice_print.html | 16 ++++++------- .../invoices/final_invoice_step.html | 24 +++++++++---------- .../invoices/final_settlement_step.html | 12 +++++----- .../invoices/quote_payment_step.html | 12 +++++----- .../invoices/quote_preview_step.html | 12 +++++----- invoices/templates/invoices/quote_print.html | 12 +++++----- invoices/templates/invoices/quote_step.html | 4 ++-- .../templates/processes/instance_summary.html | 8 +++---- 11 files changed, 56 insertions(+), 56 deletions(-) diff --git a/installations/templates/installations/installation_report_step.html b/installations/templates/installations/installation_report_step.html index d6a7cfc..5f6020f 100644 --- a/installations/templates/installations/installation_report_step.html +++ b/installations/templates/installations/installation_report_step.html @@ -435,7 +435,7 @@ {% if qi.item.description %}{{ qi.item.description }}{% endif %} - + @@ -474,7 +474,7 @@ {% if it.description %}{{ it.description }}{% endif %} - + - - + + @@ -144,29 +144,29 @@ - + {% if invoice.discount_amount > 0 %} - + {% endif %} - + - + - + - + diff --git a/invoices/templates/invoices/final_invoice_step.html b/invoices/templates/invoices/final_invoice_step.html index 3200a48..c2e3b64 100644 --- a/invoices/templates/invoices/final_invoice_step.html +++ b/invoices/templates/invoices/final_invoice_step.html @@ -68,19 +68,19 @@
مبلغ نهایی (با مالیات)
-
{{ invoice.final_amount|floatformat:0|intcomma:False }} تومان
+
{{ invoice.final_amount|floatformat:0|intcomma:False }} ریال
پرداختی‌ها
-
{{ invoice.get_paid_amount|floatformat:0|intcomma:False }} تومان
+
{{ invoice.get_paid_amount|floatformat:0|intcomma:False }} ریال
مانده
-
{{ invoice.get_remaining_amount|floatformat:0|intcomma:False }} تومان
+
{{ invoice.get_remaining_amount|floatformat:0|intcomma:False }} ریال
@@ -100,8 +100,8 @@
- - + + @@ -153,27 +153,27 @@ - + - + - + - + - + - +
نوع مبلغ تاریخ پرداخت/سررسید چک روش
{{ p.amount|floatformat:0|intcomma:False }} تومان{% if p.direction == 'in' %}دریافتی{% else %}پرداختی{% endif %}{{ p.amount|floatformat:0|intcomma:False }} تومان {{ p.jpayment_date }} {{ p.get_payment_method_display }} {{ p.reference_number|default:'-' }} {{ qi.unit_price|floatformat:0|intcomma:False }} تومان{{ qi.unit_price|floatformat:0|intcomma:False }} ریال {% if removed_qty|get_item:qi.item.id %}{{ removed_qty|get_item:qi.item.id }}{% else %}{{ qi.quantity }}{% endif %} {{ it.unit_price|floatformat:0|intcomma:False }} تومان{{ it.unit_price|floatformat:0|intcomma:False }} ریال {% with add_entry=added_map|get_item:it.id %} diff --git a/invoices/admin.py b/invoices/admin.py index 72df296..a53e692 100644 --- a/invoices/admin.py +++ b/invoices/admin.py @@ -57,13 +57,13 @@ class InvoiceAdmin(SimpleHistoryAdmin): status_display.short_description = "وضعیت" def paid_amount_display(self, obj): - return f"{obj.get_paid_amount():,.0f} تومان" + return f"{obj.get_paid_amount():,.0f} ریال" paid_amount_display.short_description = "مبلغ پرداخت شده" def remaining_amount_display(self, obj): amount = obj.get_remaining_amount() color = "green" if amount <= 0 else "red" - return format_html('{:,.0f} تومان', color, amount) + return format_html('{:,.0f} ریال', color, amount) remaining_amount_display.short_description = "مبلغ باقی‌مانده" @admin.register(Payment) diff --git a/invoices/models.py b/invoices/models.py index 93fcfc9..b93e4b4 100644 --- a/invoices/models.py +++ b/invoices/models.py @@ -38,7 +38,7 @@ class Item(NameSlugModel): ordering = ['name'] def __str__(self): - return f"{self.name} - {self.unit_price} تومان" + return f"{self.name} - {self.unit_price} ریال" class Quote(NameSlugModel): """مدل پیش‌فاکتور""" @@ -383,7 +383,7 @@ class Payment(BaseModel): ordering = ['-payment_date'] def __str__(self): - return f"پرداخت {self.amount} تومان - {self.invoice.name}" + return f"پرداخت {self.amount} ریال - {self.invoice.name}" def save(self, *args, **kwargs): """بروزرسانی مبالغ فاکتور""" diff --git a/invoices/templates/invoices/final_invoice_print.html b/invoices/templates/invoices/final_invoice_print.html index 1b28c4e..36e23f0 100644 --- a/invoices/templates/invoices/final_invoice_print.html +++ b/invoices/templates/invoices/final_invoice_print.html @@ -124,8 +124,8 @@ شرح کالا/خدمات توضیحات تعدادقیمت واحد(تومان)قیمت کل(تومان)قیمت واحد(ریال)قیمت کل(ریال)
جمع کل(تومان):جمع کل(ریال): {{ invoice.total_amount|floatformat:0|intcomma:False }}
تخفیف(تومان):تخفیف(ریال): {{ invoice.discount_amount|floatformat:0|intcomma:False }}
مالیات بر ارزش افزوده(تومان):مالیات بر ارزش افزوده(ریال): {{ invoice.get_vat_amount|floatformat:0|intcomma:False }}
مبلغ نهایی (شامل مالیات)(تومان):مبلغ نهایی (شامل مالیات)(ریال): {{ invoice.final_amount|floatformat:0|intcomma:False }}
پرداختی‌ها(تومان):پرداختی‌ها(ریال): {{ invoice.get_paid_amount|floatformat:0|intcomma:False }}
مانده(تومان):مانده(ریال): {{ invoice.get_remaining_amount|floatformat:0|intcomma:False }}
افزوده حذف تعداد نهاییقیمت واحد (تومان)قیمت کل (تومان)قیمت واحد (ریال)قیمت کل (ریال)
مبلغ کل{{ invoice.total_amount|floatformat:0|intcomma:False }} تومان{{ invoice.total_amount|floatformat:0|intcomma:False }} ریال
تخفیف{{ invoice.discount_amount|floatformat:0|intcomma:False }} تومان{{ invoice.discount_amount|floatformat:0|intcomma:False }} ریال
مالیات بر ارزش افزوده{{ invoice.get_vat_amount|floatformat:0|intcomma:False }} تومان{{ invoice.get_vat_amount|floatformat:0|intcomma:False }} ریال
مبلغ نهایی (با مالیات){{ invoice.final_amount|floatformat:0|intcomma:False }} تومان{{ invoice.final_amount|floatformat:0|intcomma:False }} ریال
پرداختی‌ها{{ invoice.get_paid_amount|floatformat:0|intcomma:False }} تومان{{ invoice.get_paid_amount|floatformat:0|intcomma:False }} ریال
مانده{{ invoice.get_remaining_amount|floatformat:0|intcomma:False }} تومان{{ invoice.get_remaining_amount|floatformat:0|intcomma:False }} ریال
@@ -227,7 +227,7 @@
- +
diff --git a/invoices/templates/invoices/final_settlement_step.html b/invoices/templates/invoices/final_settlement_step.html index e32fa41..0e7916b 100644 --- a/invoices/templates/invoices/final_settlement_step.html +++ b/invoices/templates/invoices/final_settlement_step.html @@ -75,7 +75,7 @@
- +
@@ -122,19 +122,19 @@
مبلغ نهایی (با مالیات)
-
{{ invoice.final_amount|floatformat:0|intcomma:False }} تومان
+
{{ invoice.final_amount|floatformat:0|intcomma:False }} ریال
پرداختی‌ها
-
{{ invoice.get_paid_amount|floatformat:0|intcomma:False }} تومان
+
{{ invoice.get_paid_amount|floatformat:0|intcomma:False }} ریال
مانده
-
{{ invoice.get_remaining_amount|floatformat:0|intcomma:False }} تومان
+
{{ invoice.get_remaining_amount|floatformat:0|intcomma:False }} ریال
@@ -166,7 +166,7 @@ {% for p in payments %} {% if p.direction == 'in' %}دریافتی{% else %}پرداختی{% endif %} - {{ p.amount|floatformat:0|intcomma:False }} تومان + {{ p.amount|floatformat:0|intcomma:False }} ریال {{ p.jpayment_date }} {{ p.get_payment_method_display }} {{ p.reference_number|default:'-' }} @@ -320,7 +320,7 @@
- +
@@ -117,19 +117,19 @@
مبلغ نهایی پیش‌فاکتور (با مالیات)
-
{{ totals.final_amount|floatformat:0|intcomma:False }} تومان
+
{{ totals.final_amount|floatformat:0|intcomma:False }} ریال
مبلغ پرداخت‌شده
-
{{ totals.paid_amount|floatformat:0|intcomma:False }} تومان
+
{{ totals.paid_amount|floatformat:0|intcomma:False }} ریال
مانده
-
{{ totals.remaining_amount|floatformat:0|intcomma:False }} تومان
+
{{ totals.remaining_amount|floatformat:0|intcomma:False }} ریال
@@ -165,7 +165,7 @@ {% for p in payments %} {% if p.direction == 'in' %}دریافتی{% else %}پرداختی{% endif %} - {{ p.amount|floatformat:0|intcomma:False }} تومان + {{ p.amount|floatformat:0|intcomma:False }} ریال {{ p.jpayment_date }} {{ p.get_payment_method_display }} {{ p.reference_number|default:'-' }} @@ -301,7 +301,7 @@ {% if not totals.is_fully_paid %} آیا مطمئن هستید که می‌خواهید مرحله را تایید کنید؟ {% else %} diff --git a/invoices/templates/invoices/quote_preview_step.html b/invoices/templates/invoices/quote_preview_step.html index 08e3bd8..0742094 100644 --- a/invoices/templates/invoices/quote_preview_step.html +++ b/invoices/templates/invoices/quote_preview_step.html @@ -200,9 +200,9 @@ {{ quote_item.item.name }} {{ quote_item.item.description|default:"-" }} - {{ quote_item.unit_price|floatformat:0|intcomma:False }} تومان + {{ quote_item.unit_price|floatformat:0|intcomma:False }} ریال {{ quote_item.quantity }} - {{ quote_item.total_price|floatformat:0|intcomma:False }} تومان + {{ quote_item.total_price|floatformat:0|intcomma:False }} ریال {% endfor %} @@ -217,12 +217,12 @@

مبلغ نهایی (شامل مالیات):

-

{{ quote.total_amount|floatformat:0|intcomma:False }} تومان

+

{{ quote.total_amount|floatformat:0|intcomma:False }} ریال

{% if quote.discount_amount > 0 %} -

{{ quote.discount_amount|floatformat:0|intcomma:False }} تومان

+

{{ quote.discount_amount|floatformat:0|intcomma:False }} ریال

{% endif %} -

{{ quote.get_vat_amount|floatformat:0|intcomma:False }} تومان

-

{{ quote.final_amount|floatformat:0|intcomma:False }} تومان

+

{{ quote.get_vat_amount|floatformat:0|intcomma:False }} ریال

+

{{ quote.final_amount|floatformat:0|intcomma:False }} ریال

diff --git a/invoices/templates/invoices/quote_print.html b/invoices/templates/invoices/quote_print.html index fb67046..052f579 100644 --- a/invoices/templates/invoices/quote_print.html +++ b/invoices/templates/invoices/quote_print.html @@ -185,8 +185,8 @@ شرح کالا/خدمات توضیحات تعداد - قیمت واحد(تومان) - قیمت کل(تومان) + قیمت واحد(ریال) + قیمت کل(ریال) @@ -203,21 +203,21 @@ - جمع کل(تومان): + جمع کل(ریال): {{ quote.total_amount|floatformat:0|intcomma:False }} {% if quote.discount_amount > 0 %} - تخفیف(تومان): + تخفیف(ریال): {{ quote.discount_amount|floatformat:0|intcomma:False }} {% endif %} - مالیات بر ارزش افزوده(تومان): + مالیات بر ارزش افزوده(ریال): {{ quote.get_vat_amount|floatformat:0|intcomma:False }} - مبلغ نهایی (با مالیات)(تومان): + مبلغ نهایی (با مالیات)(ریال): {{ quote.final_amount|floatformat:0|intcomma:False }} diff --git a/invoices/templates/invoices/quote_step.html b/invoices/templates/invoices/quote_step.html index 853f250..82ec091 100644 --- a/invoices/templates/invoices/quote_step.html +++ b/invoices/templates/invoices/quote_step.html @@ -57,7 +57,7 @@
پیش‌فاکتور موجود
{{ existing_quote.name }} | - مبلغ کل (با احتساب مالیات): {{ existing_quote.final_amount|floatformat:0|intcomma:False }} تومان | + مبلغ کل (با احتساب مالیات): {{ existing_quote.final_amount|floatformat:0|intcomma:False }} ریال | وضعیت: {{ existing_quote.get_status_display_with_color|safe }}
@@ -97,7 +97,7 @@ {% if item.description %}{{ item.description }}{% endif %}
- {{ item.unit_price|floatformat:0|intcomma:False }} تومان + {{ item.unit_price|floatformat:0|intcomma:False }} ریال {% if invoice %}
-
مبلغ نهایی
{{ invoice.final_amount|floatformat:0|intcomma:False }} تومان
-
پرداختی‌ها
{{ invoice.get_paid_amount|floatformat:0|intcomma:False }} تومان
-
مانده
{{ invoice.get_remaining_amount|floatformat:0|intcomma:False }} تومان
+
مبلغ نهایی
{{ invoice.final_amount|floatformat:0|intcomma:False }} ریال
+
پرداختی‌ها
{{ invoice.get_paid_amount|floatformat:0|intcomma:False }} ریال
+
مانده
{{ invoice.get_remaining_amount|floatformat:0|intcomma:False }} ریال
@@ -237,7 +237,7 @@ {% for p in payments %} - + From 68cf7761d7c7bb3ced8277715f71d8a8ec0a78d1 Mon Sep 17 00:00:00 2001 From: aminhashemi92 Date: Tue, 7 Oct 2025 08:31:40 +0330 Subject: [PATCH 07/10] add meter model for smart meter --- installations/forms.py | 9 ++- installations/models.py | 5 ++ .../installation_report_step.html | 56 ++++++++++++++++++- 3 files changed, 67 insertions(+), 3 deletions(-) diff --git a/installations/forms.py b/installations/forms.py index 86e7428..e877b2b 100644 --- a/installations/forms.py +++ b/installations/forms.py @@ -20,7 +20,7 @@ class InstallationReportForm(forms.ModelForm): model = InstallationReport fields = [ 'visited_date', 'new_water_meter_serial', 'seal_number', - 'utm_x', 'utm_y', 'meter_type', 'meter_size', + 'utm_x', 'utm_y', 'meter_type', 'meter_size', 'meter_model', 'discharge_pipe_diameter', 'usage_type', 'exploitation_license_number', 'motor_power', 'pre_calibration_flow_rate', 'post_calibration_flow_rate', 'water_meter_manufacturer', 'sim_number', 'driving_force', @@ -62,6 +62,13 @@ class InstallationReportForm(forms.ModelForm): 'meter_size': forms.TextInput(attrs={ 'class': 'form-control' }), + 'meter_model': forms.Select(attrs={ + 'class': 'form-select' + }, choices=[ + ('', 'انتخاب کنید'), + ('A', 'A'), + ('B', 'B') + ]), 'discharge_pipe_diameter': forms.NumberInput(attrs={ 'class': 'form-control', 'min': '0', diff --git a/installations/models.py b/installations/models.py index 6eed7a5..6cd48bd 100644 --- a/installations/models.py +++ b/installations/models.py @@ -47,6 +47,11 @@ class InstallationReport(BaseModel): ('volumetric', 'حجمی'), ] meter_type = models.CharField(max_length=20, choices=METER_TYPE_CHOICES, null=True, blank=True, verbose_name='نوع کنتور') + METER_MODEL_CHOICES = [ + ('A', 'A'), + ('B', 'B'), + ] + meter_model = models.CharField(max_length=20, choices=METER_MODEL_CHOICES, null=True, blank=True, verbose_name='مدل کنتور') meter_size = models.CharField(max_length=50, null=True, blank=True, verbose_name='سایز کنتور') discharge_pipe_diameter = models.PositiveIntegerField(null=True, blank=True, verbose_name='قطر لوله آبده (اینچ)') USAGE_TYPE_CHOICES = [ diff --git a/installations/templates/installations/installation_report_step.html b/installations/templates/installations/installation_report_step.html index 5f6020f..745fc45 100644 --- a/installations/templates/installations/installation_report_step.html +++ b/installations/templates/installations/installation_report_step.html @@ -86,7 +86,11 @@

سریال جدید: {{ report.new_water_meter_serial|default:'-' }}

شماره پلمپ: {{ report.seal_number|default:'-' }}

نوع کنتور: {{ report.get_meter_type_display|default:'-' }}

+ {% if report.meter_type == 'smart' %} +

مدل کنتور: {{ report.get_meter_model_display|default:'-' }}

+ {% else %}

سایز کنتور: {{ report.meter_size|default:'-' }}

+ {% endif %}

قطر لوله آبده (اینچ): {{ report.discharge_pipe_diameter|default:'-' }}

سازنده کنتور: {{ report.water_meter_manufacturer|default:'-' }}

شماره سیمکارت: {{ report.sim_number|default:'-' }}

@@ -279,13 +283,20 @@
{{ form.meter_type.errors.0 }}
{% endif %} -
+
{{ form.meter_size.label_tag }} {{ form.meter_size }} {% if form.meter_size.errors %}
{{ form.meter_size.errors.0 }}
{% endif %}
+
+ {{ form.meter_model.label_tag }} + {{ form.meter_model }} + {% if form.meter_model.errors %} +
{{ form.meter_size.errors.0 }}
+ {% endif %} +
{{ form.discharge_pipe_diameter.label_tag }} {{ form.discharge_pipe_diameter }} @@ -329,7 +340,7 @@ {% endif %}
- {{ form.water_meter_manufacturer.label_tag }} + {{ form.water_meter_manufacturer.label_tag }}حجمی
{{ form.water_meter_manufacturer }} {{ form.new_manufacturer }} @@ -759,6 +770,47 @@ } } } + + // Dynamic meter field visibility based on meter type + (function() { + const meterTypeSelect = document.getElementById('{{ form.meter_type.id_for_label }}'); + const meterSizeWrapper = document.getElementById('meter_size_wrapper'); + const meterModelWrapper = document.getElementById('meter_model_wrapper'); + + function updateMeterFields() { + if (!meterTypeSelect) return; + + const selectedType = meterTypeSelect.value; + + if (selectedType === 'smart') { + // Show meter_model, hide meter_size + meterModelWrapper.style.display = ''; + meterSizeWrapper.style.display = 'none'; + // Clear meter_size value when hidden + const meterSizeInput = meterSizeWrapper.querySelector('input, select'); + if (meterSizeInput) meterSizeInput.value = ''; + } else if (selectedType === 'volumetric') { + // Show meter_size, hide meter_model + meterSizeWrapper.style.display = ''; + meterModelWrapper.style.display = 'none'; + // Clear meter_model value when hidden + const meterModelSelect = meterModelWrapper.querySelector('select'); + if (meterModelSelect) meterModelSelect.value = ''; + } else { + // No selection: hide both + meterSizeWrapper.style.display = 'none'; + meterModelWrapper.style.display = 'none'; + } + } + + // Initial update on page load + updateMeterFields(); + + // Update on change + if (meterTypeSelect) { + meterTypeSelect.addEventListener('change', updateMeterFields); + } + })(); {% endblock %} From 9daec9c8f1fe3e1c939d49a518be9a36025ca4bb Mon Sep 17 00:00:00 2001 From: aminhashemi92 Date: Tue, 7 Oct 2025 08:33:21 +0330 Subject: [PATCH 08/10] next step only in not edit mode --- .../templates/installations/installation_report_step.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/installations/templates/installations/installation_report_step.html b/installations/templates/installations/installation_report_step.html index 745fc45..2d14128 100644 --- a/installations/templates/installations/installation_report_step.html +++ b/installations/templates/installations/installation_report_step.html @@ -516,7 +516,7 @@ {% if user_is_installer %} {% endif %} - {% if next_step %} + {% if next_step and not edit_mode %} بعدی From 92ad9ee301ff9f2d6da19005407cbe5f39d20fa2 Mon Sep 17 00:00:00 2001 From: Hadi Date: Tue, 7 Oct 2025 10:20:57 +0330 Subject: [PATCH 09/10] add migration files --- .../0007_installationreport_meter_model.py | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 installations/migrations/0007_installationreport_meter_model.py diff --git a/installations/migrations/0007_installationreport_meter_model.py b/installations/migrations/0007_installationreport_meter_model.py new file mode 100644 index 0000000..a77966b --- /dev/null +++ b/installations/migrations/0007_installationreport_meter_model.py @@ -0,0 +1,24 @@ +# Generated by Django 5.2.5 on 2025-10-07 06:50 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("installations", "0006_alter_installationreport_exploitation_license_number"), + ] + + operations = [ + migrations.AddField( + model_name="installationreport", + name="meter_model", + field=models.CharField( + blank=True, + choices=[("A", "A"), ("B", "B")], + max_length=20, + null=True, + verbose_name="مدل کنتور", + ), + ), + ] From a195e0b6fc139a38477602dfa52ff2368621eeaa Mon Sep 17 00:00:00 2001 From: aminhashemi92 Date: Tue, 7 Oct 2025 12:57:06 +0330 Subject: [PATCH 10/10] add db --- .gitignore | 4 ++-- db.sqlite3 | Bin 3928064 -> 4141056 bytes .../0007_installationreport_meter_model.py | 18 ++++++++++++++++++ 3 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 installations/migrations/0007_installationreport_meter_model.py diff --git a/.gitignore b/.gitignore index d975f31..38eb404 100644 --- a/.gitignore +++ b/.gitignore @@ -9,8 +9,8 @@ *.pyc __pycache__/ local_settings.py -*.sqlite3 -db.sqlite3 +#*.sqlite3 +#db.sqlite3 db.sqlite3-journal media #static diff --git a/db.sqlite3 b/db.sqlite3 index d314803063c280b8ae34a01596f875ec3097a0d8..4408b1574e76d1d3d1df86cb50aebc3e32334e1a 100644 GIT binary patch delta 288957 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 m+DMK&1{7n!~A` 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 VPmwm5xk+8Q{
{% if p.direction == 'in' %}دریافتی{% else %}پرداختی{% endif %}{{ p.amount|floatformat:0|intcomma:False }} تومان{{ p.amount|floatformat:0|intcomma:False }} ریال {{ p.payment_date|date:'Y/m/d' }} {{ p.get_payment_method_display }} {{ p.reference_number|default:'-' }}