添加字段
This commit is contained in:
parent
4342d57dd1
commit
1cdcbc9abe
|
|
@ -39,8 +39,8 @@ importers:
|
|||
specifier: ^1.11.20
|
||||
version: 1.11.20
|
||||
element-plus:
|
||||
specifier: ^2.14.0
|
||||
version: 2.14.1(vue@3.5.29(typescript@5.9.3))
|
||||
specifier: 2.14.0
|
||||
version: 2.14.0(vue@3.5.29(typescript@5.9.3))
|
||||
face-api.js:
|
||||
specifier: ^0.22.2
|
||||
version: 0.22.2
|
||||
|
|
@ -1567,8 +1567,8 @@ packages:
|
|||
electron-to-chromium@1.5.302:
|
||||
resolution: {integrity: sha512-sM6HAN2LyK82IyPBpznDRqlTQAtuSaO+ShzFiWTvoMJLHyZ+Y39r8VMfHzwbU8MVBzQ4Wdn85+wlZl2TLGIlwg==}
|
||||
|
||||
element-plus@2.14.1:
|
||||
resolution: {integrity: sha512-UFnm1+BckNi+azkKJ7L32q1uXs9ekr99Z9pWTQPeDR05jqEWUwQq51ro4kZMVrANbjknX3Z7ukCZwTi2T6Tr9A==}
|
||||
element-plus@2.14.0:
|
||||
resolution: {integrity: sha512-POgH+TtoreaEKWqYYAVQyE6i8rQMEFqAEublyF29dBA5yASWPLKY6EzfeqBTr2Uv26mPss4vSrMrNPyaK7LX5w==}
|
||||
peerDependencies:
|
||||
vue: ^3.3.7
|
||||
|
||||
|
|
@ -4111,7 +4111,7 @@ snapshots:
|
|||
|
||||
electron-to-chromium@1.5.302: {}
|
||||
|
||||
element-plus@2.14.1(vue@3.5.29(typescript@5.9.3)):
|
||||
element-plus@2.14.0(vue@3.5.29(typescript@5.9.3)):
|
||||
dependencies:
|
||||
'@ctrl/tinycolor': 4.2.0
|
||||
'@element-plus/icons-vue': 2.3.2(vue@3.5.29(typescript@5.9.3))
|
||||
|
|
|
|||
|
|
@ -74,7 +74,7 @@ const handleResize = () => {
|
|||
if (screenWidth.value < COLLAPSE_BREAKPOINT) {
|
||||
sidebarCollapsed.value = true
|
||||
}else {
|
||||
sidebarCollapsed.value = false
|
||||
// sidebarCollapsed.value = false
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -56,7 +56,8 @@
|
|||
<div class="section-title">选择支付方式</div>
|
||||
<div class="method-list">
|
||||
<div v-for="method in paymentMethods" :key="method.code" class="method-item"
|
||||
:class="{ active: selectedMethod === method.code }" @click="handleSelectMethod(method.code)">
|
||||
:class="{ active: selectedMethod === method.code }"
|
||||
@click="handleSelectMethod(method.code)">
|
||||
<div class="method-icon">
|
||||
<img :src="method.icon" :alt="method.name" />
|
||||
</div>
|
||||
|
|
@ -135,7 +136,9 @@
|
|||
<el-input v-model="rechangeForm.address" readonly size="large" class="wallet-address-input">
|
||||
<template #append>
|
||||
<el-button @click="handleCopyAddress" class="copy-btn">
|
||||
<el-icon><DocumentCopy /></el-icon>
|
||||
<el-icon>
|
||||
<DocumentCopy />
|
||||
</el-icon>
|
||||
<span>复制</span>
|
||||
</el-button>
|
||||
</template>
|
||||
|
|
@ -143,13 +146,15 @@
|
|||
</div>
|
||||
<div class="wallet-type">
|
||||
<span class="type-label">钱包类型:</span>
|
||||
<span class="type-value">{{ rechangeForm.channelCode === 'TRC' ? 'USDT-TRC20' : 'USDT-ERC20' }}</span>
|
||||
<span class="type-value">{{ rechangeForm.channelCode === 'TRC' ? 'USDT-TRC20' : 'USDT-ERC20'
|
||||
}}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 充值金额 -->
|
||||
<el-form-item label="充值金额" size="large" prop="depositAmount">
|
||||
<el-input v-model="rechangeForm.depositAmount" placeholder="请输入充值金额生成二维码和钱包地址" size="large" @input="handleAmountInput">
|
||||
<el-input v-model="rechangeForm.depositAmount" placeholder="请输入充值金额生成二维码和钱包地址" size="large"
|
||||
@input="handleAmountInput">
|
||||
<template #suffix>
|
||||
<span class="currency-suffix">USDT</span>
|
||||
</template>
|
||||
|
|
@ -219,7 +224,8 @@
|
|||
|
||||
<!-- 充值金额 -->
|
||||
<el-form-item label="充值金额" prop="depositAmount">
|
||||
<el-input v-model="rechangeForm.depositAmount" placeholder="请输入充值金额" size="large" @input="handleAmountInput">
|
||||
<el-input v-model="rechangeForm.depositAmount" placeholder="请输入充值金额" size="large"
|
||||
@input="handleAmountInput">
|
||||
<template #suffix>
|
||||
<span class="currency-suffix">{{ rechangeForm.currencySymbol }}</span>
|
||||
</template>
|
||||
|
|
@ -228,8 +234,8 @@
|
|||
|
||||
<!-- 上传凭证 -->
|
||||
<el-form-item label="上传凭证" prop="voucherUrl">
|
||||
<el-upload class="voucher-uploader" action="" :show-file-list="false"
|
||||
:http-request="handleUpload" :before-upload="beforeAvatarUpload" :loading="uploadLoading">
|
||||
<el-upload class="voucher-uploader" action="" :show-file-list="false" :http-request="handleUpload"
|
||||
:before-upload="beforeAvatarUpload" :loading="uploadLoading">
|
||||
<img v-if="voucherUrl" :src="voucherUrl" class="voucher-image" />
|
||||
<div v-else class="upload-placeholder">
|
||||
<el-icon class="upload-icon">
|
||||
|
|
@ -458,7 +464,13 @@ const fetchChannelList = async () => {
|
|||
try {
|
||||
const res = await getRechargeChannelList() as ChannelRow[]
|
||||
stopLoading()
|
||||
channelList.value = res || []
|
||||
channelList.value = (res || []).map((item) => {
|
||||
return {
|
||||
...item,
|
||||
symbol: item.currency.symbol
|
||||
}
|
||||
})
|
||||
console.log('channelList.value:', channelList.value);
|
||||
} catch (error) {
|
||||
stopLoading()
|
||||
console.error('获取充值渠道列表失败', error)
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
export const rechangeTableColumns = [
|
||||
{ prop: 'name', label: '渠道名称', align: 'center' as const },
|
||||
{
|
||||
prop: 'currency.symbol',
|
||||
prop: 'symbol',
|
||||
label: '支持货币',
|
||||
align: 'center' as const
|
||||
},
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
<template>
|
||||
<div class="transfer table_form-container">
|
||||
<div class="title">转账</div>
|
||||
<el-card class="transfer-card">
|
||||
<div class="transfer-card">
|
||||
<div class="transfer-item">
|
||||
1.佣金钱包转出时,需要管理员审核通过后才能转账成功。其余内部转账操作无需通过管理员审核,如发现对应账号没有收到转账资金,请于客服人员联系。
|
||||
</div>
|
||||
|
|
@ -14,7 +14,7 @@
|
|||
<div class="transfer-item">
|
||||
4.第三方转账只支持钱包之间转账,且会转到对方主钱包(佣金钱包不允许转入),需要管理员审核通过后才能转账成功
|
||||
</div>
|
||||
</el-card>
|
||||
</div>
|
||||
<div class="transfer-type">
|
||||
<div class="type-title">转账类型</div>
|
||||
<div class="tab">
|
||||
|
|
@ -452,19 +452,16 @@ const handleSubmit = async () => {
|
|||
|
||||
<style scoped lang="scss">
|
||||
.transfer {
|
||||
height: 100%;
|
||||
overflow-y: scroll;
|
||||
.title {
|
||||
margin-bottom: 10px;
|
||||
font-size: 38px;
|
||||
font-weight: 900;
|
||||
}
|
||||
|
||||
.transfer-card {
|
||||
background: rgb(160, 207, 255, 0.5);
|
||||
margin-bottom: 10px;
|
||||
|
||||
:deep(.el-card__body) {
|
||||
padding: 10px 20px;
|
||||
}
|
||||
|
||||
.transfer-item {
|
||||
line-height: 35px;
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ export const internalFormItem = [
|
|||
// 转出账号
|
||||
{ prop: 'transferOutAccount', label: '转出账号', type: 'select' as const, placeholder: '请选择转出账号', width: '150px', labelPosition: 'top' as const },
|
||||
// 转入账号
|
||||
{ prop: 'transferInAccount', label: '转入账号', type: 'select' as const, placeholder: '请选择转入账号', width: '150px', labelPosition: 'top' as const },
|
||||
{ prop: 'transferInAccount', label: '转入账号', type: 'input' as const, placeholder: '请输入转入账号', width: '150px', labelPosition: 'top' as const },
|
||||
// 转账金额
|
||||
{ prop: 'transferAmount', label: '转账金额', type: 'input' as const, placeholder: '请输入转账金额', width: '150px', labelPosition: 'top' as const },
|
||||
// 备注
|
||||
|
|
|
|||
|
|
@ -15,11 +15,11 @@
|
|||
>
|
||||
<!-- 操作列:驳回/通过按钮 -->
|
||||
<template #action="{ row }">
|
||||
<el-button type="success" text size="small" @click="handleApprove(row)" v-auth="'user_reviewRechargeOrder'">
|
||||
<el-button type="success" text size="small" @click="handleApprove(row)" v-auth="'withdraw_withdrawReviewOrder'">
|
||||
通过
|
||||
</el-button>
|
||||
<span style="color: #dcdfe6; margin: 0 2px;" v-auth="'user_reviewRechargeOrder'">|</span>
|
||||
<el-button type="danger" text size="small" @click="handleReject(row)" v-auth="'user_reviewRechargeOrder'">
|
||||
<span style="color: #dcdfe6; margin: 0 2px;" v-auth="'withdraw_withdrawReviewOrder'">|</span>
|
||||
<el-button type="danger" text size="small" @click="handleReject(row)" v-auth="'withdraw_withdrawReviewOrder'">
|
||||
驳回
|
||||
</el-button>
|
||||
</template>
|
||||
|
|
|
|||
|
|
@ -5,48 +5,52 @@ export const search = [
|
|||
label: '账号名称',
|
||||
type: 'input' as const,
|
||||
placeholder: '请输入账号名称',
|
||||
width: '200px',
|
||||
width: '220px',
|
||||
},
|
||||
// 开始时间
|
||||
{
|
||||
prop: 'startTime',
|
||||
label: '注册开始时间',
|
||||
placeholder: '请选择注册开始时间',
|
||||
type: 'date' as const,
|
||||
dateType: 'date' as const, // 时间范围选择器
|
||||
valueFormat: 'YYYY-MM-DD',
|
||||
width: '240px',
|
||||
width: '280px',
|
||||
},
|
||||
// 结束时间
|
||||
{
|
||||
prop: 'endTime',
|
||||
label: '注册结束时间',
|
||||
placeholder: '请选择注册结束时间',
|
||||
type: 'date' as const,
|
||||
dateType: 'date' as const, // 时间范围选择器
|
||||
valueFormat: 'YYYY-MM-DD',
|
||||
width: '240px',
|
||||
width: '280px',
|
||||
},
|
||||
]
|
||||
|
||||
export const tableColumns = [
|
||||
// 账号名称
|
||||
{ label: '账号名称', prop: 'accountName' },
|
||||
{ label: '账号名称', prop: 'accountName' , width: '160' },
|
||||
{ label: '邮箱', prop: 'email', align: 'center' as const, width: '160px' },
|
||||
{ label: '手机号', prop: 'mobile', align: 'center' as const, width: '180' },
|
||||
// 账号id
|
||||
{ prop: 'userId', label: '账号id' },
|
||||
{ prop: 'userId', label: '账号id', width: '220' },
|
||||
// 状态
|
||||
{ prop: 'status', label: '状态' },
|
||||
// 账号角色
|
||||
{ prop: 'role', label: '账号角色' },
|
||||
{ prop: 'role', label: '账号角色' , width: '100' },
|
||||
// 账号数量
|
||||
{ prop: 'accountQty', label: '账号数量' },
|
||||
{ prop: 'accountQty', label: '账号数量' , width: '120' },
|
||||
{ prop: 'amount', label: '资金', align: 'center' as const, isNumber: true },
|
||||
// 点差分配比例
|
||||
{ prop: 'marginRatio', label: '点差分配比例', slotName: 'marginRatio' },
|
||||
{ prop: 'marginRatio', label: '点差分配比例', slotName: 'marginRatio' , width: '140' },
|
||||
// 手续费分成比例
|
||||
{ prop: 'commissionRatio', label: '手续费分成比例', slotName: 'commissionRatio' },
|
||||
{ prop: 'commissionRatio', label: '手续费分成比例', slotName: 'commissionRatio' , width: '140' },
|
||||
// 注册时间
|
||||
{ prop: 'createTime', label: '注册时间', sortable: true },
|
||||
{ prop: 'createTime', label: '注册时间', sortable: false, width: '240' },
|
||||
// 操作
|
||||
{ label: '操作', slotName: 'action', width: '150px'}
|
||||
{ label: '操作', slotName: 'action', width: '150px', fixed: 'right' as const}
|
||||
]
|
||||
|
||||
// 点差表格配置
|
||||
|
|
|
|||
|
|
@ -51,12 +51,14 @@ export const clientSearch = [
|
|||
//定义客户table列配置
|
||||
export const clientTableColumns = [
|
||||
{ prop: 'id', label: 'ID', align: 'center' as const },
|
||||
{ prop: 'username', label: '用户名', align: 'center' as const },
|
||||
{ prop: 'createdTime', label: '注册时间', align: 'center' as const },
|
||||
{ prop: 'agentUsername', label: '所属代理', align: 'center' as const },
|
||||
{ label: '邮箱', prop: 'email', align: 'center' as const, width: '160px' },
|
||||
{ label: '手机号', prop: 'mobile', align: 'center' as const, width: '180' },
|
||||
{ prop: 'username', label: '用户名', align: 'center' as const , width: '220' },
|
||||
{ prop: 'createdTime', label: '注册时间', align: 'center' as const, width: '220' },
|
||||
{ prop: 'agentUsername', label: '所属代理', align: 'center' as const , width: '160' },
|
||||
{ prop: 'amount', label: '资金', align: 'center' as const, isNumber: true },
|
||||
{ label: '状态', slotName: 'status', align: 'center' as const },
|
||||
{ label: '操作', slotName: 'action', align: 'center' as const },
|
||||
{ label: '操作', slotName: 'action', align: 'center' as const , width: '220', fixed: 'right' as const },
|
||||
]
|
||||
|
||||
//定义添加客户form配置
|
||||
|
|
|
|||
Loading…
Reference in New Issue