import { MyBetaModalFormProps, MyButtons, MyFormItems, MyModalFormProps, rulesHelper, } from '@/common'; import { Apis } from '@/gen/Apis'; import { HouseOccupantsCardTypeEnum, HouseOccupantsHouseRelationEnum, HouseRegistersCustomerTypeEnum, } from '@/gen/Enums'; import { BetaSchemaForm, ProCard } from '@ant-design/pro-components'; import { Form, message } from 'antd'; export default function Create(props: MyBetaModalFormProps) { const [form] = Form.useForm(); return ( {...MyModalFormProps.props} title={`${props.title}`} wrapperCol={{ span: 24 }} width="900px" trigger={ } key={new Date().getTime()} form={form} onOpenChange={(open: any) => { if (open) { form.resetFields(); // 清空表单数据 } }} onFinish={async (values) => Apis.Archive.HouseRegisters.Store({ ...values, asset_houses_id: props?.item?.id, type: 'Transfer', }) .then(() => { props.reload?.(); message.success(props.title + '成功'); return true; }) .catch(() => false) } columns={[ // MyFormItems.EnumRadio({ // key: 'house_status', // title: '房屋状态', // colProps: { span: 12 }, // valueEnum: HouseRegistersHouseStatusEnum, // formItemProps: { ...rulesHelper.text }, // }), // MyFormItems.EnumRadio({ // key: 'house_status', // title: '使用计划', // colProps: { span: 8 }, // valueEnum: HouseRegistersUsagePlanEnum, // formItemProps: { ...rulesHelper.text }, // }), MyFormItems.EnumSelect({ key: 'customer_type', title: '产权归属', colProps: { span: 6 }, valueEnum: HouseRegistersCustomerTypeEnum, }), MyFormItems.UploadImages({ key: 'ownership_info', title: '产权文件', tooltip: '上限3张', uploadType: 'file', max: 3, colProps: { span: 18 }, formItemProps: { ...rulesHelper.array }, }), { valueType: 'formList', dataIndex: 'customer_info', colProps: { span: 24 }, fieldProps: { copyIconProps: false, creatorButtonProps: { creatorButtonText: '添加产权人', }, itemRender: ( { listDom, action }: any, { index }: { index: number }, ) => { return ( {listDom} ); }, }, columns: [ { valueType: 'group', columns: [ { title: '名称', dataIndex: 'name', colProps: { span: 5 }, formItemProps: { ...rulesHelper.text }, }, { title: '手机号', dataIndex: 'phone', colProps: { span: 5 }, fieldProps: { maxLength: 11, }, formItemProps: { ...rulesHelper.phone }, }, MyFormItems.EnumSelect({ key: 'card_type', title: '证件类型', colProps: { span: 6 }, valueEnum: HouseOccupantsCardTypeEnum, required: true, }), { title: '证件号码', dataIndex: 'id_card', colProps: { span: 8 }, fieldProps: { maxLength: 18, }, formItemProps: { ...rulesHelper.text }, }, MyFormItems.EnumRadio({ key: 'house_relation', title: '住户类型', colProps: { span: 6 }, valueEnum: HouseOccupantsHouseRelationEnum, fieldProps: { defaultValue: 'Owner', }, hideInForm: true, }), { valueType: 'group', columns: [ MyFormItems.UploadImages({ key: 'card_front_image', title: '证件正面', uploadType: 'file', max: 1, colProps: { span: 6 }, }), MyFormItems.UploadImages({ key: 'card_back_image', title: '证件反面', uploadType: 'file', max: 1, colProps: { span: 6 }, }), { title: '是否办理入住', dataIndex: 'is_live_in', colProps: { span: 6 }, valueType: 'switch', }, { name: ['is_live_in'], valueType: 'dependency', columns: ({ is_live_in }: any) => { return is_live_in ? [ { title: '入住日期', dataIndex: 'move_in_date', valueType: 'date', colProps: { span: 6 }, fieldProps: { style: { width: '100%' }, }, formItemProps: { ...rulesHelper.text }, }, ] : []; }, }, ], }, ], }, ], }, ]} /> ); }