import { RESPONSE_CODE } from '@/constants/enum'; import { enumToSelect } from '@/utils'; import { DrawerForm, ProFormDatePicker, ProFormDigit, ProFormSelect, ProFormText, ProFormTextArea, } from '@ant-design/pro-components'; import { Form, message } from 'antd'; import { PAYEE_OPTIONS } from '../constant'; export default ({ dataList, setVisible, onClose }) => { // let subOrderIds = dataList?.map((item) => { // return item.id; // }); let firstMainOrder = dataList[0]; let bank = firstMainOrder?.bank; let bankAccountNumber = firstMainOrder?.bankAccountNumber; let invoiceIdentificationNumber = firstMainOrder?.invoiceIdentificationNumber; const [form] = Form.useForm<{ invoicingTime: string; financialReceiptIssuanceTime: string; invoicingNotes: string; afterInvoicingStatus: string; collectMoneyTime: string; }>(); return ( <DrawerForm open title="合并开票" resize={{ onResize() { console.log('resize!'); }, maxWidth: window.innerWidth * 0.8, minWidth: 400, }} form={form} autoFocusFirstInput drawerProps={{ destroyOnClose: true, }} submitTimeout={2000} onFinish={async (values) => { console.log(values); let res; let body = values; body.subIds = subIds; body.mainOrderId = mainOrder.id; body.mainorderOrSubOrderInvoicing = isMainOrder; if (isEdit) { res = await postServiceOrderEditOrder({ data: body }); } else { res = await postServiceOrderInvoicing({ data: body }); } if (res.result === RESPONSE_CODE.SUCCESS) { message.success(res.message); onClose(); } }} onOpenChange={(val) => { return !val && setVisible(); }} > <ProFormText width="lg" name="invoiceIdentificationNumber" label="开票信息" placeholder="请输入开票信息" initialValue={invoiceIdentificationNumber} disabled /> <ProFormText width="lg" name="bank" label="开户银行" placeholder="请输入开户银行" initialValue={bank} disabled /> <ProFormText width="lg" name="bankAccountNumber" label="开户银行账号" placeholder="请输入开户银行账号" initialValue={bankAccountNumber} disabled /> <ProFormDatePicker key="invoicingTime" width="lg" name="invoicingTime" label="开票时间" rules={[{ required: true, message: '这是必填项' }]} /> <ProFormDatePicker key="financialReceiptIssuanceTime" width="lg" name="financialReceiptIssuanceTime" label="开收据时间" /> <ProFormDatePicker key="collectMoneyTime" width="lg" name="collectMoneyTime" label="收款时间" /> <ProFormText width="lg" key="invoiceNumber" name="invoiceNumber" label="发票号码" rules={[{ required: true, message: '发票号码必填' }]} /> <ProFormSelect key="payee" placeholder="选择收款单位" name="payee" width="lg" label="收款单位" options={enumToSelect(PAYEE_OPTIONS)} rules={[{ required: true, message: '收款单位必填' }]} /> <ProFormDigit key="money" name="money" width="lg" label="金额" rules={[{ required: true, message: '金额必填' }]} /> <ProFormSelect placeholder="是否完全开票" name="afterInvoicingStatus" width="lg" label="是否完全开票" options={[ { label: '完全开票', value: 'COMPLETE_INVOICING' }, { label: '部分开票', value: 'PARTIAL_INVOICING' }, ]} initialValue={'COMPLETE_INVOICING'} /> <ProFormTextArea width="lg" name="invoicingNotes" label="备注" /> </DrawerForm> ); };