diff --git a/src/pages/Jobfair/Outdoorfair/components/EditModal.tsx b/src/pages/Jobfair/Outdoorfair/components/EditModal.tsx index e33d7c6..b120138 100644 --- a/src/pages/Jobfair/Outdoorfair/components/EditModal.tsx +++ b/src/pages/Jobfair/Outdoorfair/components/EditModal.tsx @@ -147,7 +147,30 @@ const EditModal: React.FC = ({ width={700} modalProps={{ destroyOnClose: true, onCancel }} onFinish={async (formValues) => { - await onSubmit({ ...formValues, id: values?.id } as OutdoorFairForm); + const payload = { ...formValues, id: values?.id } as OutdoorFairForm; + const venueChanged = + !!values?.id && + values.venueId !== undefined && + Number(values.venueId) !== Number(payload.venueId); + if (venueChanged && (values?.boothCount || 0) > 0) { + return new Promise((resolve) => { + Modal.confirm({ + title: '确认更换场地并重建展位图?', + content: + '当前招聘会已有展位图。确认后将删除原展位图和所有企业预定,再按新场地的展位模板重新生成;此操作不可恢复。', + okText: '确认重建', + okButtonProps: { danger: true }, + cancelText: '取消', + onOk: async () => { + await onSubmit({ ...payload, resetBoothMap: true }); + resolve(true); + }, + onCancel: () => resolve(false), + }); + }); + } + await onSubmit(payload); + return true; }} >