import { useState, Suspense } from 'react' import { useSearchParams } from 'react-router-dom' import { Layers, Wallet, LayoutTemplate, Receipt, Loader2 } from 'lucide-react' import PageGuide from '../components/ui/PageGuide' import { lazyRetry } from '../lib/lazyRetry' const BatchManager = lazyRetry(() => import('./money/BatchTab').then(m => ({ default: m.BatchManager }))) const TemplateManager = lazyRetry(() => import('./money/TemplateTab').then(m => ({ default: m.TemplateManager }))) const PayslipManager = lazyRetry(() => import('./money/PayslipTab').then(m => ({ default: m.PayslipManager }))) type Tab = 'batch' | 'template' | 'payslip' export default function Money() { const [searchParams] = useSearchParams() const initialEmployeeId = searchParams.get('employeeId') || '' const initialTab = (searchParams.get('tab') as Tab) || (initialEmployeeId ? 'payslip' : 'batch') const [tab, setTab] = useState(initialTab) const tabs: { key: Tab; label: string; icon: React.ReactNode }[] = [ { key: 'batch', label: '发薪批次', icon: }, { key: 'template', label: '薪酬模版', icon: }, { key: 'payslip', label: '工资条管理', icon: }, ] return (
薪酬管理,支持工资条发放、批量算薪和工资模板配置。流程:①配置模板 → ②导入考勤数据 → ③批量算薪 → ④生成工资条。关联:工资数据来自花名册薪酬信息,考勤数据来自考勤管理,加班费在「加班费计算」模块单独计算后导入。

薪税管理

统一管理发薪批次、工资条及薪酬模板

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