feat: cash-only registers, day book sections and DD amendments
build-run / Run Lint, Build and Deploy (push) Canceled after 0s
Publish Image in Docker Hub / build (push) Canceled after 0s
Playwright E2E Tests / Run Playwright Tests (push) Canceled after 0s
Tests / testRigor (push) Canceled after 0s

This commit is contained in:
2026-09-03 18:26:22 +05:30
parent 6442562df0
commit fbce73fd17
111 changed files with 9076 additions and 3507 deletions
+52
View File
@@ -1043,4 +1043,56 @@ export class ClientsService {
getKycContactLog(clientId: string | number): Observable<any[]> {
return this.http.get<any[]>(`/kyc/exceptions/${clientId}/contact-log`);
}
/**
* Clients whose periodic re-KYC due date has passed, oldest first.
*
* Drives the expiry worklist. A client drops out of this list the moment their re-KYC is
* completed, because renewing pushes the expiry date into the future.
*/
getLapsedKyc(): Observable<any[]> {
return this.http.get<any[]>('/kyc/exceptions/lapsed');
}
/**
* Savings accounts the dormancy job has marked.
*
* @param subStatus 100 inactive, 200 dormant, 300 escheat; omit for all three
*/
getDormantAccounts(subStatus?: number): Observable<any[]> {
const params = subStatus ? new HttpParams().set('subStatus', String(subStatus)) : undefined;
return this.http.get<any[]>('/savingsaccounts/dormant', { params });
}
/**
* Records that the escheated balances of the given accounts were remitted to RBI's DEAF.
*
* The transfer itself happens outside this system; this only writes down that it was made, which
* is what lets the escheat report tell remitted money from money still sitting with the bank.
* Accounts that are not escheated, or already recorded, are skipped server-side — the result
* carries `recorded` and `skipped` counts.
*/
recordDeafRemittance(data: {
savingsAccountIds: number[];
remittedOn: string;
deafReference?: string;
remarks?: string;
locale?: string;
dateFormat?: string;
}): Observable<any> {
return this.http.post('/savingsaccounts/deaf-remittance', {
locale: 'en',
dateFormat: 'yyyy-MM-dd',
...data
});
}
/** Records that a customer claimed a remitted balance back and the bank recovered it from DEAF. */
refundDeafRemittance(savingsAccountId: number, refundedOn: string): Observable<any> {
return this.http.post(`/savingsaccounts/deaf-remittance/${savingsAccountId}/refund`, {
locale: 'en',
dateFormat: 'yyyy-MM-dd',
refundedOn
});
}
}