{% extends "./base.html" %} {% load custom_tags %} {% block bodyPage %}
{# ===== نوار آمار: چهار کارت، هر عدد لینک فیلتر ===== #}

وضعیت پیگیری مشتریان

«عقب‌افتاده» یعنی از آخرین بازدید بیش از {{ counts.period_months }} ماه گذشته باشد. روی هر کارت بزنید تا فقط همان گروه نمایش داده شود؛ کل = تعیین‌تکلیف‌نشده + تعیین‌تکلیف‌شده.

{# ===== نوار تاریخ در نمای «نیازمند پیگیری» ===== #} {% if is_followup_view %}
‹ روز قبل
{% if searchVal %}{% endif %} {% if searchVal %}{% endif %}
روز بعد › {% if not followup_nav.is_today %} بازگشت به امروز {% endif %} {% if followup_nav.is_today %} فقط موعدهای امروز نمایش داده می‌شوند. {% else %} نمایش موعدهای {{ followup_date_jalali }} (نه امروز). {% endif %} مشتریانی که برایشان بازدید گذاشته شده در این فهرست نمی‌آیند. {# هشدار مینیمال: موعدهایی که گذشته‌اند و هنوز تعیین تکلیف نشده‌اند. #} {% if counts.followup_overdue and not show_missed %} {{ counts.followup_overdue }} مورد نیازمند پیگیری از روزهای قبل باقی مانده {% endif %} {% if show_missed %} نمایش {{ counts.followup_overdue }} پیگیریِ عقب‌افتاده ✕ بازگشت به امروز {% endif %}
{% endif %} {# ===== نوار فیلتر و جست‌وجو: یک ردیف، همهٔ کنترل‌ها ===== #}
{% if is_followup_view %} {% endif %} {# حالت «فقط عقب‌افتاده‌ها» هنگام جست‌وجو/فیلتر حفظ شود. #} {% if show_missed %} {% endif %} {% if not is_followup_view %} {% endif %} {% if has_filters %} ✕ حذف فیلترها {% endif %}
{# تفکیک مدت تأخیر در نمای جاری (کلیک‌پذیر) #} {% if not is_followup_view %} {% endif %}
{% for col in table_columns %} {% endfor %} {% for col in sort_header %} {% endfor %} {% for customer in customers %} {# سرِ ردیف: چیپ شماره + نام (شمارهٔ ردیف دیگر ستون جداگانه ندارد) #} {% with appt=appointment_rows|row_for:customer.id %} {% if 'overdue' not in hidden_columns %} {% endif %} {% endwith %} {% empty %} {% endfor %}
{{ col.label }}{% if col.active %}{% if col.dir == 'asc' %}▲{% else %}▼{% endif %}{% else %}⇅{% endif %}
{{ forloop.counter0|add:customers.start_index }} {% if customer.name_family|length >= 2 %}{{ customer.name_family }}{% else %}نامعلوم{% endif %} {% if customer.idCode %}
کد: {{ customer.idCode }}
{% endif %}
{% if appt.source_count > 1 %} {{ appt.source_count }} قرار {% elif appt.manual %} قرار دستی {% elif appt.scheduled %} بازدید برنامه {% elif appt.coordination %} هماهنگی {% else %} بدون قرار {% endif %} {% if appt.manual %}{{ appt.manual|toJalali }}{% else %}—{% endif %} {% if appt.scheduled %}{{ appt.scheduled|toJalali }}{% else %}—{% endif %} {% if appt.coordination %}{{ appt.coordination|toJalali }}{% else %}—{% endif %} {% if appt.last_visit %}{{ appt.last_visit|toJalali }}{% else %}بدون بازدید{% endif %} {% if appt.overdue_days >= 180 %} {{ appt.overdue_days }} روز {% elif appt.overdue_days >= 90 %} {{ appt.overdue_days }} روز {% elif appt.overdue_days >= 30 %} {{ appt.overdue_days }} روز {% else %} {{ appt.overdue_days }} روز {% endif %} {% if customer.phone1 %}{{ customer.phone1 }}{% else %}—{% endif %} {# دکمه‌های اقدام سریع — فقط موبایل #}
{% if customer.phone1 %} تماس {% endif %} ثبت اقدام
{{ customer.address }}
{% if is_followup_view %} برای تاریخ {{ followup_date_jalali }} موردی برای پیگیری نیست. {% else %} موردی در این نما پیدا نشد. {% endif %}
{# ===== صفحه‌بندی ===== #}
{% if customers.has_previous %} صفحه قبل {% else %}{% endif %} صفحهٔ {{ customers.number }} از {{ customers.paginator.num_pages }} · {{ customers.paginator.count }} مورد {% if customers.has_next %} صفحه بعد {% else %}{% endif %}
{% endblock %} {% block jsEnd %} {% endblock %}