import React from 'react'; import { Button, DatePicker, Input, InputNumber, Space, Switch, Tooltip, Upload } from 'antd'; import { DownloadOutlined, ExportOutlined, PlusOutlined, UploadOutlined, } from '@ant-design/icons'; import type { Dayjs } from 'dayjs'; import PermissionButton from '../../components/PermissionButton'; import type { OccupancyView } from '../archive-view'; const { RangePicker } = DatePicker; export const OccupanciesToolbar: React.FC<{ viewMode: OccupancyView; onChangeViewMode: (mode: OccupancyView) => void; onSearch: (value: string) => void; dateRange: [Dayjs | null, Dayjs | null] | null; onChangeDateRange: (dates: [Dayjs | null, Dayjs | null] | null) => void; canCheckIn: boolean; onCheckIn: () => void; onImport: (options: any) => void; autoDeposit: boolean; onAutoDepositChange: (value: boolean) => void; depositAmount: number; onDepositAmountChange: (value: number) => void; onDownloadTemplate: () => void; onExport: () => void; templateLoading?: boolean; exportLoading?: boolean; }> = ({ viewMode, onChangeViewMode, onSearch, dateRange, onChangeDateRange, canCheckIn, onCheckIn, onImport, autoDeposit, onAutoDepositChange, depositAmount, onDepositAmountChange, onDownloadTemplate, onExport, templateLoading, exportLoading, }) => { return (
onChangeDateRange(dates ? [dates[0], dates[1]] : null)} placeholder={['入住开始', '入住结束']} style={{ width: 240 }} /> {viewMode !== 'archived' ? ( } onClick={onCheckIn} > 入住登记 ) : null} {viewMode !== 'archived' && canCheckIn ? ( <> 导入时自动收押金 {autoDeposit && ( onDepositAmountChange(v || 500)} style={{ width: 60 }} /> )} ) : null} {viewMode !== 'archived' ? ( } loading={templateLoading} onClick={onDownloadTemplate} > 下载模板 ) : null} {viewMode !== 'archived' ? ( } loading={exportLoading} onClick={onExport} > 导出记录 ) : null}
); };