feat(rbi-reserve,savings): Form 1/Form 9 returns UI, branch-wise interest posting reports and summary
- Reports > Interest Posting Reports: per branch and product, generate/regenerate at any time, approve; branch column, HO-on-behalf marker, posted txn per account - Reports > Interest Posting Summary (branch-wise) for the head office, with Excel export - Day Close warns and disables Close Day while the branch's interest report is unapproved - Savings product accounting: Interest On Savings (expense), Savings Interest Payable and Paid (liability rows, required) - RBI Form 1 statutory and Form 9 return screens, reserve config updates - Interest posting report GETs exempted from the response cache Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -69,12 +69,24 @@ const routes: Routes = [
|
||||
loadComponent: () => import('./reserve-return/form1-crr.component').then((m) => m.Form1CrrComponent),
|
||||
data: { title: 'Form 1 — Cash Reserve Ratio', breadcrumb: 'Form 1 (CRR)' }
|
||||
},
|
||||
// Form 9 (SLR) has no route of its own. Section 24 is settled on the statutory Form 1 at Part C,
|
||||
// charged on the same liabilities Part B charges the cash reserve on. A second screen computing
|
||||
// the same ratio from a month-end base disagreed with it, and both were headed Form 9 — whichever
|
||||
// a filer read, they had no way to know the other said something else.
|
||||
{
|
||||
// SLR return, filed at the end of each month.
|
||||
path: 'rbi/form9',
|
||||
loadComponent: () => import('./reserve-return/form9-slr.component').then((m) => m.Form9SlrComponent),
|
||||
data: { title: 'Form 9 — Statutory Liquidity Ratio', breadcrumb: 'Form 9 (SLR)' }
|
||||
// Form IX — the Return on Assets and Liabilities, code R408, filed monthly.
|
||||
//
|
||||
// A DIFFERENT return from Form 9 (SLR) above despite the name. That one reports one ratio;
|
||||
// this one reports the whole balance sheet, in rupees thousands, and its two sides must
|
||||
// agree. Its own route rather than a tab on rbi/form9 for exactly that reason — they answer
|
||||
// different questions and share no figures.
|
||||
path: 'rbi/form9-return',
|
||||
loadComponent: () => import('./form9-return/form9-return.component').then((m) => m.Form9ReturnComponent),
|
||||
data: { title: 'Form IX — Return on Assets and Liabilities', breadcrumb: 'Form IX (R408)' }
|
||||
}
|
||||
// The statutory Form 1 has no route of its own: it is a tab on rbi/form1. Both are Form 1 for
|
||||
// one bank and one period, and two routes made a filer guess which held which — one could be
|
||||
// read while the other was believed to be on screen.
|
||||
])
|
||||
];
|
||||
|
||||
|
||||
Reference in New Issue
Block a user