{% extends "base.html" %} {% load static erp_tags %} {% block title %}Dashboard{% endblock %} {% block chat_context %} {% endblock %} {% block content %} {# KPI Cards #}

Open Orders

{{ open_order_count }}

Revenue This Month

{{ revenue_total|money }}

Pending Quotes

{{ pending_quote_count }}

Low Stock Items

{{ low_stock_count }}
{# Quick Actions: registry in core/quick_actions.py; per-user hide list. #}
Quick Actions
{% for action in quick_actions %}{% if action.visible %} {{ action.label }} {% endif %}{% endfor %} {% if not quick_actions_visible %} All quick actions are hidden. Use Customize to bring them back. {% endif %}
{# Alerts Row #} {% if overdue_quotes or unpaid_invoices %}
{% if overdue_quotes %}
{{ overdue_quotes }} overdue quote{{ overdue_quotes|pluralize }}
{% endif %} {% if unpaid_invoices %}
{{ unpaid_invoices }} unpaid invoice{{ unpaid_invoices|pluralize }}
{% endif %}
{% endif %} {# Recent Orders Table #}
Recent Orders
{% for order in recent_orders %} {% empty %} {% endfor %}
Order # Customer Date Status Payment Total
{{ order.order_number }}

{{ order.customer }}

{{ order.order_date|date:"M d, Y" }} {% if order.status == 'completed' or order.status == 'shipped' %} {{ order.get_status_display }} {% elif order.status == 'awaiting_shipment' or order.status == 'partially_shipped' or order.status == 'awaiting_fulfillment' %} {{ order.get_status_display }} {% elif order.status == 'pending' or order.status == 'incomplete' or order.status == 'awaiting_payment' %} {{ order.get_status_display }} {% elif order.status == 'cancelled' %} {{ order.get_status_display }} {% else %} {{ order.get_status_display }} {% endif %} {% if order.payment_status == 'PAID' %} Paid {% elif order.payment_status == 'PARTIAL' %} Partial {% elif order.payment_status == 'UNPAID' %} Unpaid {% else %} {{ order.get_payment_status_display }} {% endif %} {{ order.grand_total|money }}
No orders yet
{% endblock %} {% block javascripts %} {% endblock %}