import { MyBetaModalFormProps, MyColumns, MyProTableProps, renderTextHelper, } from '@/common'; import { MyModal } from '@/components/MyModal'; import { Apis } from '@/gen/Apis'; import { HouseBillsTypeEnum, HouseOrdersAuditStatusEnum, HouseOrdersPaymentMethodEnum, } from '@/gen/Enums'; import { ProCard, ProDescriptions, ProTable } from '@ant-design/pro-components'; import { Space, Spin } from 'antd'; import { useState } from 'react'; export default function OrderShow(props: MyBetaModalFormProps) { const [orderData, setOrderData] = useState({}); const [loading, setLoading] = useState(false); const getOrderId = () => { if (!props.item) return undefined; if (typeof props.item === 'number' || typeof props.item === 'string') { return Number(props.item); } return Number(props.item.id || props.item.order_id); }; const fetchOrderData = () => { const id = getOrderId(); if (!id) return; setLoading(true); Apis.HouseOrder.HouseOrders.Show({ id }) .then((res) => { setOrderData(res?.data || {}); }) .finally(() => { setLoading(false); }); }; return ( fetchOrderData()} node={ {orderData?.house_order_items?.[0]?.asset_house ?.full_name || '-'} {orderData?.receipt_account?.company_name || '-'} ; {orderData?.receipt_account?.company_bank || '-'} ; {orderData?.receipt_account?.company_account || '-'} {orderData?.accept_serial_number || '-'} {Object.values(HouseOrdersPaymentMethodEnum).find( (item) => item.value === orderData?.payment_method, )?.text || '-'} {orderData?.paid_time || '-'} {orderData?.actual_paid_amount || '-'} {orderData?.creator || '-'}-{orderData?.creator_phone || '-'} {orderData?.created_at || '-'} {orderData?.reason || '-'} record?.id || index} size="small" columns={[ { title: '关联账单', render: (_, record) => { return `${record.house_bill.year}-${String( record.house_bill.month, ).padStart(2, '0')}`; }, }, MyColumns.EnumTag({ title: '类型', dataIndex: ['house_bill', 'type'], valueEnum: HouseBillsTypeEnum, }), { title: '未收金额', dataIndex: 'amount', search: false, }, { title: '本次收取金额', dataIndex: 'paid_amount', search: false, }, ]} /> } /> ); }