feat(admin): 资金流水业务类型展示中文并修正筛选取值
- statusLabels 新增 walletBizTypeLabel/walletBizTypeOptions,覆盖 wallet_ledger 全部 16 种 biz_type - 资金流水表格业务类型列改为中文标签 - 筛选下拉原取值(order_freeze 等)在钱包流水中不存在,替换为真实业务类型 - 用户端钱包页复用共享映射,移除重复的本地 map
This commit is contained in:
@@ -13,7 +13,12 @@ import { computed, onMounted, reactive, ref } from 'vue'
|
|||||||
import { fetchAdminWalletLedger, type AdminWalletLedger } from '@/features/admin/api/adminWallet'
|
import { fetchAdminWalletLedger, type AdminWalletLedger } from '@/features/admin/api/adminWallet'
|
||||||
import { adminPath } from '@/shared/utils/adminPath'
|
import { adminPath } from '@/shared/utils/adminPath'
|
||||||
import { formatCentWithSymbol } from '@/shared/utils/money'
|
import { formatCentWithSymbol } from '@/shared/utils/money'
|
||||||
import { balanceTypeLabel, ledgerDirectionLabel } from '@/shared/utils/statusLabels'
|
import {
|
||||||
|
balanceTypeLabel,
|
||||||
|
ledgerDirectionLabel,
|
||||||
|
walletBizTypeLabel,
|
||||||
|
walletBizTypeOptions,
|
||||||
|
} from '@/shared/utils/statusLabels'
|
||||||
import { formatDateTime } from '@/shared/utils/time'
|
import { formatDateTime } from '@/shared/utils/time'
|
||||||
import AdminTablePagination from '../components/AdminTablePagination.vue'
|
import AdminTablePagination from '../components/AdminTablePagination.vue'
|
||||||
|
|
||||||
@@ -165,10 +170,12 @@ function directionLabel(direction: string) {
|
|||||||
placeholder="全部业务类型"
|
placeholder="全部业务类型"
|
||||||
class="full-control"
|
class="full-control"
|
||||||
>
|
>
|
||||||
<el-option label="订单冻结" value="order_freeze" />
|
<el-option
|
||||||
<el-option label="订单取消释放" value="order_cancel_release" />
|
v-for="option in walletBizTypeOptions"
|
||||||
<el-option label="订单结算" value="order_settlement" />
|
:key="option.value"
|
||||||
<el-option label="押金退回" value="deposit_refund" />
|
:label="option.label"
|
||||||
|
:value="option.value"
|
||||||
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
@@ -222,7 +229,9 @@ function directionLabel(direction: string) {
|
|||||||
|
|
||||||
<el-table-column label="业务类型" width="140">
|
<el-table-column label="业务类型" width="140">
|
||||||
<template #default="{ row }">
|
<template #default="{ row }">
|
||||||
<el-tag size="small" effect="plain" class="biz-tag">{{ row.biz_type }}</el-tag>
|
<el-tag size="small" effect="plain" class="biz-tag">
|
||||||
|
{{ walletBizTypeLabel(row.biz_type) }}
|
||||||
|
</el-tag>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
|
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ import {
|
|||||||
import {
|
import {
|
||||||
balanceTypeLabel,
|
balanceTypeLabel,
|
||||||
ledgerDirectionLabel,
|
ledgerDirectionLabel,
|
||||||
|
walletBizTypeLabel,
|
||||||
walletStatusLabel,
|
walletStatusLabel,
|
||||||
} from '@/shared/utils/statusLabels'
|
} from '@/shared/utils/statusLabels'
|
||||||
import { formatDateTime } from '@/shared/utils/time'
|
import { formatDateTime } from '@/shared/utils/time'
|
||||||
@@ -94,32 +95,6 @@ function handleWithdraw() {
|
|||||||
router.push('/wallet/withdrawal')
|
router.push('/wallet/withdrawal')
|
||||||
}
|
}
|
||||||
|
|
||||||
function walletBizTypeLabel(type: string) {
|
|
||||||
const map: Record<string, string> = {
|
|
||||||
order_pay: '订单支付',
|
|
||||||
order_lock: '订单冻结',
|
|
||||||
channel_order_lock: '支付冻结',
|
|
||||||
order_cancel: '取消解冻',
|
|
||||||
order_cancel_refund: '取消退款',
|
|
||||||
admin_order_close: '客服关闭解冻',
|
|
||||||
admin_order_close_refund: '客服关闭退款',
|
|
||||||
order_settle: '订单结算',
|
|
||||||
owner_income: '号主收入',
|
|
||||||
deposit_compensation: '押金赔付',
|
|
||||||
rent_refund: '租金退款',
|
|
||||||
deposit_release: '押金释放',
|
|
||||||
arbitration_release_frozen: '仲裁解冻',
|
|
||||||
arbitration_renter_refund: '仲裁退款',
|
|
||||||
arbitration_owner_income: '仲裁收入',
|
|
||||||
cancel_refund: '取消退款',
|
|
||||||
checkout_refund: '结账退款',
|
|
||||||
channel_deposit_refund: '押金退还',
|
|
||||||
withdraw_apply: '申请提现',
|
|
||||||
admin_pickup_settle: '线下提号结算',
|
|
||||||
}
|
|
||||||
return map[type] || type || '-'
|
|
||||||
}
|
|
||||||
|
|
||||||
function directionTone(direction: string) {
|
function directionTone(direction: string) {
|
||||||
const map: Record<string, string> = {
|
const map: Record<string, string> = {
|
||||||
in: 'success',
|
in: 'success',
|
||||||
|
|||||||
@@ -134,6 +134,59 @@ const balanceTypeMap: Record<BalanceType, string> = {
|
|||||||
frozen: '冻结余额',
|
frozen: '冻结余额',
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 钱包流水业务类型(wallet_ledger.biz_type)中文映射。
|
||||||
|
* 取值来源:后端 wallet.AppendEntries 的全部调用点 + 生产库 wallet_ledger 实际枚举。
|
||||||
|
* 新增业务类型时请同步维护,避免页面回退展示英文原值。
|
||||||
|
*/
|
||||||
|
const walletBizTypeMap: Record<string, string> = {
|
||||||
|
// 订单/收益
|
||||||
|
owner_income: '号主收入',
|
||||||
|
deposit_compensation: '押金赔付',
|
||||||
|
// 仲裁
|
||||||
|
arbitration_owner_income: '仲裁赔付',
|
||||||
|
arbitration_release_frozen: '仲裁冻结释放',
|
||||||
|
// 提现
|
||||||
|
withdraw_apply: '申请提现',
|
||||||
|
withdraw_freeze: '提现冻结',
|
||||||
|
withdraw_complete: '提现成功',
|
||||||
|
withdraw_cancel: '提现取消',
|
||||||
|
withdraw_reject: '提现驳回',
|
||||||
|
// 人工调账
|
||||||
|
admin_credit: '管理员加款',
|
||||||
|
admin_debit: '管理员扣款',
|
||||||
|
admin_pickup_settle: '提号结算',
|
||||||
|
admin_pickup_adjustment: '提号结算调整',
|
||||||
|
// 营销
|
||||||
|
invite_rebate: '邀请返利',
|
||||||
|
// 分销
|
||||||
|
distribution_settlement: '分销结算',
|
||||||
|
distribution_reversal: '分销结算回冲',
|
||||||
|
}
|
||||||
|
|
||||||
|
/** 钱包流水业务类型下拉选项,与 walletBizTypeMap 保持同一数据源 */
|
||||||
|
export const walletBizTypeOptions: { label: string; value: string }[] = Object.entries(
|
||||||
|
walletBizTypeMap
|
||||||
|
).map(([value, label]) => ({ value, label }))
|
||||||
|
|
||||||
|
/** 历史遗留的支付/退款业务类型别名,避免老数据回退展示英文 */
|
||||||
|
const walletLegacyBizTypeMap: Record<string, string> = {
|
||||||
|
order_pay: '订单支付',
|
||||||
|
order_lock: '订单冻结',
|
||||||
|
channel_order_lock: '支付冻结',
|
||||||
|
order_cancel: '取消解冻',
|
||||||
|
order_cancel_refund: '取消退款',
|
||||||
|
admin_order_close: '客服关闭解冻',
|
||||||
|
admin_order_close_refund: '客服关闭退款',
|
||||||
|
order_settle: '订单结算',
|
||||||
|
rent_refund: '租金退款',
|
||||||
|
deposit_release: '押金释放',
|
||||||
|
arbitration_renter_refund: '仲裁退款',
|
||||||
|
cancel_refund: '取消退款',
|
||||||
|
checkout_refund: '结账退款',
|
||||||
|
channel_deposit_refund: '押金退还',
|
||||||
|
}
|
||||||
|
|
||||||
const pickupStatusMap: Record<string, string> = {
|
const pickupStatusMap: Record<string, string> = {
|
||||||
picking_up: '提号中',
|
picking_up: '提号中',
|
||||||
completed: '已完成',
|
completed: '已完成',
|
||||||
@@ -216,6 +269,10 @@ export function balanceTypeLabel(type: string) {
|
|||||||
return readLabel(balanceTypeMap, type)
|
return readLabel(balanceTypeMap, type)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function walletBizTypeLabel(type: string) {
|
||||||
|
return readLabel({ ...walletBizTypeMap, ...walletLegacyBizTypeMap }, type)
|
||||||
|
}
|
||||||
|
|
||||||
export function pickupStatusLabel(status: string) {
|
export function pickupStatusLabel(status: string) {
|
||||||
return readLabel(pickupStatusMap, status)
|
return readLabel(pickupStatusMap, status)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user