index.tsx 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import { Form, Input, Modal } from 'antd'
  2. import { FC } from 'react'
  3. import { D3StaffOversiderType } from '../../types'
  4. export interface OutsiderModalProps {
  5. visible: boolean
  6. setVisible: (v: boolean) => void
  7. onOk: (item: D3StaffOversiderType) => void
  8. }
  9. export const OutsiderModal: FC<OutsiderModalProps> = ({ visible, setVisible, onOk }) => {
  10. const [form] = Form.useForm()
  11. const handleCancel = () => {
  12. setVisible(false)
  13. }
  14. const handleSubmit = async () => {
  15. if (!(await form.validateFields())) return
  16. onOk(form.getFieldsValue())
  17. setVisible(false)
  18. form.resetFields()
  19. }
  20. return (
  21. <Modal title='外部人员' open={visible} onCancel={handleCancel} onOk={handleSubmit}>
  22. <Form form={form} labelCol={{ span: 5 }}>
  23. <Form.Item label='姓名' required rules={[{ required: true }]} name='name'>
  24. <Input maxLength={30} placeholder='请输入' />
  25. </Form.Item>
  26. <Form.Item label='联系方式' name='phone'>
  27. <Input maxLength={30} placeholder='请输入' />
  28. </Form.Item>
  29. <Form.Item label='身份证号' name='papers'>
  30. <Input maxLength={30} placeholder='请输入' />
  31. </Form.Item>
  32. <Form.Item label='所在单位' name='remark'>
  33. <Input maxLength={30} placeholder='请输入' />
  34. </Form.Item>
  35. </Form>
  36. </Modal>
  37. )
  38. }