import { useState, lazy, Suspense } from 'react' import { Layers, Wallet, LayoutTemplate, Clock, Receipt, Loader2 } from 'lucide-react' const BatchManager = lazy(() => import('./money/BatchTab').then(m => ({ default: m.BatchManager }))) const TemplateManager = lazy(() => import('./money/TemplateTab').then(m => ({ default: m.TemplateManager }))) const OvertimeCalculator = lazy(() => import('./money/OvertimeTab').then(m => ({ default: m.OvertimeCalculator }))) const PayslipManager = lazy(() => import('./money/PayslipTab').then(m => ({ default: m.PayslipManager }))) type Tab = 'batch' | 'template' | 'overtime' | 'payslip' export default function Money() { const [tab, setTab] = useState('batch') const tabs: { key: Tab; label: string; icon: React.ReactNode }[] = [ { key: 'batch', label: '发薪批次', icon: }, { key: 'template', label: '薪酬模版', icon: }, { key: 'overtime', label: '加班费计算', icon: }, { key: 'payslip', label: '工资条管理', icon: }, ] return (

薪税管理

统一管理发薪批次、工资条及加班薪酬

{tabs.map((t) => ( ))}
}> {tab === 'batch' && } {tab === 'template' && } {tab === 'overtime' && } {tab === 'payslip' && } ) }