{% extends 'layouts/base.html' %} {% load i18n %} {% block title %}{% trans "Complaints Registry" %} - PX360{% endblock %} {% block extra_css %} {% endblock %} {% block content %}

{% trans "Complaints Registry" %}

{% trans "Manage and monitor patient feedback in real-time" %}

{% if user.is_px_admin or user.is_hospital_admin %} {% trans "New Case" %} {% trans "Public Form" %} {% endif %}

{% trans "Total Received" %}

{{ stats.total }}

{% trans "Resolved" %}

{{ stats.resolved }} ({{ stats.resolved_percentage|floatformat:1 }}%)

{% trans "Pending" %}

{{ stats.pending }}

{% trans "TAT Alert" %}

{{ stats.overdue }} {% trans "Over 72h" %}

{% trans "All Cases" %} {% trans "Pending" %} {% trans "Escalated" %} {% trans "Resolved" %}

{% trans "Showing:" %} {{ complaints.start_index|default:0 }}-{{ complaints.end_index|default:0 }} {% trans "of" %} {{ complaints.paginator.count|default:0 }}

{% for complaint in complaints.object_list %} {% empty %} {% endfor %}
{% trans "Complaint ID" %} {% trans "Patient Name" %} {% trans "Description" %} {% trans "Source" %} {% trans "Department" %} {% trans "Status" %} {% trans "Priority" %} {% trans "Actions" %}
{{ complaint.reference_number }}
{{ complaint.patient.get_full_name|default:complaint.contact_name }}
{% if complaint.patient %}
{% trans "MRN:" %} {{ complaint.patient.mrn|default:"-" }}
{% endif %}
{% if complaint.source %} {{ complaint.source.name_en }} {% else %} {{ complaint.get_complaint_source_type_display }} {% endif %} {{ complaint.department.name|default:"-" }} {% if complaint.status == 'open' %} {{ complaint.get_status_display }} {% elif complaint.status == 'in_progress' %} {% trans "Investigating" %} {% elif complaint.status == 'escalated' %} {{ complaint.get_status_display }} {% elif complaint.status == 'resolved' or complaint.status == 'closed' %} {{ complaint.get_status_display }} {% else %} {{ complaint.get_status_display }} {% endif %}
{% if complaint.priority == 'critical' %} {% elif complaint.priority == 'high' %} {% elif complaint.priority == 'medium' %} {% else %} {% endif %}
{% if can_edit %} {% endif %}

{% trans "No complaints found" %}

{% if complaints.has_other_pages %}
{% trans "Showing" %} {{ complaints.start_index }}-{{ complaints.end_index }} {% trans "of" %} {{ complaints.paginator.count }} {% trans "entries" %}
{% for key, value in request.GET.items %} {% if key != 'page_size' and key != 'page' %} {% endif %} {% endfor %}
{% if complaints.has_previous %} {% else %} {% endif %} {% for num in complaints.paginator.page_range %} {% if num == complaints.number %} {{ num }} {% elif num > complaints.number|add:'-3' and num < complaints.number|add:'3' %} {{ num }} {% elif num == 1 or num == complaints.paginator.num_pages %} {{ num }} {% elif num == complaints.number|add:'-3' or num == complaints.number|add:'3' %} ... {% endif %} {% endfor %} {% if complaints.has_next %} {% else %} {% endif %}
{% endif %}
{% endblock %}