```react import React, { useState, useEffect } from 'react'; import { Calculator, CheckSquare, UserCheck, Info, Smartphone, Monitor, AlertCircle, CheckCircle2, XCircle, FileText, CreditCard, Clock, ShieldCheck } from 'lucide-react'; export default function App() { const [activeTab, setActiveTab] = useState('overview'); return (
{/* Header */}
MARA Logo { e.target.onerror = null; e.target.src = "data:image/svg+xml;utf8,"; }} />

Papan Pemuka Skim WP 9.1

Kemudahan Pembiayaan Komputer & Telefon Pintar Staf MARA

{/* Navigation Tabs */}
setActiveTab('overview')} icon={} label="Ringkasan" /> setActiveTab('eligibility')} icon={} label="Semak Kelayakan" /> setActiveTab('calculator')} icon={} label="Kalkulator" /> setActiveTab('checklist')} icon={} label="Senarai Semak" />
{/* Main Content Area */}
{activeTab === 'overview' && } {activeTab === 'eligibility' && } {activeTab === 'calculator' && } {activeTab === 'checklist' && }
); } // --- Komponen Tab Navigasi --- function TabButton({ active, onClick, icon, label }) { return ( ); } // --- TAB 1: RINGKASAN (OVERVIEW) --- function OverviewTab() { return (
{/* Quick Stats Grid */}
} title="Had Pembiayaan" value="RM 7,000" sub="Maksimum" /> } title="Tempoh Maksimum" value="60 Bulan" sub="Bayaran balik" /> } title="Kadar Keuntungan" value="2% Setahun" sub="Kadar tetap" /> } title="Kombinasi Peranti" value="2 Peranti" sub="Maksimum (Jenis berbeza)" />
{/* Details Sections */}

Peranti Yang Dibenarkan

  • Komputer: Meja (Desktop), Riba (Laptop), Tablet.
  • Perkakasan Komputer: Pencetak, Pengimbas, Peranti storan tambahan (SSD/HDD).
  • Telefon Pintar: Terhad 1 unit baharu (Boleh gabung dgn 1 peranti lain). Termasuk pengecas asal, fon telinga, stylus.
  • TIDAK Dibenarkan: Aksesori estetik, tripod, gimbal, lensa kamera, dok pengecas magnetik, dll.

Syarat Am Pembelian

Pembelian Langsung

Melalui syarikat berdaftar di negeri yang sama dengan pusat perkhidmatan/kediaman.

Platform E-Dagang

Hanya Pengedar Sah (Authorized Dealer). Konsep "Pay and Claim".

Pakej Jalur Lebar (Telco)

Dibenarkan jika bayaran peranti dibuat lumpsum (sekaligus). Tidak meliputi bil bulanan telco.

); } function StatCard({ icon, title, value, sub }) { return (
{icon}

{title}

{value}

{sub}

); } // --- TAB 2: SEMAKAN KELAYAKAN (ELIGIBILITY) --- function EligibilityTab() { const [answers, setAnswers] = useState({ employmentType: '', contractMonths: '', disciplinary: '', yearsSinceLast: '', }); const [result, setResult] = useState(null); const checkEligibility = () => { let isEligible = true; let reasons = []; if (!answers.employmentType || !answers.disciplinary || !answers.yearsSinceLast || (answers.employmentType === 'contract' && !answers.contractMonths)) { setResult({ status: 'incomplete', msg: 'Sila jawab semua soalan untuk menyemak.' }); return; } if (answers.employmentType === 'contract' && parseInt(answers.contractMonths) < 12) { isEligible = false; reasons.push('Staf kontrak mesti berkhidmat sekurang-kurangnya 12 bulan.'); } if (answers.disciplinary === 'yes') { isEligible = false; reasons.push('Mempunyai rekod/siasatan tatatertib atau keterhutangan tinggi.'); } if (parseInt(answers.yearsSinceLast) < 3) { isEligible = false; reasons.push('Pembiayaan sebelum ini kurang dari 3 tahun lalu.'); } if (isEligible) { setResult({ status: 'pass', msg: 'Tahniah! Anda berkemungkinan besar layak memohon skim ini.', guarantor: answers.employmentType === 'contract' }); } else { setResult({ status: 'fail', msg: 'Maaf, anda tidak memenuhi kriteria kerana:', reasons }); } }; return (

Borang Semakan Kelayakan

{/* Soalan 1 */}
{/* Soalan 1.1 (Conditional) */} {answers.employmentType === 'contract' && (
)} {/* Soalan 2 */}
{/* Soalan 3 */}
{/* Hasil Semakan */} {result && (
{result.status === 'pass' ? : result.status === 'fail' ? : }

{result.msg}

{result.reasons && (
    {result.reasons.map((r, i) =>
  • {r}
  • )}
)} {result.guarantor && (

Peringatan: Sebagai staf kontrak, anda wajib menyertakan seorang penjamin (Staf MARA berjawatan tetap).

)}
)}
); } // --- TAB 3: KALKULATOR (CALCULATOR) --- function CalculatorTab() { const [inputAmount, setInputAmount] = useState(3500); const [tenure, setTenure] = useState(36); const rate = 0.02; // 2% profit rate // Logic: Bundarkan kepada ratusan ringgit terdekat yang lebih rendah (WP 9.1 Para 11.1) const roundedAmount = Math.min(7000, Math.floor(inputAmount / 100) * 100); const profit = roundedAmount * rate * (tenure / 12); const totalPayable = roundedAmount + profit; const monthlyInstallment = tenure > 0 ? (totalPayable / tenure) : 0; return (
{/* Input Section */}

Simulasi Pembiayaan

RM {inputAmount.toLocaleString()}
setInputAmount(Number(e.target.value))} className="w-full h-2 bg-slate-200 rounded-lg appearance-none cursor-pointer accent-red-600" />
RM 500 RM 10,000
{inputAmount > 7000 && (

Had maksimum pembiayaan MARA adalah RM 7,000. Baki RM {(inputAmount - 7000).toLocaleString()} perlu ditanggung sendiri.

)}
{tenure} Bulan
setTenure(Number(e.target.value))} className="w-full h-2 bg-slate-200 rounded-lg appearance-none cursor-pointer accent-red-600" />
1 Tahun Maksimum 5 Tahun

Nota Peringatan (WP 9.1): Amaun pembiayaan akan dibundarkan ke ratusan ringgit terdekat yang lebih rendah. Contoh: Jika sebut harga RM 6,850, pembiayaan diluluskan ialah RM 6,800.

{/* Results Section */}

Ringkasan Pembiayaan

Amaun Diluluskan (Bundar ke bawah)

RM {roundedAmount.toLocaleString()}

Kadar Keuntungan (2%)

RM {profit.toLocaleString()}

Jumlah Keseluruhan

RM {totalPayable.toLocaleString()}

Anggaran Ansuran Bulanan

RM {monthlyInstallment.toFixed(2)}

*Potongan tidak boleh melebihi 1/3 gaji emolumen

); } // --- TAB 4: SENARAI SEMAK (CHECKLIST) --- function ChecklistTab() { const [method, setMethod] = useState('direct'); const methods = [ { id: 'direct', name: 'Pembelian Langsung (Kedai Fizikal)' }, { id: 'ecommerce', name: 'Platform E-Dagang (Pay & Claim)' }, { id: 'telco', name: 'Pakej Jalur Lebar (Telco)' }, ]; const getChecklist = () => { const commonDocs = [ "Borang Permohonan (Lampiran A) - 3 salinan asal, lengkap diisi.", "Satu (1) Salinan Kad Pengenalan - disahkan oleh Pegawai Mengawal Pusat.", "Satu (1) Salinan Penyata Gaji Terkini - disahkan oleh Pegawai Mengawal Pusat." ]; if (method === 'direct') { return [ ...commonDocs, "Sebut Harga Asal (Original Quotation) berserta Cop Syarikat Pembekal (Sebut harga e-mel/fotostat TIDAK diterima)." ]; } else if (method === 'ecommerce') { return [ ...commonDocs, "Tangkapan Skrin/Cetakan Halaman Produk yang jelas menunjukkan: Nama produk, harga, nama penjual, dan status pengedar sah (Authorized Dealer).", "Dokumen selepas kelulusan (untuk bayaran): Invois, Resit Asal Pembelian, Akuan Penerimaan (Delivery Order), dan Salinan Penyata Bank staf." ]; } else { return [ ...commonDocs, "Flyer/Promo Rasmi dari laman web atau katalog Telco yang menunjukkan pakej pembelian peranti." ]; } }; return (

Senarai Semak Dokumen Permohonan

{methods.map(m => ( ))}

Dokumen Yang Diperlukan

{method === 'ecommerce' && (

Perhatian E-Dagang: MARA akan mengeluarkan Surat Pra-Kelulusan (Lampiran D) dahulu. Anda perlu membeli menggunakan wang sendiri, kemudian tuntut (claim) bayaran dari MARA beserta resit asal dalam tempoh 2 bulan.

)}
); } ```