import { RESPONSE_CODE } from '@/constants/enum'; import UploadC from '@/pages/Invoice/waitProcessRecord/components/UploadSingleImg'; import { postOrderErpOrderStagesUpload, postServiceInvoiceDealInvoicingResult, } from '@/services'; import { ModalForm, ProFormDatePicker, ProFormText, } from '@ant-design/pro-components'; import { Col, Form, Row, message } from 'antd'; import { RcFile } from 'antd/es/upload'; import { useEffect } from 'react'; export default ({ record }) => { useEffect(() => { console.log('invoicing'); }, []); const [form] = Form.useForm(); return ( <ModalForm title="手动开票" trigger={<a type="primary">手动开票</a>} width={600} layout={'horizontal'} form={form} autoFocusFirstInput modalProps={{ destroyOnClose: true, onCancel: () => console.log('run'), }} submitTimeout={2000} onFinish={async (values) => { const res = await postServiceInvoiceDealInvoicingResult({ data: { ...values, isSuccess: true, invoiceRecordId: record.id, manual: true, invoiceDetailDtoList: record.invoiceDetails, }, }); if (res.result === RESPONSE_CODE.SUCCESS) { message.success('开票成功'); return true; } else { message.error('开票失败'); } }} > <ProFormText rules={[{ required: true, message: '此项为必填项' }]} width={'md'} name="invoiceNumber" label="发票号码" /> <ProFormDatePicker rules={[{ required: true, message: '此项为必填项' }]} fieldProps={{ format: 'YYYY-MM-DD', }} name="invoicingDate" label="开票日期" /> <ProFormText rules={[{ required: true, message: '发票必须上传' }]} hidden name="url" label="發票地址" /> <Row> <Col span={4}>上传发票</Col> <Col span={20}> <UploadC onFilesChange={async (newFileList) => { if (newFileList.length > 0) { const formData = new FormData(); formData.append('file', newFileList[0].originFileObj as RcFile); const res = await postOrderErpOrderStagesUpload({ data: formData, headers: { 'Content-Type': 'multipart/form-data; boundary=----WebKitFormBoundarynl6gT1BKdPWIejNq', }, }); const url = res.data; form.setFieldValue('url', url); } else { form.setFieldValue('url', null); } }} ></UploadC> </Col> </Row> </ModalForm> ); };