{% extends "base.html" %} {% block title %}Bank Transfer Slip · {{ month_name }} · WageWise Neo{% endblock %} {% block content %}
{% if run.status == 'finalized' %}

🔒 This run is finalized and locked. Bank transfer figures can't be adjusted here since they may already have been paid out. {% if is_admin %}An Admin can reopen this run from the Payroll Run page if a genuine correction is needed.{% endif %}

{% else %}

Editable before download. Adjust any transfer amount directly — deduct hand loans, minor damages, or add incentives. Changes are saved automatically to the database so you can review them next month. The original payroll amounts are never modified.

{% endif %}

Transfer Amounts

Grand Total: ₹{{ "{:,.0f}".format(slips|sum(attribute='net_pay')) }}
{% if run.status == 'finalized' %} 🔒 Locked — this run is finalized {% else %} {% endif %}
{% for slip in slips %} {% set sv = saved.get(slip.employee_id, {}) %} {% set delta = sv.adjusted_amount if sv else 0 %} {% set adj_note = sv.note if sv else '' %} {% set has_adj = sv and (sv.adjusted_amount != 0 or sv.note) %} {% if slip.is_ot_row %} {% else %} {% endif %} {% endfor %}
# Employee Bank / Account Original Net Pay Adjustment (+/−) Final Amount Note / Reason Status
{{ loop.index }} {{ slip.full_name }}
{{ slip.employee_code or '' }}{{ ' — Overtime, paid with bank details below' if slip.is_ot_row }}
{{ slip.bank_name or '—' }}
{{ slip.account_number or '—' }}
{{ slip.ifsc_code or '—' }}
₹{{ "{:,.0f}".format(slip.net_pay) }} — OT entry — ₹{{ "{:,.0f}".format(slip.net_pay) }} Overtime pay — separate line item OT ₹{{ "{:,.0f}".format(slip.net_pay + delta) }} {% if has_adj %} Adjusted {% else %} Original {% endif %}
Grand Total (Final) ₹{{ "{:,.0f}".format(slips|map(attribute='net_pay')|sum) }}
{% endblock %}