@if (tellers.length === 1) {
Teller
} @else {
Teller
@for (t of tellers; track t.id) {
{{ t.name }}
}
}
Cashier
@for (c of cashiers; track c.id) {
{{ c.label }}
}
Date
Note
@if (loadingExpected) {
Loading expected balances…
}
@if (!loadingExpected && rows.length > 0) {
@if (morningTotal > 0) {
wb_sunny
Morning Opening Balance (Cash received from vault today)
₹{{ morningTotal | number: '1.2-2' }}
@if (noteRows.length > 0) {
Notes — ₹{{ morningNoteTotal | number: '1.0-0' }}
@for (row of noteRows; track row.denominationId) {
@if (row.morningCount > 0) {
₹{{ row.denominationValue
}}×{{ row.morningCount }}
}
}
}
@if (coinRows.length > 0) {
Coins — ₹{{ morningCoinTotal | number: '1.0-0' }}
@for (row of coinRows; track row.denominationId) {
@if (row.morningCount > 0) {
₹{{ row.denominationValue
}}×{{ row.morningCount }}
}
}
}
}
@if (noteRows.length > 0) {
Notes
}
@if (coinRows.length > 0) {
Coins
}
@if (totalVariance !== 0) {
}
Expected: ₹{{ totalExpected | number: '1.2-2' }} | Physical:
₹{{ totalPhysical | number: '1.2-2' }} | Variance:
{{ totalVariance >= 0 ? '+' : '' }}₹{{ totalVariance | number: '1.2-2' }}
{{ statusLabel }}
@if (totalVariance !== 0 && !varianceReason.trim()) {
Enter variance reason to save
}
}
@if (!loadingExpected && rows.length === 0 && selectedCashierId) {
No balance data found for this cashier.
}
@if (!selectedCashierId) {
Select a teller and cashier to load expected balances.
}