estelam ticket, varizha , others

This commit is contained in:
javad committed 2026-10-13 15:48:24 +03:30
1 parent 35a1ec1794
commit 6b546aad76
71 files changed
+2865 -191

No files matched your search

+44
View File
@@ -0,0 +1,44 @@
{% load jalali humanize %}
<section class="pay-day-summary" aria-labelledby="pay-day-title">
<header class="pay-day-head">
<h2 id="pay-day-title">وضعیت امروز <time datetime="{{ daily_summary.date|date:'Y-m-d' }}">{{ daily_summary.date|jalali_date }}</time></h2>
<span>در محدوده دسترسی شما · مستقل از فیلترها</span>
</header>
<dl class="pay-day-grid">
<div class="pay-day-metric" data-summary="submitted">
<dt>ارسالی امروز</dt>
<dd class="pay-day-count"><bdi>{{ daily_summary.submitted_count|intcomma:False }}</bdi> <span>فیش</span></dd>
<dd class="pay-day-amount"><bdi dir="ltr">{{ daily_summary.submitted_amount|intcomma:False }}</bdi> <span>ریال</span></dd>
</div>
<div class="pay-day-metric pay-day-approved" data-summary="approved">
<dt>تأیید امروز</dt>
<dd class="pay-day-count"><bdi>{{ daily_summary.approved_count|intcomma:False }}</bdi> <span>فیش</span></dd>
<dd class="pay-day-amount"><bdi dir="ltr">{{ daily_summary.approved_amount|intcomma:False }}</bdi> <span>ریال</span></dd>
</div>
<div class="pay-day-metric pay-day-rejected" data-summary="rejected">
<dt>رد امروز</dt>
<dd class="pay-day-count"><bdi>{{ daily_summary.rejected_count|intcomma:False }}</bdi> <span>فیش</span></dd>
<dd class="pay-day-amount"><bdi dir="ltr">{{ daily_summary.rejected_amount|intcomma:False }}</bdi> <span>ریال</span></dd>
</div>
<div class="pay-day-metric pay-day-pending" data-summary="pending">
<dt>در انتظار بررسی</dt>
<dd class="pay-day-count"><bdi>{{ daily_summary.pending_count|intcomma:False }}</bdi> <span>فیش</span></dd>
<dd class="pay-day-amount"><bdi dir="ltr">{{ daily_summary.pending_amount|intcomma:False }}</bdi> <span>ریال</span></dd>
<dd class="pay-day-note">همه روزها · شامل تأیید ناقص</dd>
</div>
<div class="pay-day-metric pay-day-notices" data-summary="notices">
<dt>اعلامیه امروز</dt>
<dd class="pay-day-count"><bdi>{{ daily_summary.notice_count|intcomma:False }}</bdi> <span>اعلامیه</span></dd>
<dd class="pay-day-note">ثبت‌شده امروز</dd>
</div>
</dl>
<details class="pay-day-definitions">
<summary>مبنای آمار</summary>
<p><strong>ارسالی امروز:</strong> تعداد فیش‌هایی که اولین بار امروز ثبت شده‌اند و جمع مبلغ آن‌ها، با هر وضعیتی. تاریخ واریز درج‌شده روی فیش ملاک نیست؛ ارسال نسخه اصلاحیِ فیشی که روز دیگری ثبت شده، به این تعداد اضافه نمی‌شود.</p>
<p><strong>تأیید امروز:</strong> تعداد و جمع مبلغ فیش‌هایی که نسخه جاری آن‌ها امروز به تأیید نهایی رسیده و اکنون تأییدشده است؛ حتی اگر روز دیگری ارسال شده باشند. رأی اولیه یا تأیید ناقص، تأیید نهایی محسوب نمی‌شود.</p>
<p><strong>رد امروز:</strong> تعداد و جمع مبلغ فیش‌هایی که بررسی نسخه جاری آن‌ها امروز با رد پایان یافته و اکنون ردشده است. اگر فیش اصلاح و دوباره برای بررسی ارسال شود، دیگر در این گروه محاسبه نمی‌شود.</p>
<p><strong>در انتظار بررسی:</strong> تعداد و جمع مبلغ همه فیش‌هایی که هنوز نتیجه نهایی ندارند؛ شامل «در انتظار بررسی» و «تأیید ناقص» از همه روزها.</p>
<p><strong>اعلامیه امروز:</strong> تعداد اعلامیه‌های واریزی که امروز ایجاد شده‌اند. اعلامیه‌های حذف‌شده محاسبه نمی‌شوند؛ اعلامیه لغوشده، تا زمانی که حذف نشده باشد، در تعداد ثبت‌شده‌ها باقی می‌ماند.</p>
<p><strong>قواعد مشترک:</strong> همه مبلغ‌ها به ریال و بر اساس آخرین نسخه هر فیش هستند؛ نسخه‌های قبلی و رأی‌های متعدد جداگانه شمرده نمی‌شوند. آمار فقط موارد قابل مشاهده برای شما را شامل می‌شود و با تغییر فیلترها، تب یا صفحه فهرست تغییر نمی‌کند. چون مبنای گروه‌ها متفاوت است، مجموع تأیید و رد امروز لزوماً برابر ارسالی امروز نیست.</p>
</details>
</section>
+15 -3
View File
@@ -11,9 +11,21 @@
{% if notice.deposit_id %}<div class="pay-deposit-required"><dt>شناسه واریز · ضروری</dt><dd dir="ltr">{{ notice.deposit_id }}</dd><button type="button" data-copy="{{ notice.deposit_id }}" class="pay-copy" aria-label="کپی شناسه واریز">{% include 'payments/_icon.html' with name='copy' %} کپی</button></div>{% endif %}
</dl>
{% if notice.deposit_id %}<p class="pay-deposit-warning" role="note">هنگام واریز، حتماً شناسه واریز ارائه‌شده را در فرم بانکی، موبایل‌بانک یا اینترنت‌بانک وارد کنید؛ واریز بدون این شناسه معتبر نخواهد بود.</p>{% endif %}
<!-- Supplementary details stay visible within the expanded notice. Complete copy uses ALL snapshot fields. -->
<p>تأییدشده: {{ notice.approved_amount|intcomma:False }} ریال · باقی‌مانده: {{ notice.remaining_amount|intcomma:False }} ریال</p><section class="pay-supplement"><h3>اطلاعات تکمیلی و توضیحات</h3>{% if notice.invoice_number %}<p>فاکتور: {{ notice.invoice_number }}</p>{% endif %}<p>{{ notice.description|default:'توضیح دیگری اعلام نشده است.'|linebreaksbr }}</p></section>
<div class="pay-actions">{% if not notice.cancelled_at and not staff_notice and notice.remaining_amount > 0 %}<a class="pay-button" href="{% url 'payments:receipt_new' %}?notice={{ notice.public_id }}">ارسال فیش این واریز</a>{% endif %}<button type="button" class="pay-button secondary" data-copy="{{ notice.copy_text }}">کپی کامل اطلاعات</button></div>
{% if notice_page and not staff_notice %}
<div class="pay-actions"><button type="button" class="pay-button secondary" data-copy="{{ notice.copy_text }}">{% include 'payments/_icon.html' with name='copy' %} کپی کامل اطلاعات</button></div>
{% if not notice.cancelled_at and notice.remaining_amount > 0 %}
<section class="pay-receipt-next-step" aria-labelledby="receipt-next-step-{{ notice.public_id }}">
<div><h2 id="receipt-next-step-{{ notice.public_id }}">پس از واریز</h2><p>تصویر فیش را برای بررسی این واریز ارسال کنید.</p></div>
<a class="pay-button pay-receipt-action" href="{% url 'payments:receipt_new' %}?notice={{ notice.public_id }}">{% include 'payments/_icon.html' with name='receipt' %}<span>ارسال فیش این واریز</span></a>
</section>
{% endif %}
{% endif %}
<!-- Supplementary details with content stay visible within the expanded notice. Complete copy uses ALL snapshot fields. -->
<p>تأییدشده: {{ notice.approved_amount|intcomma:False }} ریال · باقی‌مانده: {{ notice.remaining_amount|intcomma:False }} ریال</p>
{% with invoice_number=notice.invoice_number.strip description=notice.description.strip %}
{% if invoice_number or description %}<section class="pay-supplement"><h3>اطلاعات تکمیلی و توضیحات</h3>{% if invoice_number %}<p>فاکتور: {{ invoice_number }}</p>{% endif %}{% if description %}<p>{{ description|linebreaksbr }}</p>{% endif %}</section>{% endif %}
{% endwith %}
{% if not notice_page or staff_notice %}<div class="pay-actions">{% if not notice.cancelled_at and not staff_notice and notice.remaining_amount > 0 %}<a class="pay-button" href="{% url 'payments:receipt_new' %}?notice={{ notice.public_id }}">ارسال فیش این واریز</a>{% endif %}<button type="button" class="pay-button secondary" data-copy="{{ notice.copy_text }}">کپی کامل اطلاعات</button></div>{% endif %}
{% if notice_page and not staff_notice %}<form class="pay-page-share" method="post" action="{% url 'payments:notice_share_link' notice.public_id %}" data-share-link>
{% csrf_token %}<button type="submit" class="pay-button secondary">{% include 'payments/_icon.html' with name='copy' %}<span>کپی لینک کوتاه این صفحه برای ارسال به دیگران</span></button>
<p>دارندهٔ لینک به اطلاعات همین واریز دسترسی دارد؛ لینک تا پایان اعتبار آن قابل استفاده است.</p>
@@ -4,6 +4,7 @@
{% include 'payments/_link_status.html' %}
{% if not payment_link_access %}<nav class="pay-breadcrumb" aria-label="مسیر صفحه"><a href="{% url 'payments:notices' %}">شماره حساب‌ها</a><span aria-hidden="true">/</span><span aria-current="page">جزئیات واریز</span></nav>{% endif %}
<header class="customer-finance-title"><span class="pay-page-icon">{% include 'payments/_icon.html' with name='bank' %}</span><div><h1>جزئیات واریز</h1><p>اطلاعات حساب، فیش‌های ارسالی و سوابق بررسی این واریز</p></div></header>
{% if not notice.cancelled_at and notice.remaining_amount > 0 %}<p class="pay-receipt-guidance">پس از واریز، تصویر فیش را با دکمهٔ <strong>«ارسال فیش این واریز»</strong> در پایین صفحه ارسال کنید.</p>{% endif %}
{% include 'payments/_notice.html' with notice_page=True %}
<div class="customer-service-footer">{% if payment_link_access %}<a class="pay-text-link" href="{% url 'payments:receipt_new' %}?mode=independent">ارسال فیش واریز مستقل</a>{% else %}<a class="pay-text-link" href="{% url 'payments:notices' %}">بازگشت به واریزهای شما</a>{% endif %}<a class="pay-text-link" href="{% url 'payments:receipt_list' %}">فیش‌های من و وضعیت بررسی</a></div>
</section>{% endblock %}
+1
View File
@@ -7,6 +7,7 @@
<div class="pay-page-title"><span class="pay-page-icon">{% include 'payments/_icon.html' with name='receipt' %}</span><div><h1>اعلامیه‌ها و فیش‌های واریزی</h1><p>اعلام اطلاعات واریز به مشتریان و بررسی فیش‌های پرداخت</p></div></div>
{% if can_create %}<div class="pay-head-actions"><a class="pay-button" href="{% url 'staff_payments:notice_new' %}">{% include 'payments/_icon.html' with name='plus' %}ایجاد اعلامیه واریز</a><a class="pay-button secondary" href="{% url 'staff_payments:receipt_customer' %}">ثبت فیش برای مشتری</a></div>{% endif %}
</header>
{% include 'payments/_daily_summary.html' %}
<nav class="pay-tabs pay-desk-tabs" aria-label="نمای پرداخت‌ها">
<a href="?tab=receipts" {% if tab != 'notices' and not mine %}aria-current="page"{% endif %}>فیش‌های واریزی</a>
<a href="?tab=notices" {% if tab == 'notices' %}aria-current="page"{% endif %}>اعلامیه‌های واریز</a>