{% extends 'base.html' %} {% block title %}Dashboard — Shiba Meals{% endblock %} {% block page_title %}Dashboard{% endblock %} {% block extra_head %} {% endblock %} {% block content %}
{% if role in ('general_manager','manager') %}Operations Dashboard{% else %}My Dashboard{% endif %}
{{ today }} · Shiba Meals
{% if role in ('general_manager','manager') %}
Net Profit Today
{{ "{:,.0f}".format(profit) }}
KES · Revenue − all costs
Expected Revenue
{{ "{:,.0f}".format(total_rev) }}
KES · Estimated from stock out
Total Costs
{{ "{:,.0f}".format(daily_cost) }}
KES · Ingredients + expenses
M-Pesa Captured
{{ "{:,.0f}".format(mpesa_total) }}
KES · Auto-captured today
Pending Actions — What needs attention now
🍳
Pending Reqs
📋
Awaiting Approval
Outlets Not Reconciled
🗑
KES Waste Today
📋 Today's Tasks Operational checklist
Operational Flow — Today
🧂
Produced
🚚
Dispatched
🏪
Received
💰
Sold (Est.)
📊
Profit Est.
{% if wastage_alerts %}
⚠ Wastage Threshold Exceeded
{% for a in wastage_alerts %} {{ a.product }} @ {{ a.outlet }} — {{ a.pct }}% {% endfor %}
{% endif %} {% for r in rev_data %}
{{ r.outlet.name }} KES {{ "{:,.0f}".format(r.revenue) }}
{% if r.low_stock %}
{% for item in r.low_stock %} 🔴 {{ item.product.name }} — {{ item.remaining }} left ({{ item.pct }}%) {% endfor %}
{% else %}
No low stock alerts
{% endif %}
{% endfor %} {% if role == 'general_manager' %}
Payroll Estimate View staff →
Daily
KES {{ "{:,.0f}".format(payroll.daily) }}
Weekly
KES {{ "{:,.0f}".format(payroll.weekly) }}
Monthly
KES {{ "{:,.0f}".format(payroll.monthly) }}
{% endif %}
{% if role == 'general_manager' and weekly_pnl %}
7-Day P&L Trend
{% endif %} {% else %}
Logged in as
{{ session.get('name') }}
{{ session.get('role','') | replace('_',' ') | title }}
Today
{{ today }}
Current operating date
Go to My Station
{% if session.get('role') == 'chef' %}
Production Dashboard
Record today's output, check targets, view orders
{% endif %} {% if session.get('role') == 'cashier' %}
My Outlet
Receive stock, submit counts, record shift
{% endif %} {% if session.get('role') == 'storekeeper' %}
Storekeeper Station
Stock levels, approve requisitions, record purchases
{% endif %} {% if session.get('role') == 'logistics' %}
Dispatch Station
Dispatch stock to outlets, view dispatch log
{% endif %} {% if session.get('role') == 'waiter' %}
Waiter Orders
Place customer orders, track order status
{% endif %}
{% endif %} {% endblock %} {% block scripts %} {% if role in ('general_manager','manager') %} {% if role == 'general_manager' and weekly_pnl %} {% endif %} {% endif %} {% endblock %}