/** * 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 }; }