diff --git a/frontend/src/features/admin/views/AdminWalletLedgerView.vue b/frontend/src/features/admin/views/AdminWalletLedgerView.vue
index 7a2314c..43de068 100644
--- a/frontend/src/features/admin/views/AdminWalletLedgerView.vue
+++ b/frontend/src/features/admin/views/AdminWalletLedgerView.vue
@@ -13,7 +13,12 @@ import { computed, onMounted, reactive, ref } from 'vue'
import { fetchAdminWalletLedger, type AdminWalletLedger } from '@/features/admin/api/adminWallet'
import { adminPath } from '@/shared/utils/adminPath'
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 AdminTablePagination from '../components/AdminTablePagination.vue'
@@ -165,10 +170,12 @@ function directionLabel(direction: string) {
placeholder="全部业务类型"
class="full-control"
>
-
-
-
-
+
@@ -222,7 +229,9 @@ function directionLabel(direction: string) {
- {{ row.biz_type }}
+
+ {{ walletBizTypeLabel(row.biz_type) }}
+
diff --git a/frontend/src/features/wallet/views/WalletView.vue b/frontend/src/features/wallet/views/WalletView.vue
index 4c91772..350982c 100644
--- a/frontend/src/features/wallet/views/WalletView.vue
+++ b/frontend/src/features/wallet/views/WalletView.vue
@@ -19,6 +19,7 @@ import {
import {
balanceTypeLabel,
ledgerDirectionLabel,
+ walletBizTypeLabel,
walletStatusLabel,
} from '@/shared/utils/statusLabels'
import { formatDateTime } from '@/shared/utils/time'
@@ -94,32 +95,6 @@ function handleWithdraw() {
router.push('/wallet/withdrawal')
}
-function walletBizTypeLabel(type: string) {
- const map: Record = {
- 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) {
const map: Record = {
in: 'success',
diff --git a/frontend/src/shared/utils/statusLabels.ts b/frontend/src/shared/utils/statusLabels.ts
index 7c75736..30bd77c 100644
--- a/frontend/src/shared/utils/statusLabels.ts
+++ b/frontend/src/shared/utils/statusLabels.ts
@@ -134,6 +134,59 @@ const balanceTypeMap: Record = {
frozen: '冻结余额',
}
+/**
+ * 钱包流水业务类型(wallet_ledger.biz_type)中文映射。
+ * 取值来源:后端 wallet.AppendEntries 的全部调用点 + 生产库 wallet_ledger 实际枚举。
+ * 新增业务类型时请同步维护,避免页面回退展示英文原值。
+ */
+const walletBizTypeMap: Record = {
+ // 订单/收益
+ 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 = {
+ 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 = {
picking_up: '提号中',
completed: '已完成',
@@ -216,6 +269,10 @@ export function balanceTypeLabel(type: string) {
return readLabel(balanceTypeMap, type)
}
+export function walletBizTypeLabel(type: string) {
+ return readLabel({ ...walletBizTypeMap, ...walletLegacyBizTypeMap }, type)
+}
+
export function pickupStatusLabel(status: string) {
return readLabel(pickupStatusMap, status)
}