- CFCFRMS cyber fraud complaint management with dashboard, complaints, escalation, report suspect/mule/fraud txn, FMR submission, CFR lookup - Mock HTTP interceptor with 20 dummy complaints and all endpoints - Simulator service for I4C/MHA integration testing - 3-row menu bar with 22 items (7+8+8 layout) - Mega menus for General Ledger, Sub Ledger, Deposits, Share, Others, HRM, RBI with search and grouped columns - Dropdowns for Cashier, Clearing, NPA, CKYC, Advances, Letter Mgmt, Insurance, Digital - Dashboard redesign with regulatory, financial health, deposits, risk/NPA sections using static banking data - All translations added to en-US.json - FontAwesome icons registered for all new menu items Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
850 lines
29 KiB
TypeScript
850 lines
29 KiB
TypeScript
/**
|
|
* Copyright since 2025 Mifos Initiative
|
|
*
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
*/
|
|
|
|
import { Complaint, ComplaintStatus, DashboardStats, TimelineEvent } from '../models/cfcfrms.models';
|
|
|
|
// ─── Helper: generate dates relative to now ───
|
|
function daysAgo(n: number): string {
|
|
const d = new Date();
|
|
d.setDate(d.getDate() - n);
|
|
return d.toISOString();
|
|
}
|
|
|
|
function hoursAgo(n: number): string {
|
|
const d = new Date();
|
|
d.setHours(d.getHours() - n);
|
|
return d.toISOString();
|
|
}
|
|
|
|
// ─── 20 Realistic Dummy Complaints ───
|
|
export const MOCK_COMPLAINTS: Complaint[] = [
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00001',
|
|
complainantName: 'Rajesh Kumar Sharma',
|
|
complainantMobile: '9876543210',
|
|
complainantEmail: 'rajesh.sharma@gmail.com',
|
|
complainantAddress: '42, MG Road, Sector 18, Noida, UP 201301',
|
|
fraudAmount: 250000,
|
|
fraudType: 'UPI_FRAUD',
|
|
fraudDescription:
|
|
'Received fake KYC update link via SMS. After clicking, ₹2.5L was debited via multiple UPI transactions within 10 minutes.',
|
|
suspectAccountNumber: '50100268347291',
|
|
suspectAccountName: 'Vikram Enterprises',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20240115-00981',
|
|
status: 'RECEIVED',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 0,
|
|
fundsHeld: 0,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: '',
|
|
assignedOfficer: '',
|
|
createdAt: daysAgo(0),
|
|
updatedAt: daysAgo(0)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00002',
|
|
complainantName: 'Priya Nair',
|
|
complainantMobile: '8765432109',
|
|
complainantEmail: 'priya.nair@yahoo.com',
|
|
complainantAddress: '15, Anna Salai, T. Nagar, Chennai, TN 600017',
|
|
fraudAmount: 487500,
|
|
fraudType: 'OLX_FRAUD',
|
|
fraudDescription:
|
|
'Victim was selling a sofa on OLX. Scammer sent a QR code claiming it was for payment. Scanning the QR debited ₹4,87,500.',
|
|
suspectAccountNumber: '50100399281746',
|
|
suspectAccountName: 'Deepak Trading Co',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20240115-01102',
|
|
status: 'UNDER_REVIEW',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 312000,
|
|
fundsHeld: 0,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: '',
|
|
assignedOfficer: 'Officer Meena K.',
|
|
createdAt: daysAgo(1),
|
|
updatedAt: hoursAgo(6)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00003',
|
|
complainantName: 'Amit Patel',
|
|
complainantMobile: '7654321098',
|
|
complainantEmail: 'amit.patel@outlook.com',
|
|
complainantAddress: '78, SG Highway, Bodakdev, Ahmedabad, GJ 380054',
|
|
fraudAmount: 150000,
|
|
fraudType: 'LOAN_APP_FRAUD',
|
|
fraudDescription:
|
|
'Downloaded fake loan app from link shared on WhatsApp. App collected bank details and debited ₹1.5L in two transactions.',
|
|
suspectAccountNumber: '50100412738956',
|
|
suspectAccountName: 'QuickCash Solutions',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'MHA_PORTAL',
|
|
acknowledgementNumber: 'ACK-MHA-20240114-00437',
|
|
status: 'LIEN_MARKED',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 89000,
|
|
fundsHeld: 150000,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: 'Lien placed on suspect account. Balance sufficient to cover fraud amount.',
|
|
assignedOfficer: 'Officer Suresh R.',
|
|
createdAt: daysAgo(3),
|
|
updatedAt: daysAgo(1)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00004',
|
|
complainantName: 'Sunita Devi',
|
|
complainantMobile: '6543210987',
|
|
complainantEmail: '',
|
|
complainantAddress: 'Village Rampur, Block Sadar, Varanasi, UP 221002',
|
|
fraudAmount: 75000,
|
|
fraudType: 'CUSTOMER_CARE_FRAUD',
|
|
fraudDescription:
|
|
'Called fake customer care number from Google. Scammer installed AnyDesk on victim phone and transferred ₹75,000.',
|
|
suspectAccountNumber: '50100528463190',
|
|
suspectAccountName: 'Rahul Verma',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20240113-00215',
|
|
status: 'DEBIT_FROZEN',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 42000,
|
|
fundsHeld: 75000,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: 'Debit freeze applied. Full fraud amount held. Account holder notified via registered mobile.',
|
|
assignedOfficer: 'Officer Suresh R.',
|
|
createdAt: daysAgo(5),
|
|
updatedAt: daysAgo(2)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00005',
|
|
complainantName: 'Mohammed Irfan',
|
|
complainantMobile: '9988776655',
|
|
complainantEmail: 'irfan.m@gmail.com',
|
|
complainantAddress: '23, Charminar Road, Hyderabad, TS 500002',
|
|
fraudAmount: 890000,
|
|
fraudType: 'INVESTMENT_FRAUD',
|
|
fraudDescription:
|
|
'Lured into fake stock trading app via Telegram group. Invested ₹8.9L over two weeks. Unable to withdraw funds.',
|
|
suspectAccountNumber: '50100637291845',
|
|
suspectAccountName: 'Global Trade Hub',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20240112-00876',
|
|
status: 'FUNDS_MOVED',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 12500,
|
|
fundsHeld: 0,
|
|
nextHopAccountNumber: '91820034567812',
|
|
nextHopBankIfsc: 'SBIN0001234',
|
|
actionNote: 'Only ₹12,500 available. Majority funds moved to SBI account. Escalating to SBI.',
|
|
assignedOfficer: 'Officer Meena K.',
|
|
createdAt: daysAgo(8),
|
|
updatedAt: daysAgo(4)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00006',
|
|
complainantName: 'Kavitha Reddy',
|
|
complainantMobile: '8877665544',
|
|
complainantEmail: 'kavitha.r@hotmail.com',
|
|
complainantAddress: '56, Indiranagar, Bangalore, KA 560038',
|
|
fraudAmount: 320000,
|
|
fraudType: 'PART_TIME_JOB_FRAUD',
|
|
fraudDescription:
|
|
'Scammed via Telegram part-time job offer. Made initial ₹5,000 "investment" then lured into paying ₹3.2L as "tax" and "processing fee".',
|
|
suspectAccountNumber: '50100745829361',
|
|
suspectAccountName: 'EarnMore Digital Services',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20240110-00543',
|
|
status: 'RESOLVED',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 0,
|
|
fundsHeld: 0,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: 'Full amount recovered and refunded to complainant via NEFT. Case closed.',
|
|
assignedOfficer: 'Officer Anita S.',
|
|
createdAt: daysAgo(15),
|
|
updatedAt: daysAgo(5)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00007',
|
|
complainantName: 'Arvind Singh',
|
|
complainantMobile: '7766554433',
|
|
complainantEmail: 'arvind.singh@gmail.com',
|
|
complainantAddress: '12, Civil Lines, Jaipur, RJ 302006',
|
|
fraudAmount: 45000,
|
|
fraudType: 'UPI_FRAUD',
|
|
fraudDescription:
|
|
'Received call from person posing as bank official. Tricked into sharing OTP. ₹45,000 debited via UPI.',
|
|
suspectAccountNumber: '50100854917263',
|
|
suspectAccountName: 'Sanjay Meena',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'MHA_PORTAL',
|
|
acknowledgementNumber: 'ACK-MHA-20240109-00129',
|
|
status: 'REJECTED',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 0,
|
|
fundsHeld: 0,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: 'Suspect account does not belong to LincPay. IFSC mismatch — ticket redirected to correct bank (PNB).',
|
|
assignedOfficer: 'Officer Suresh R.',
|
|
createdAt: daysAgo(18),
|
|
updatedAt: daysAgo(16)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00008',
|
|
complainantName: 'Lakshmi Iyer',
|
|
complainantMobile: '9654321076',
|
|
complainantEmail: 'lakshmi.iyer@gmail.com',
|
|
complainantAddress: '34, Marine Drive, Kochi, KL 682031',
|
|
fraudAmount: 560000,
|
|
fraudType: 'MATRIMONY_FRAUD',
|
|
fraudDescription:
|
|
'Met scammer on matrimony site. Paid ₹5.6L over 2 months for "visa processing" and "medical emergency".',
|
|
suspectAccountNumber: '50100963845712',
|
|
suspectAccountName: 'Premium Match Services',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20240108-00321',
|
|
status: 'LIEN_MARKED',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 234000,
|
|
fundsHeld: 560000,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: 'Lien marked. Sufficient balance to cover full fraud amount.',
|
|
assignedOfficer: 'Officer Anita S.',
|
|
createdAt: daysAgo(10),
|
|
updatedAt: daysAgo(7)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00009',
|
|
complainantName: 'Rajan Tiwari',
|
|
complainantMobile: '8543219876',
|
|
complainantEmail: 'rajan.t@yahoo.com',
|
|
complainantAddress: '67, Boring Road, Patna, BR 800001',
|
|
fraudAmount: 198000,
|
|
fraudType: 'ELECTRICITY_BILL_FRAUD',
|
|
fraudDescription:
|
|
'Received SMS about pending electricity bill with threat of disconnection. Clicked link and ₹1.98L was stolen via screen-sharing app.',
|
|
suspectAccountNumber: '50100172839465',
|
|
suspectAccountName: 'Power Solutions India',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20240107-00654',
|
|
status: 'UNDER_REVIEW',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 56000,
|
|
fundsHeld: 0,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: '',
|
|
assignedOfficer: 'Officer Meena K.',
|
|
createdAt: daysAgo(2),
|
|
updatedAt: daysAgo(1)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00010',
|
|
complainantName: 'Deepa Nayak',
|
|
complainantMobile: '7432108765',
|
|
complainantEmail: 'deepa.n@gmail.com',
|
|
complainantAddress: '89, Panjim, Goa 403001',
|
|
fraudAmount: 125000,
|
|
fraudType: 'COURIER_FRAUD',
|
|
fraudDescription:
|
|
'Fake FedEx call claiming parcel with contraband. Transferred to fake "cyber cell officer" who demanded ₹1.25L as "security deposit".',
|
|
suspectAccountNumber: '50100281934567',
|
|
suspectAccountName: 'SecurePay Hub',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'MHA_PORTAL',
|
|
acknowledgementNumber: 'ACK-MHA-20240106-00087',
|
|
status: 'RECEIVED',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 0,
|
|
fundsHeld: 0,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: '',
|
|
assignedOfficer: '',
|
|
createdAt: daysAgo(1),
|
|
updatedAt: daysAgo(1)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00011',
|
|
complainantName: 'Suresh Babu',
|
|
complainantMobile: '9321654870',
|
|
complainantEmail: 'suresh.b@gmail.com',
|
|
complainantAddress: '22, Gandhi Nagar, Vijayawada, AP 520003',
|
|
fraudAmount: 1500000,
|
|
fraudType: 'INVESTMENT_FRAUD',
|
|
fraudDescription:
|
|
'Joined fake crypto trading group on Telegram. Deposited ₹15L over 3 months. Website is now down, funds lost.',
|
|
suspectAccountNumber: '50100391726845',
|
|
suspectAccountName: 'CryptoVault Exchange',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20240105-01234',
|
|
status: 'DEBIT_FROZEN',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 340000,
|
|
fundsHeld: 340000,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: 'Only ₹3.4L available in account. Rest already moved. Debit frozen on available balance.',
|
|
assignedOfficer: 'Officer Suresh R.',
|
|
createdAt: daysAgo(6),
|
|
updatedAt: daysAgo(3)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00012',
|
|
complainantName: 'Ananya Gupta',
|
|
complainantMobile: '8210543976',
|
|
complainantEmail: 'ananya.g@outlook.com',
|
|
complainantAddress: '45, Connaught Place, New Delhi 110001',
|
|
fraudAmount: 95000,
|
|
fraudType: 'OLX_FRAUD',
|
|
fraudDescription:
|
|
'Tried to buy an iPhone on OLX. Seller sent fake payment link. ₹95,000 debited upon entering card details.',
|
|
suspectAccountNumber: '50100402819375',
|
|
suspectAccountName: 'FastDeal Online',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20240104-00789',
|
|
status: 'RESOLVED',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 0,
|
|
fundsHeld: 0,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: 'Funds recovered and refunded to complainant.',
|
|
assignedOfficer: 'Officer Anita S.',
|
|
createdAt: daysAgo(20),
|
|
updatedAt: daysAgo(10)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00013',
|
|
complainantName: 'Vikas Joshi',
|
|
complainantMobile: '9109876543',
|
|
complainantEmail: 'vikas.j@gmail.com',
|
|
complainantAddress: '78, FC Road, Pune, MH 411004',
|
|
fraudAmount: 67000,
|
|
fraudType: 'UPI_FRAUD',
|
|
fraudDescription:
|
|
'Received collect request on PhonePe with message "Refund of ₹67,000". Approved the collect request and lost funds.',
|
|
suspectAccountNumber: '50100513928476',
|
|
suspectAccountName: 'Mohan Kumar',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20240103-00456',
|
|
status: 'RECEIVED',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 0,
|
|
fundsHeld: 0,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: '',
|
|
assignedOfficer: '',
|
|
createdAt: hoursAgo(4),
|
|
updatedAt: hoursAgo(4)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00014',
|
|
complainantName: 'Geeta Menon',
|
|
complainantMobile: '8098765432',
|
|
complainantEmail: 'geeta.menon@gmail.com',
|
|
complainantAddress: '90, MG Road, Thrissur, KL 680001',
|
|
fraudAmount: 430000,
|
|
fraudType: 'LOAN_APP_FRAUD',
|
|
fraudDescription:
|
|
'Downloaded "InstaCash" loan app. After providing bank details, ₹4.3L was transferred out in 5 transactions within 30 minutes.',
|
|
suspectAccountNumber: '50100624738291',
|
|
suspectAccountName: 'InstaCash Finance',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20240102-00567',
|
|
status: 'LIEN_MARKED',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 178000,
|
|
fundsHeld: 430000,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: 'Full fraud amount covered by lien. Investigation ongoing.',
|
|
assignedOfficer: 'Officer Meena K.',
|
|
createdAt: daysAgo(7),
|
|
updatedAt: daysAgo(4)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00015',
|
|
complainantName: 'Pankaj Mishra',
|
|
complainantMobile: '7987654321',
|
|
complainantEmail: 'pankaj.m@gmail.com',
|
|
complainantAddress: '11, Hazratganj, Lucknow, UP 226001',
|
|
fraudAmount: 210000,
|
|
fraudType: 'SEXTORTION',
|
|
fraudDescription:
|
|
'Victim blackmailed after video call on dating app. Paid ₹2.1L across 4 transactions to prevent video leak.',
|
|
suspectAccountNumber: '50100735829461',
|
|
suspectAccountName: 'Nikhil Yadav',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20240101-00890',
|
|
status: 'FUNDS_MOVED',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 5000,
|
|
fundsHeld: 0,
|
|
nextHopAccountNumber: '40120098765432',
|
|
nextHopBankIfsc: 'HDFC0001234',
|
|
actionNote: 'Funds already moved to HDFC account. Escalated.',
|
|
assignedOfficer: 'Officer Suresh R.',
|
|
createdAt: daysAgo(12),
|
|
updatedAt: daysAgo(8)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00016',
|
|
complainantName: 'Rekha Pandey',
|
|
complainantMobile: '6876543210',
|
|
complainantEmail: 'rekha.p@yahoo.com',
|
|
complainantAddress: '33, Lalbagh Road, Mangalore, KA 575001',
|
|
fraudAmount: 38000,
|
|
fraudType: 'CUSTOMER_CARE_FRAUD',
|
|
fraudDescription:
|
|
'Googled customer care for Paytm. Called fake number. Agent installed TeamViewer and debited ₹38,000.',
|
|
suspectAccountNumber: '50100846729153',
|
|
suspectAccountName: 'Digital Pay Services',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'MHA_PORTAL',
|
|
acknowledgementNumber: 'ACK-MHA-20240101-00044',
|
|
status: 'UNDER_REVIEW',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 18500,
|
|
fundsHeld: 0,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: '',
|
|
assignedOfficer: 'Officer Anita S.',
|
|
createdAt: daysAgo(2),
|
|
updatedAt: hoursAgo(12)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00017',
|
|
complainantName: 'Dinesh Choudhary',
|
|
complainantMobile: '9765432180',
|
|
complainantEmail: 'dinesh.c@gmail.com',
|
|
complainantAddress: '55, Ashram Road, Ahmedabad, GJ 380009',
|
|
fraudAmount: 780000,
|
|
fraudType: 'INVESTMENT_FRAUD',
|
|
fraudDescription:
|
|
'Invested in fake forex trading platform "ForexPro". Platform blocked withdrawal after total deposit of ₹7.8L.',
|
|
suspectAccountNumber: '50100957382614',
|
|
suspectAccountName: 'ForexPro Trading LLP',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20241230-01567',
|
|
status: 'DEBIT_FROZEN',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 520000,
|
|
fundsHeld: 520000,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: 'Partial amount frozen. ₹2.6L already transferred out.',
|
|
assignedOfficer: 'Officer Meena K.',
|
|
createdAt: daysAgo(9),
|
|
updatedAt: daysAgo(5)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00018',
|
|
complainantName: 'Fatima Begum',
|
|
complainantMobile: '8654321097',
|
|
complainantEmail: '',
|
|
complainantAddress: '12, Chowk Bazaar, Bhopal, MP 462001',
|
|
fraudAmount: 55000,
|
|
fraudType: 'ELECTRICITY_BILL_FRAUD',
|
|
fraudDescription:
|
|
'Received WhatsApp message about electricity bill overdue. Called the number provided. Agent made victim install AnyDesk. ₹55,000 debited.',
|
|
suspectAccountNumber: '50100168293475',
|
|
suspectAccountName: 'Ravi Shankar',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20241229-00234',
|
|
status: 'RESOLVED',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 0,
|
|
fundsHeld: 0,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: 'Funds recovered from suspect account and refunded.',
|
|
assignedOfficer: 'Officer Suresh R.',
|
|
createdAt: daysAgo(25),
|
|
updatedAt: daysAgo(15)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00019',
|
|
complainantName: 'Manoj Kumar',
|
|
complainantMobile: '9543210876',
|
|
complainantEmail: 'manoj.k@gmail.com',
|
|
complainantAddress: '67, Park Street, Kolkata, WB 700016',
|
|
fraudAmount: 175000,
|
|
fraudType: 'PART_TIME_JOB_FRAUD',
|
|
fraudDescription:
|
|
'Joined "Amazon Review" job scam on Telegram. Initially earned small amounts, then lost ₹1.75L as "upgrade fees".',
|
|
suspectAccountNumber: '50100279384651',
|
|
suspectAccountName: 'SmartWork Hub',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20241228-00901',
|
|
status: 'LIEN_MARKED',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 98000,
|
|
fundsHeld: 175000,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: 'Lien marked successfully. Full amount available.',
|
|
assignedOfficer: 'Officer Anita S.',
|
|
createdAt: daysAgo(4),
|
|
updatedAt: daysAgo(2)
|
|
},
|
|
{
|
|
ticketId: 'CFCFRMS-2024-00020',
|
|
complainantName: 'Shreya Das',
|
|
complainantMobile: '8432109765',
|
|
complainantEmail: 'shreya.d@gmail.com',
|
|
complainantAddress: '101, Bandra West, Mumbai, MH 400050',
|
|
fraudAmount: 2100000,
|
|
fraudType: 'INVESTMENT_FRAUD',
|
|
fraudDescription:
|
|
'Invested ₹21L in fake IPO allotment scheme promoted via Instagram ads. Payment split across 3 accounts.',
|
|
suspectAccountNumber: '50100388274916',
|
|
suspectAccountName: 'IPO Goldmine Pvt Ltd',
|
|
suspectBankIfsc: 'LINC0000001',
|
|
suspectBankName: 'LincPay Digital Bank',
|
|
sourcePortal: 'I4C_CFCFRMS',
|
|
acknowledgementNumber: 'ACK-I4C-20241227-01789',
|
|
status: 'RECEIVED',
|
|
currentBankIfsc: 'LINC0000001',
|
|
currentBankName: 'LincPay Digital Bank',
|
|
availableBalance: 0,
|
|
fundsHeld: 0,
|
|
nextHopAccountNumber: '',
|
|
nextHopBankIfsc: '',
|
|
actionNote: '',
|
|
assignedOfficer: '',
|
|
createdAt: hoursAgo(2),
|
|
updatedAt: hoursAgo(2)
|
|
}
|
|
];
|
|
|
|
// ─── Timeline Events keyed by ticketId ───
|
|
export const MOCK_TIMELINES: { [ticketId: string]: TimelineEvent[] } = {
|
|
'CFCFRMS-2024-00001': [
|
|
{
|
|
id: 1,
|
|
ticketId: 'CFCFRMS-2024-00001',
|
|
eventType: 'COMPLAINT_RECEIVED',
|
|
eventDescription: 'Complaint received from I4C CFCFRMS portal.',
|
|
actor: 'System',
|
|
actorRole: 'SYSTEM',
|
|
timestamp: daysAgo(0),
|
|
metadata: {}
|
|
}
|
|
],
|
|
'CFCFRMS-2024-00002': [
|
|
{
|
|
id: 1,
|
|
ticketId: 'CFCFRMS-2024-00002',
|
|
eventType: 'COMPLAINT_RECEIVED',
|
|
eventDescription: 'Complaint received from I4C CFCFRMS portal.',
|
|
actor: 'System',
|
|
actorRole: 'SYSTEM',
|
|
timestamp: daysAgo(1),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 2,
|
|
ticketId: 'CFCFRMS-2024-00002',
|
|
eventType: 'ASSIGNED',
|
|
eventDescription: 'Assigned to Officer Meena K. for review.',
|
|
actor: 'Admin',
|
|
actorRole: 'ADMIN',
|
|
timestamp: hoursAgo(18),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 3,
|
|
ticketId: 'CFCFRMS-2024-00002',
|
|
eventType: 'UNDER_REVIEW',
|
|
eventDescription: 'Investigation initiated. Checking suspect account transaction history.',
|
|
actor: 'Officer Meena K.',
|
|
actorRole: 'COMPLIANCE_OFFICER',
|
|
timestamp: hoursAgo(6),
|
|
metadata: {}
|
|
}
|
|
],
|
|
'CFCFRMS-2024-00003': [
|
|
{
|
|
id: 1,
|
|
ticketId: 'CFCFRMS-2024-00003',
|
|
eventType: 'COMPLAINT_RECEIVED',
|
|
eventDescription: 'Complaint received from MHA Portal.',
|
|
actor: 'System',
|
|
actorRole: 'SYSTEM',
|
|
timestamp: daysAgo(3),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 2,
|
|
ticketId: 'CFCFRMS-2024-00003',
|
|
eventType: 'ASSIGNED',
|
|
eventDescription: 'Assigned to Officer Suresh R.',
|
|
actor: 'Admin',
|
|
actorRole: 'ADMIN',
|
|
timestamp: daysAgo(3),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 3,
|
|
ticketId: 'CFCFRMS-2024-00003',
|
|
eventType: 'UNDER_REVIEW',
|
|
eventDescription: 'Account details verified. ₹1.5L fraud amount confirmed.',
|
|
actor: 'Officer Suresh R.',
|
|
actorRole: 'COMPLIANCE_OFFICER',
|
|
timestamp: daysAgo(2),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 4,
|
|
ticketId: 'CFCFRMS-2024-00003',
|
|
eventType: 'LIEN_MARKED',
|
|
eventDescription: 'Lien placed on suspect account. Balance ₹2,39,000. Full fraud amount secured.',
|
|
actor: 'Officer Suresh R.',
|
|
actorRole: 'COMPLIANCE_OFFICER',
|
|
timestamp: daysAgo(1),
|
|
metadata: { availableBalance: 89000, fundsHeld: 150000 }
|
|
}
|
|
],
|
|
'CFCFRMS-2024-00004': [
|
|
{
|
|
id: 1,
|
|
ticketId: 'CFCFRMS-2024-00004',
|
|
eventType: 'COMPLAINT_RECEIVED',
|
|
eventDescription: 'Complaint received from I4C CFCFRMS portal.',
|
|
actor: 'System',
|
|
actorRole: 'SYSTEM',
|
|
timestamp: daysAgo(5),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 2,
|
|
ticketId: 'CFCFRMS-2024-00004',
|
|
eventType: 'ASSIGNED',
|
|
eventDescription: 'Assigned to Officer Suresh R.',
|
|
actor: 'Admin',
|
|
actorRole: 'ADMIN',
|
|
timestamp: daysAgo(5),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 3,
|
|
ticketId: 'CFCFRMS-2024-00004',
|
|
eventType: 'LIEN_MARKED',
|
|
eventDescription: 'Lien placed on suspect account.',
|
|
actor: 'Officer Suresh R.',
|
|
actorRole: 'COMPLIANCE_OFFICER',
|
|
timestamp: daysAgo(3),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 4,
|
|
ticketId: 'CFCFRMS-2024-00004',
|
|
eventType: 'DEBIT_FROZEN',
|
|
eventDescription: 'Debit freeze applied. Full ₹75,000 held. Account holder notified via registered mobile.',
|
|
actor: 'Officer Suresh R.',
|
|
actorRole: 'COMPLIANCE_OFFICER',
|
|
timestamp: daysAgo(2),
|
|
metadata: { availableBalance: 42000, fundsHeld: 75000 }
|
|
}
|
|
],
|
|
'CFCFRMS-2024-00005': [
|
|
{
|
|
id: 1,
|
|
ticketId: 'CFCFRMS-2024-00005',
|
|
eventType: 'COMPLAINT_RECEIVED',
|
|
eventDescription: 'Complaint received from I4C CFCFRMS portal.',
|
|
actor: 'System',
|
|
actorRole: 'SYSTEM',
|
|
timestamp: daysAgo(8),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 2,
|
|
ticketId: 'CFCFRMS-2024-00005',
|
|
eventType: 'ASSIGNED',
|
|
eventDescription: 'Assigned to Officer Meena K.',
|
|
actor: 'Admin',
|
|
actorRole: 'ADMIN',
|
|
timestamp: daysAgo(8),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 3,
|
|
ticketId: 'CFCFRMS-2024-00005',
|
|
eventType: 'LIEN_MARKED',
|
|
eventDescription: 'Only ₹12,500 available in account.',
|
|
actor: 'Officer Meena K.',
|
|
actorRole: 'COMPLIANCE_OFFICER',
|
|
timestamp: daysAgo(6),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 4,
|
|
ticketId: 'CFCFRMS-2024-00005',
|
|
eventType: 'DEBIT_FROZEN',
|
|
eventDescription: 'Account debit frozen.',
|
|
actor: 'Officer Meena K.',
|
|
actorRole: 'COMPLIANCE_OFFICER',
|
|
timestamp: daysAgo(5),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 5,
|
|
ticketId: 'CFCFRMS-2024-00005',
|
|
eventType: 'FUNDS_MOVED',
|
|
eventDescription: 'Majority of funds already moved to SBI account 91820034567812. Escalation initiated.',
|
|
actor: 'Officer Meena K.',
|
|
actorRole: 'COMPLIANCE_OFFICER',
|
|
timestamp: daysAgo(4),
|
|
metadata: { nextHopAccountNumber: '91820034567812', nextHopBankIfsc: 'SBIN0001234' }
|
|
}
|
|
],
|
|
'CFCFRMS-2024-00006': [
|
|
{
|
|
id: 1,
|
|
ticketId: 'CFCFRMS-2024-00006',
|
|
eventType: 'COMPLAINT_RECEIVED',
|
|
eventDescription: 'Complaint received from I4C CFCFRMS portal.',
|
|
actor: 'System',
|
|
actorRole: 'SYSTEM',
|
|
timestamp: daysAgo(15),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 2,
|
|
ticketId: 'CFCFRMS-2024-00006',
|
|
eventType: 'ASSIGNED',
|
|
eventDescription: 'Assigned to Officer Anita S.',
|
|
actor: 'Admin',
|
|
actorRole: 'ADMIN',
|
|
timestamp: daysAgo(15),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 3,
|
|
ticketId: 'CFCFRMS-2024-00006',
|
|
eventType: 'LIEN_MARKED',
|
|
eventDescription: 'Full amount liened.',
|
|
actor: 'Officer Anita S.',
|
|
actorRole: 'COMPLIANCE_OFFICER',
|
|
timestamp: daysAgo(13),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 4,
|
|
ticketId: 'CFCFRMS-2024-00006',
|
|
eventType: 'DEBIT_FROZEN',
|
|
eventDescription: 'Debit frozen on suspect account.',
|
|
actor: 'Officer Anita S.',
|
|
actorRole: 'COMPLIANCE_OFFICER',
|
|
timestamp: daysAgo(10),
|
|
metadata: {}
|
|
},
|
|
{
|
|
id: 5,
|
|
ticketId: 'CFCFRMS-2024-00006',
|
|
eventType: 'RESOLVED',
|
|
eventDescription: 'Full amount ₹3,20,000 recovered and refunded to complainant via NEFT. Case closed.',
|
|
actor: 'Officer Anita S.',
|
|
actorRole: 'COMPLIANCE_OFFICER',
|
|
timestamp: daysAgo(5),
|
|
metadata: {}
|
|
}
|
|
]
|
|
};
|
|
|
|
// ─── Dashboard Stats (computed from mock data) ───
|
|
export function computeMockStats(): DashboardStats {
|
|
const statusDist: { [key: string]: number } = {};
|
|
const amountDist: { [key: string]: number } = {};
|
|
let pendingReview = 0;
|
|
let lienMarked = 0;
|
|
let fundsRecovered = 0;
|
|
|
|
MOCK_COMPLAINTS.forEach((c) => {
|
|
statusDist[c.status] = (statusDist[c.status] || 0) + 1;
|
|
amountDist[c.status] = (amountDist[c.status] || 0) + c.fraudAmount;
|
|
|
|
if (c.status === 'RECEIVED' || c.status === 'UNDER_REVIEW') pendingReview++;
|
|
if (c.status === 'LIEN_MARKED') lienMarked++;
|
|
if (c.status === 'RESOLVED') fundsRecovered += c.fraudAmount;
|
|
});
|
|
|
|
return {
|
|
totalComplaints: MOCK_COMPLAINTS.length,
|
|
pendingReview,
|
|
lienMarked,
|
|
fundsRecovered,
|
|
statusDistribution: statusDist as any,
|
|
amountByStatus: amountDist as any
|
|
};
|
|
}
|