import { useEffect } from 'react'; import { useForm, Controller } from 'react-hook-form'; import { Dialog, DialogTitle, DialogContent, DialogActions, Button, TextField, MenuItem, Box } from '@mui/material'; interface Ticket { id: number; title: string; status: string; priority: string; createTime: string; } interface ModalFormProps { open: boolean; onClose: () => void; onSave: (data: Ticket) => void; ticket: Ticket | null; } export const ModalForm = ({ open, onClose, onSave, ticket }: ModalFormProps) => { const { control, handleSubmit, reset } = useForm({ defaultValues: { title: '', status: '待处理', priority: '中', createTime: new Date().toLocaleString() } }); useEffect(() => { if (ticket) { reset(ticket); } else { reset({ title: '', status: '待处理', priority: '中', createTime: new Date().toLocaleString() }); } }, [ticket, reset]); const onSubmit = (data: Ticket) => { onSave(data); }; return ( {ticket ? '编辑工单' : '创建工单'}
( )} /> ( 待处理 处理中 已完成 )} /> ( )} />
); };