From 4ea833ff49437ddb3e490fbd19e4a816d7a6dbe3 Mon Sep 17 00:00:00 2001 From: Nitesh Yadav Date: Thu, 30 Jul 2026 10:30:45 +0530 Subject: [PATCH] feat(clients): cite UAPA Sec. 51-A / RBI KYC Direction and list-currency date in sanctions dialog The sanctions verification dialog said which lists a client was screened against but not the regulatory basis for doing so, nor when that list data was last refreshed. Added a regulatory-basis note and a "List Data As Of" row (sourced from the backend's newly-exposed listDataAsOf) to both the cleared and match-found panels. --- .../sanctions-verify-dialog.component.ts | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/src/app/clients/client-stepper/client-general-step/sanctions-verify-dialog.component.ts b/src/app/clients/client-stepper/client-general-step/sanctions-verify-dialog.component.ts index 43100b447..3a5b61b96 100644 --- a/src/app/clients/client-stepper/client-general-step/sanctions-verify-dialog.component.ts +++ b/src/app/clients/client-stepper/client-general-step/sanctions-verify-dialog.component.ts @@ -42,6 +42,7 @@ import { ClientsService } from 'app/clients/clients.service'; UN Security Council & Financial Intelligence Unit - India (FIU-IND under UNSC Resolution 2231)

+

{{ regulatoryBasis }}

} @if (!verifying && !matchFound && !errorOccurred) { @@ -69,7 +70,14 @@ import { ClientsService } from 'app/clients/clients.service'; Database UN SC Consolidated List + @if (listDataAsOf) { +
+ List Data As Of + {{ listDataAsOf }} +
+ } +

{{ regulatoryBasis }}

} @if (!verifying && matchFound) { @@ -96,11 +104,18 @@ import { ClientsService } from 'app/clients/clients.service'; Database UN SC Consolidated List + @if (listDataAsOf) { +
+ List Data As Of + {{ listDataAsOf }} +
+ }
Escalate to Principal Officer immediately. Account opening blocked.
+

{{ regulatoryBasis }}

} @if (!verifying && errorOccurred) { @@ -207,6 +222,15 @@ import { ClientsService } from 'app/clients/clients.service'; text-align: center; } + .regulatory-note { + font-size: 11px; + color: #9ca3af; + line-height: 1.5; + text-align: center; + margin: 8px 0 0; + max-width: 420px; + } + .approve-card { display: flex; flex-direction: column; @@ -524,6 +548,10 @@ export class SanctionsVerifyDialogComponent implements OnInit, OnDestroy { errorOccurred = false; errorMessage = ''; screeningLogId: number | null = null; + listDataAsOf: string | null = null; + + regulatoryBasis = + 'Screened as per Section 51-A of the Unlawful Activities (Prevention) Act, 1967 and the RBI Master Direction on KYC.'; screenedDate = new Date().toLocaleDateString('en-IN', { day: '2-digit', month: 'short', year: 'numeric' }); progressValue = 0; @@ -624,6 +652,13 @@ export class SanctionsVerifyDialogComponent implements OnInit, OnDestroy { 'Unable to connect to sanctions screening service.'; } else { this.screeningLogId = this.apiResult?.screeningLogId || null; + this.listDataAsOf = this.apiResult?.listDataAsOf + ? new Date(this.apiResult.listDataAsOf).toLocaleDateString('en-IN', { + day: '2-digit', + month: 'short', + year: 'numeric' + }) + : null; if (this.apiResult?.matchFound) { this.matchFound = true; this.matchCount = this.apiResult.matchCount || 0;