import {useEffect} from 'react' import { ModalForm, ProForm, ProFormTextArea, ProFormText, ProFormDigit, ProFormRadio, ProFormDateRangePicker } from '@ant-design/pro-components'; import { Button, Form, message } from 'antd'; import {DictOptionType, DictValueEnumObj} from "@/components/DictTag"; import { useIntl, FormattedMessage } from '@umijs/max'; export type ListFormProps = { onCancel: (flag?: boolean, formVals?: unknown) => void; onSubmit: (values: API.JobFairList.JobFairListRows) => Promise; open: boolean; values?: Partial; jobFairType?: DictValueEnumObj; }; const waitTime = (time: number = 100) => { return new Promise((resolve) => { setTimeout(() => { resolve(true); }, time); }); }; const listEdit: React.FC = (props) => { const [form] = Form.useForm(); const intl = useIntl(); const { jobFairType } = props; useEffect(() => { form.resetFields(); if(props.values) { form.setFieldsValue({ ...props.values, createTimeRanger: [props.values.startTime, props.values.endTime], }); } }, [form, props]); const handleCancel = () => { props.onCancel(); form.resetFields(); }; const handleFinish = async (values: Record) => { props.onSubmit(values as API.JobFairList.JobFairListRows); }; return ( title={`${props.values ? '编辑' : '新增'}招聘会`} form={form} autoFocusFirstInput open={props.open} modalProps={{ destroyOnClose: true, onCancel: () => handleCancel(), }} submitTimeout={2000} onFinish={handleFinish} >