1.优化提现接口/api/finance/withdrawCreate
This commit is contained in:
@@ -39,7 +39,7 @@ export default {
|
||||
ddpay_spec_intro:
|
||||
'Withdrawals use DDPay Payout (mobile: withdrawCreate). Deposits with channel ddpay use depositCreate. Below is a short field summary; see the DDPay doc and the mobile API draft in the repo for details.',
|
||||
ddpay_spec_li_withdraw:
|
||||
'Withdraw (required): withdraw_coin, receive_type=bank, receive_account, receiver_name (as registered with the bank), bank_code (must match a code from “Withdraw banks by currency” on this page), idempotency_key; bank_branch optional (server sends N/A if omitted).',
|
||||
'Withdraw (required): channel_code=ddpay, withdraw_coin, receive_type=bank, receive_account, receiver_name (as registered with the bank), receiver_email, receiver_mobile, bank_code (must match a code from “Withdraw banks by currency” on this page), idempotency_key; bank_branch optional (server sends N/A if omitted).',
|
||||
ddpay_spec_li_bank_table:
|
||||
'English bank name maps to DDPay bank[name] and must match the official full bank names, or payout may be rejected.',
|
||||
ddpay_spec_li_deposit:
|
||||
|
||||
@@ -7,8 +7,12 @@ export default {
|
||||
amount: 'Apply amount',
|
||||
fee: 'Fee',
|
||||
actual_amount: 'Actual amount',
|
||||
pay_channel: 'Pay channel',
|
||||
receive_type: 'Receive type',
|
||||
receive_account: 'Receive account',
|
||||
receiver_name: 'Cardholder name',
|
||||
receiver_email: 'Receiver email',
|
||||
receiver_mobile: 'Receiver mobile',
|
||||
idempotency_key: 'Idempotency key',
|
||||
status: 'Status',
|
||||
'status 0': 'Pending review',
|
||||
|
||||
@@ -39,7 +39,7 @@ export default {
|
||||
ddpay_spec_intro:
|
||||
'当前提现走 DDPay 出金(Payout),移动端调用 withdrawCreate;充值渠道为 ddpay 时调用 depositCreate。下列为字段约定摘要,详细以仓库内 DDPay 文档与《36字花-移动端接口设计草案》为准。',
|
||||
ddpay_spec_li_withdraw:
|
||||
'提现必填:withdraw_coin、receive_type=bank、receive_account(收款账号)、receiver_name(与银行登记一致)、bank_code(须与本页「提现支持银行(按币种)」中 code 一致)、idempotency_key;bank_branch 选填,不传则服务端按 N/A 提交。',
|
||||
'提现必填:channel_code=ddpay(支付渠道)、withdraw_coin、receive_type=bank、receive_account(收款账号)、receiver_name(与银行登记一致)、receiver_email、receiver_mobile、bank_code(须与本页「提现支持银行(按币种)」中 code 一致)、idempotency_key;bank_branch 选填,不传则服务端按 N/A 提交。',
|
||||
ddpay_spec_li_bank_table:
|
||||
'「银行名(英文)」将映射为 DDPay 的 bank[name],请与 DDPay 官方银行全称列表一致,否则出金可能被拒。',
|
||||
ddpay_spec_li_deposit:
|
||||
|
||||
@@ -7,8 +7,12 @@ export default {
|
||||
amount: '申请金额',
|
||||
fee: '手续费',
|
||||
actual_amount: '实际到账',
|
||||
pay_channel: '支付渠道',
|
||||
receive_type: '收款类型',
|
||||
receive_account: '收款账号',
|
||||
receiver_name: '持卡人姓名',
|
||||
receiver_email: '收款人邮箱',
|
||||
receiver_mobile: '收款人手机号',
|
||||
idempotency_key: '幂等键',
|
||||
status: '状态',
|
||||
'status 0': '待审核',
|
||||
|
||||
@@ -79,6 +79,14 @@ const baTable = new baTableClass(
|
||||
{ label: t('order.withdrawOrder.amount'), prop: 'amount', align: 'center', minWidth: 110, operator: 'RANGE', formatter: formatAmount },
|
||||
{ label: t('order.withdrawOrder.fee'), prop: 'fee', align: 'center', minWidth: 110, operator: 'RANGE', formatter: formatAmount },
|
||||
{ label: t('order.withdrawOrder.actual_amount'), prop: 'actual_amount', align: 'center', minWidth: 110, operator: 'RANGE', formatter: formatAmount },
|
||||
{
|
||||
label: t('order.withdrawOrder.pay_channel'),
|
||||
prop: 'pay_channel',
|
||||
align: 'center',
|
||||
minWidth: 110,
|
||||
operator: 'LIKE',
|
||||
operatorPlaceholder: t('Fuzzy query'),
|
||||
},
|
||||
{
|
||||
label: t('order.withdrawOrder.receive_type'),
|
||||
prop: 'receive_type',
|
||||
@@ -96,6 +104,33 @@ const baTable = new baTableClass(
|
||||
operatorPlaceholder: t('Fuzzy query'),
|
||||
showOverflowTooltip: true,
|
||||
},
|
||||
{
|
||||
label: t('order.withdrawOrder.receiver_name'),
|
||||
prop: 'ddpay_receiver_name',
|
||||
align: 'center',
|
||||
minWidth: 120,
|
||||
operator: 'LIKE',
|
||||
operatorPlaceholder: t('Fuzzy query'),
|
||||
showOverflowTooltip: true,
|
||||
},
|
||||
{
|
||||
label: t('order.withdrawOrder.receiver_email'),
|
||||
prop: 'receiver_email',
|
||||
align: 'center',
|
||||
minWidth: 180,
|
||||
operator: 'LIKE',
|
||||
operatorPlaceholder: t('Fuzzy query'),
|
||||
showOverflowTooltip: true,
|
||||
},
|
||||
{
|
||||
label: t('order.withdrawOrder.receiver_mobile'),
|
||||
prop: 'receiver_mobile',
|
||||
align: 'center',
|
||||
minWidth: 140,
|
||||
operator: 'LIKE',
|
||||
operatorPlaceholder: t('Fuzzy query'),
|
||||
showOverflowTooltip: true,
|
||||
},
|
||||
{
|
||||
label: t('order.withdrawOrder.idempotency_key'),
|
||||
prop: 'idempotency_key',
|
||||
|
||||
@@ -39,12 +39,24 @@
|
||||
<el-form-item :label="t('order.withdrawOrder.create_time')">
|
||||
<el-input :model-value="form.create_time_text" readonly />
|
||||
</el-form-item>
|
||||
<el-form-item :label="t('order.withdrawOrder.pay_channel')">
|
||||
<el-input :model-value="form.pay_channel || '-'" readonly />
|
||||
</el-form-item>
|
||||
<el-form-item :label="t('order.withdrawOrder.receive_type')">
|
||||
<el-input :model-value="form.receive_type || '-'" readonly />
|
||||
</el-form-item>
|
||||
<el-form-item :label="t('order.withdrawOrder.receive_account')">
|
||||
<el-input :model-value="form.receive_account || '-'" readonly />
|
||||
</el-form-item>
|
||||
<el-form-item :label="t('order.withdrawOrder.receiver_name')">
|
||||
<el-input :model-value="form.receiver_name || '-'" readonly />
|
||||
</el-form-item>
|
||||
<el-form-item :label="t('order.withdrawOrder.receiver_email')">
|
||||
<el-input :model-value="form.receiver_email || '-'" readonly />
|
||||
</el-form-item>
|
||||
<el-form-item :label="t('order.withdrawOrder.receiver_mobile')">
|
||||
<el-input :model-value="form.receiver_mobile || '-'" readonly />
|
||||
</el-form-item>
|
||||
<el-form-item :label="t('order.withdrawOrder.idempotency_key')">
|
||||
<el-input :model-value="form.idempotency_key || '-'" readonly />
|
||||
</el-form-item>
|
||||
@@ -171,8 +183,12 @@ const form = reactive({
|
||||
review_admin_text: '-',
|
||||
review_time_text: '-',
|
||||
idempotency_key: '',
|
||||
pay_channel: '',
|
||||
receive_type: '',
|
||||
receive_account: '',
|
||||
receiver_name: '',
|
||||
receiver_email: '',
|
||||
receiver_mobile: '',
|
||||
amount: 0,
|
||||
fee: 0,
|
||||
status: 0,
|
||||
@@ -220,8 +236,12 @@ const hydrate = () => {
|
||||
form.status = Number(row['status'] ?? 0)
|
||||
form.remark = String(row['remark'] ?? '')
|
||||
form.idempotency_key = String(row['idempotency_key'] ?? '')
|
||||
form.pay_channel = String(row['pay_channel'] ?? '')
|
||||
form.receive_type = String(row['receive_type'] ?? '')
|
||||
form.receive_account = String(row['receive_account'] ?? '')
|
||||
form.receiver_name = String(row['ddpay_receiver_name'] ?? '')
|
||||
form.receiver_email = String(row['receiver_email'] ?? '')
|
||||
form.receiver_mobile = String(row['receiver_mobile'] ?? '')
|
||||
form.create_time_text = formatTime(row['create_time'])
|
||||
form.review_time_text = formatTime(row['review_time'])
|
||||
form.user_text = resolveRelationText(row, 'user', row['user_id'])
|
||||
|
||||
Reference in New Issue
Block a user