From d722860e71440f76762cbcbebbb7931cda2ce1a5 Mon Sep 17 00:00:00 2001 From: 18278715334 <18278715334@163.com> Date: Sun, 4 Jan 2026 16:11:11 +0800 Subject: [PATCH] =?UTF-8?q?add=20=E4=BF=AE=E6=94=B9=E4=BD=99=E9=A2=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/web-antd/src/api/agent/agent.ts | 26 ++ .../src/views/agent/agent-list/list.vue | 43 +++ .../agent-list/modules/balance-modal.vue | 161 +++++++++ .../modules/commission-history-modal.vue | 316 ++++++++++++++++++ .../src/views/agent/agent-withdrawal/list.vue | 13 +- 5 files changed, 556 insertions(+), 3 deletions(-) create mode 100644 apps/web-antd/src/views/agent/agent-list/modules/balance-modal.vue create mode 100644 apps/web-antd/src/views/agent/agent-list/modules/commission-history-modal.vue diff --git a/apps/web-antd/src/api/agent/agent.ts b/apps/web-antd/src/api/agent/agent.ts index 368baad..e090767 100644 --- a/apps/web-antd/src/api/agent/agent.ts +++ b/apps/web-antd/src/api/agent/agent.ts @@ -341,6 +341,19 @@ export interface GetAgentLinkProductStatisticsParams {} frozen_balance: number; // 冻结余额 total_earnings: number; // 总收益 } + + // 修改代理钱包余额请求 + export interface UpdateAgentWalletBalanceReq { + agent_id: number; // 代理ID + amount: number; // 修改金额(正数增加,负数减少) + } + + // 修改代理钱包余额响应 + export interface UpdateAgentWalletBalanceResp { + success: boolean; // 是否成功 + balance: number; // 修改后的余额 + } + } /** @@ -588,6 +601,18 @@ async function getAgentWallet(agentId: number) { ); } +/** + * 修改代理钱包余额 + */ +async function updateAgentWalletBalance(params: AgentApi.UpdateAgentWalletBalanceReq) { + return requestClient.post( + '/agent/wallet/update-balance', + params, + ); +} + + + export { batchUnfreezeAgentCommission, getAgentCommissionDeductionList, @@ -609,4 +634,5 @@ export { updateAgentCommissionStatus, updateAgentMembershipConfig, updateAgentProductionConfig, + updateAgentWalletBalance, }; diff --git a/apps/web-antd/src/views/agent/agent-list/list.vue b/apps/web-antd/src/views/agent/agent-list/list.vue index 9bb9dc6..e852754 100644 --- a/apps/web-antd/src/views/agent/agent-list/list.vue +++ b/apps/web-antd/src/views/agent/agent-list/list.vue @@ -19,11 +19,13 @@ import { getAgentList } from '#/api/agent'; import { useColumns, useGridFormSchema } from './data'; import CommissionDeductionModal from './modules/commission-deduction-modal.vue'; import CommissionModal from './modules/commission-modal.vue'; +import CommissionHistoryModal from './modules/commission-history-modal.vue'; import Form from './modules/form.vue'; import LinkModal from './modules/link-modal.vue'; import PlatformDeductionModal from './modules/platform-deduction-modal.vue'; import RewardModal from './modules/reward-modal.vue'; import WithdrawalModal from './modules/withdrawal-modal.vue'; +import BalanceModal from './modules/balance-modal.vue'; const route = useRoute(); const router = useRouter(); @@ -72,6 +74,18 @@ const [PlatformDeductionModalComponent, platformDeductionModalApi] = destroyOnClose: true, }); +// 修改余额弹窗 +const [BalanceModalComponent, balanceModalApi] = useVbenModal({ + connectedComponent: BalanceModal, + destroyOnClose: true, +}); + +// 历史佣金记录弹窗 +const [CommissionHistoryModalComponent, commissionHistoryModalApi] = useVbenModal({ + connectedComponent: CommissionHistoryModal, + destroyOnClose: true, +}); + // 表格配置 const [Grid, gridApi] = useVbenVxeGrid({ formOptions: { @@ -144,10 +158,19 @@ const [Grid, gridApi] = useVbenVxeGrid({ // 更多操作菜单项 const moreMenuItems = [ + { + key: 'update-balance', + label: '修改余额', + }, + { + key: 'commission-history', + label: '历史佣金记录', + }, { key: 'links', label: '推广链接', }, + // { // key: 'commission', // label: '佣金记录', @@ -194,6 +217,10 @@ function onActionClick( onViewCommission(e.row); break; } + case 'commission-history': { + onViewCommissionHistory(e.row); + break; + } case 'commission-deduction': { onViewCommissionDeduction(e.row); break; @@ -214,6 +241,10 @@ function onActionClick( onViewReward(e.row); break; } + case 'update-balance': { + onUpdateBalance(e.row); + break; + } case 'view-sub-agent': { router.replace({ query: { @@ -240,6 +271,11 @@ function onViewLinks(row: AgentApi.AgentListItem) { linkModalApi.setData({ agentId: row.id }).open(); } +// 修改余额 +function onUpdateBalance(row: AgentApi.AgentListItem) { + balanceModalApi.setData({ agentId: row.id }).open(); +} + // 查看佣金记录 function onViewCommission(row: AgentApi.AgentListItem) { commissionModalApi.setData({ agentId: row.id }).open(); @@ -265,6 +301,11 @@ function onViewPlatformDeduction(row: AgentApi.AgentListItem) { platformDeductionModalApi.setData({ agentId: row.id }).open(); } +// 查看历史佣金记录 +function onViewCommissionHistory(row: AgentApi.AgentListItem) { + commissionHistoryModalApi.setData({ agentId: row.id }).open(); +} + // 刷新处理 function onRefresh() { gridApi.query(); @@ -276,10 +317,12 @@ function onRefresh() { + + diff --git a/apps/web-antd/src/views/agent/agent-list/modules/balance-modal.vue b/apps/web-antd/src/views/agent/agent-list/modules/balance-modal.vue new file mode 100644 index 0000000..f8451b7 --- /dev/null +++ b/apps/web-antd/src/views/agent/agent-list/modules/balance-modal.vue @@ -0,0 +1,161 @@ + + + + + diff --git a/apps/web-antd/src/views/agent/agent-list/modules/commission-history-modal.vue b/apps/web-antd/src/views/agent/agent-list/modules/commission-history-modal.vue new file mode 100644 index 0000000..3bcaa49 --- /dev/null +++ b/apps/web-antd/src/views/agent/agent-list/modules/commission-history-modal.vue @@ -0,0 +1,316 @@ + + + + + diff --git a/apps/web-antd/src/views/agent/agent-withdrawal/list.vue b/apps/web-antd/src/views/agent/agent-withdrawal/list.vue index 408dd51..59c6cb8 100644 --- a/apps/web-antd/src/views/agent/agent-withdrawal/list.vue +++ b/apps/web-antd/src/views/agent/agent-withdrawal/list.vue @@ -1,5 +1,5 @@