import React, { useState, useEffect } from 'react'; import { Button, message, Modal, Table, Descriptions } from 'antd'; import { confirmApi, getDetail, Detail, Item, DetailItem } from "../api"; import useInitail from "@/hooks/useInitail"; import _ from "lodash"; interface Props { visible: boolean, onCancel: Function, item: Item, confirm: boolean, fetchList: () => any } const { Column } = Table; export default function Index(props: Props) { const { visible, onCancel, fetchList, item, confirm } = props; const [delay, setDelay] = useState(true); const { data, setParams, loading: aloading} = useInitail(getDetail, {}, item.shippingNo, delay); const [loading, setLoading] = useState(false); useEffect(() => { if (visible) { setParams(item.shippingNo, true); setDelay(false); } }, [visible]); const submit = _.throttle((valid: boolean) => { if (loading) { return; } setLoading(true); confirmApi({valid, shippingNo: item.shippingNo}).then(() => { message.success("操作成功"); setLoading(false); onCancel(); fetchList(); }).catch(e => { message.error(e.message); setLoading(false); }); }, 3000); return ( onCancel()} footer={confirm ? [ , ] : []} > {data.brandName} {data.supplierName} {data.storageName} {data.settleShopName} `${v.partId}`} scroll={{y: 500, x: 1200}} dataSource={data.list || []} pagination={false}> ((_.price || 0) * (_.partCount || 0) || '--')} /> {!confirm && (t || '--')} />} {!confirm && (t || '--')} />} {!confirm && (t || '--')} />} {!confirm && (t || '--')} />} {!confirm && (t ? `${t*10}%` : '--')} />}
); }