function ExecutiveScreen({ setRoute }) { const stateVals = Object.fromEntries(STATES.map(s => [s.code, s.value])); const monthLabels = ["Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","Jan","Feb","Mar"]; const revActual = [180,192,205,198,215,224,232,240,252,268,275,288]; const revTarget = [200,205,210,215,220,225,230,240,245,255,265,280]; const catData = [ { label: "IT & Electronics", value: 428 }, { label: "Medical & Pharma", value: 312 }, { label: "Infrastructure", value: 268 }, { label: "Defence Supplies", value: 214 }, { label: "Services & Consulting", value: 186 }, { label: "Other", value: 118 }, ]; return (
Executive Dashboard
FY 2025–26 · Q2 · Last refreshed 2 minutes ago · All systems operational
{/* AI insight strip */}
Executive summary generated by VyaparBI Copilot RAG · 3 sources
Q2 procurement is tracking 12.4% above last quarter, driven by Karnataka (+18.4%) and Delhi NCR (+22.1%). Punjab shows an anomaly — tender activity down 2.1% pending MCC review. Prophet forecast: Q4 revenue ₹3,480 Cr (±3.2%). See 3 recommended actions →
{/* KPI row */}
{KPIS.map(k => (
{k.label}
{k.value}{k.unit}
{fmtPct(k.delta)} {k.vs}
))}
{/* Row: revenue trend + donut */}

Revenue Collection — Actual vs Target

₹ Crore · Monthly · FY 2025–26
Actual Target

GeM Spend by Category

{/* Row: State map + department table */}

Procurement by State

Click a state to drill down · Q2 FY26
Top 5
{STATES.slice(0, 5).map((s, i) => (
{i + 1}
{s.name}
₹{s.value.toFixed(0)} Cr
= 0 ? 'var(--ok)' : 'var(--danger)', fontWeight: 600 }}>{fmtPct(s.delta)}
))}

Top Departments by Procurement Value

Q2 FY26 · Live GeM feed
Live
{DEPARTMENTS.map((d, i) => ( ))}
Department / PSU Value Orders Change
{d.name}
₹{d.value.toFixed(1)} Cr {fmtNum(d.orders)} = 0 ? 'var(--ok)' : 'var(--danger)', fontWeight: 600 }}>{fmtPct(d.delta)} v + i * 3)} w={80} h={22} stroke={d.delta >= 0 ? 'var(--ok)' : 'var(--danger)'}/>
{/* Bottom: recent tenders + insights */}

Recent Tenders

Live from GeM Portal · GEM/2026
{RECENT_TENDERS.map((t, i) => ( ))}
Tender ID Buyer Category Value Bids Status Closes
{t.id} {t.dept} {t.cat} ₹{t.value} Cr {t.bids} {t.status} {t.closes}

AI Auto-Insights

3 new
{AI_INSIGHTS.map((ins, i) => (
{ins.title}
{ins.body}
{ins.tag} · Confidence 92%
))}
); } window.ExecutiveScreen = ExecutiveScreen;