You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

124 lines
3.1 KiB

import React, { FC, useRef } from "react";
import clientApi from "@/package/SimpleTrade/api/client";
import MyTable from "@/components/MyTable";
import { Button, Input, notification, Popconfirm } from "antd";
import { CopyOutlined } from "@ant-design/icons";
import { copy, getTime, splitAddress } from "@/utils";
import { Withdraw_Check } from "@/package/SimpleTrade/types/enum";
const WithdrawRecord: FC = () => {
const tableRefs = useRef(null)
const columns = [
{
title: '账号ID',
dataIndex: 'a_mt4_login'
},
{
title: '交易ID',
dataIndex: 'tx_hash',
render: (tx_hash) => (
<div style={{ display: 'flex', alignItems: 'center' }}>
<div>{splitAddress(tx_hash, 5)}</div>
<div style={{ marginLeft: 5, cursor: 'pointer' }} onClick={() => copy(tx_hash)}>
<CopyOutlined />
</div>
</div>
)
},
{
title: '链ID',
dataIndex: 'chain_id'
},
{
title: '提币地址',
dataIndex: 'to_address',
render: (to_address) => (
<div style={{ display: 'flex', alignItems: 'center' }}>
<div>{splitAddress(to_address, 5)}</div>
<div style={{ marginLeft: 5, cursor: 'pointer' }} onClick={() => copy(to_address)}>
<CopyOutlined />
</div>
</div>
)
},
{
title: '数量',
dataIndex: 'amount'
},
{
title: '币种',
dataIndex: 'symbol'
},
{
title: '提现状态',
dataIndex: 'status'
},
{
title: '处理时间',
dataIndex: 'handle_time',
render: (time) => (
<div>{getTime(time * 1000)}</div>
)
},
{
title: '操作',
dataIndex: 'operations',
align: 'center',
key: Date.now(),
render: (_, item) => {
return item.check_status === 1 ? (<div>
<Popconfirm
title="确认拒绝吗?"
onConfirm={() => handleOrder(item, Withdraw_Check.WithdrawCheckReject)}
>
<Button size="small" type="primary" danger style={{ marginRight: 20 }}></Button>
</Popconfirm>
<Popconfirm
title="确认同意吗?"
onConfirm={() => handleOrder(item, Withdraw_Check.WithdrawCheckAgree)}
>
<Button size="small" type="primary"></Button>
</Popconfirm>
</div>) : (<></>)
}
}
]
// 搜索栏配置项
const searchConfigList = [
{
key: 'name',
slot: <Input placeholder="用户名" allowClear />,
initialValue: ''
}
]
const handleOrder = async (item, type: Withdraw_Check) => {
const res: any = await clientApi.withdraw_check({
id: item.id,
status: type
})
if (res.code === 0) {
notification.success({
message: type === Withdraw_Check.WithdrawCheckAgree ? '已同意' : '已拒绝'
})
tableRefs.current?.update()
}
}
return (
<div>
<MyTable
ref={tableRefs}
columns={columns}
apiFun={clientApi.withdraw_list}
searchConfigList={searchConfigList}
rowKey="id"
/>
</div>
)
};
export default WithdrawRecord;