|
|
@@ -1,4 +1,4 @@
|
|
|
-import React, { useEffect, useState } from 'react';
|
|
|
+import React, { useEffect } from 'react';
|
|
|
import { Modal, Form, Input, Select, InputNumber, DatePicker, Checkbox } from 'antd';
|
|
|
import { Member } from '../../types/member';
|
|
|
import dayjs from 'dayjs';
|
|
|
@@ -25,7 +25,6 @@ const defaultServicePositions = [
|
|
|
|
|
|
const MemberModal: React.FC<MemberModalProps> = ({ visible, onOk, onCancel, initialValues }) => {
|
|
|
const [form] = Form.useForm();
|
|
|
- const [servicePositions, setServicePositions] = useState(defaultServicePositions);
|
|
|
|
|
|
useEffect(() => {
|
|
|
if (visible && initialValues) {
|
|
|
@@ -35,8 +34,6 @@ const MemberModal: React.FC<MemberModalProps> = ({ visible, onOk, onCancel, init
|
|
|
baptismDate: initialValues.baptismDate ? dayjs(initialValues.baptismDate) : null,
|
|
|
};
|
|
|
form.setFieldsValue(values);
|
|
|
- // 更新服侍岗位选项,包括用户自定义的选项
|
|
|
- setServicePositions([...new Set([...defaultServicePositions, ...initialValues.servicePositions])]);
|
|
|
} else {
|
|
|
form.resetFields();
|
|
|
}
|
|
|
@@ -63,19 +60,55 @@ const MemberModal: React.FC<MemberModalProps> = ({ visible, onOk, onCancel, init
|
|
|
width={800}
|
|
|
>
|
|
|
<Form form={form} layout="vertical">
|
|
|
- {/* 其他表单项保持不变 */}
|
|
|
- {/* ... */}
|
|
|
+ <Form.Item name="id" hidden><Input /></Form.Item>
|
|
|
+ <Form.Item name="name" label="姓名" rules={[{ required: true, message: '请输入姓名' }]}>
|
|
|
+ <Input />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item name="idNumber" label="身份证号" rules={[{ required: true, message: '请输入身份证号' }]}>
|
|
|
+ <Input />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item name="phone" label="手机号" rules={[{ required: true, message: '请输入手机号' }]}>
|
|
|
+ <Input />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item name="gender" label="性别" rules={[{ required: true, message: '请选择性别' }]}>
|
|
|
+ <Select>
|
|
|
+ <Option value="男">男</Option>
|
|
|
+ <Option value="女">女</Option>
|
|
|
+ <Option value="其他">其他</Option>
|
|
|
+ </Select>
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item name="age" label="年龄" rules={[{ required: true, message: '请输入年龄' }]}>
|
|
|
+ <InputNumber min={0} max={150} />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item name="birthDate" label="出生日期" rules={[{ required: true, message: '请选择出生日期' }]}>
|
|
|
+ <DatePicker />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item name="maritalStatus" label="婚姻状态" rules={[{ required: true, message: '请选择婚姻状态' }]}>
|
|
|
+ <Select>
|
|
|
+ <Option value="未婚">未婚</Option>
|
|
|
+ <Option value="已婚">已婚</Option>
|
|
|
+ <Option value="离异">离异</Option>
|
|
|
+ <Option value="丧偶">丧偶</Option>
|
|
|
+ </Select>
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item name="address" label="联系地址" rules={[{ required: true, message: '请输入联系地址' }]}>
|
|
|
+ <Input.TextArea />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item name="workplace" label="工作单位">
|
|
|
+ <Input />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item name="groupLeader" label="小组组长">
|
|
|
+ <Input />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item name="isBaptized" label="是否受洗" valuePropName="checked">
|
|
|
+ <Checkbox />
|
|
|
+ </Form.Item>
|
|
|
+ <Form.Item name="baptismDate" label="受洗日期">
|
|
|
+ <DatePicker />
|
|
|
+ </Form.Item>
|
|
|
<Form.Item name="servicePositions" label="服侍岗位">
|
|
|
- <Select
|
|
|
- mode="tags"
|
|
|
- style={{ width: '100%' }}
|
|
|
- placeholder="请选择或输入服侍岗位"
|
|
|
- onChange={(value) => {
|
|
|
- // 更新服侍岗位选项,包括新添加的自定义选项
|
|
|
- setServicePositions([...new Set([...defaultServicePositions, ...value])]);
|
|
|
- }}
|
|
|
- >
|
|
|
- {servicePositions.map(position => (
|
|
|
+ <Select mode="tags" style={{ width: '100%' }} placeholder="请选择或输入服侍岗位">
|
|
|
+ {defaultServicePositions.map(position => (
|
|
|
<Option key={position} value={position}>{position}</Option>
|
|
|
))}
|
|
|
</Select>
|