From 080ead200bf8aad5f1a756b39248cbfce0ab772d Mon Sep 17 00:00:00 2001 From: zhenhui <1276357500@qq.com> Date: Wed, 15 Apr 2026 18:05:56 +0800 Subject: [PATCH] =?UTF-8?q?[=E4=BB=A3=E7=90=86=E4=B8=8E=E7=BB=93=E7=AE=97]?= =?UTF-8?q?=E4=BB=A3=E7=90=86=E4=BD=A3=E9=87=91=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/agent/CommissionRecord.php | 34 ++++++++ app/common/model/AgentCommissionRecord.php | 38 +++++++++ .../lang/backend/en/agent/commissionRecord.ts | 19 +++++ .../backend/zh-cn/agent/commissionRecord.ts | 19 +++++ .../backend/agent/commissionRecord/index.vue | 80 +++++++++++++++++++ .../agent/commissionRecord/popupForm.vue | 49 ++++++++++++ 6 files changed, 239 insertions(+) create mode 100644 app/admin/controller/agent/CommissionRecord.php create mode 100644 app/common/model/AgentCommissionRecord.php create mode 100644 web/src/lang/backend/en/agent/commissionRecord.ts create mode 100644 web/src/lang/backend/zh-cn/agent/commissionRecord.ts create mode 100644 web/src/views/backend/agent/commissionRecord/index.vue create mode 100644 web/src/views/backend/agent/commissionRecord/popupForm.vue diff --git a/app/admin/controller/agent/CommissionRecord.php b/app/admin/controller/agent/CommissionRecord.php new file mode 100644 index 0000000..3944a73 --- /dev/null +++ b/app/admin/controller/agent/CommissionRecord.php @@ -0,0 +1,34 @@ + 'desc']; + + protected string|array $orderGuarantee = ['id' => 'desc']; + + protected array $withJoinTable = ['settlementPeriod', 'channel', 'admin']; + + protected bool $modelValidate = false; + + protected function initController(WebmanRequest $request): ?Response + { + $this->model = new \app\common\model\AgentCommissionRecord(); + return null; + } +} + diff --git a/app/common/model/AgentCommissionRecord.php b/app/common/model/AgentCommissionRecord.php new file mode 100644 index 0000000..cf450cf --- /dev/null +++ b/app/common/model/AgentCommissionRecord.php @@ -0,0 +1,38 @@ + 'integer', + 'update_time' => 'integer', + 'settled_at' => 'integer', + 'commission_rate' => 'string', + 'calc_base_amount' => 'string', + 'commission_amount' => 'string', + 'status' => 'integer', + ]; + + public function channel(): \think\model\relation\BelongsTo + { + return $this->belongsTo(Channel::class, 'channel_id', 'id'); + } + + public function admin(): \think\model\relation\BelongsTo + { + return $this->belongsTo(\app\admin\model\Admin::class, 'admin_id', 'id'); + } + + public function settlementPeriod(): \think\model\relation\BelongsTo + { + return $this->belongsTo(AgentSettlementPeriod::class, 'settlement_period_id', 'id'); + } +} + diff --git a/web/src/lang/backend/en/agent/commissionRecord.ts b/web/src/lang/backend/en/agent/commissionRecord.ts new file mode 100644 index 0000000..896abb4 --- /dev/null +++ b/web/src/lang/backend/en/agent/commissionRecord.ts @@ -0,0 +1,19 @@ +export default { + 'quick Search Fields': 'ID/Settlement period ID/Remark', + id: 'ID', + settlement_period_id: 'Settlement period ID', + channel_id: 'Channel ID', + admin_id: 'Agent admin ID', + commission_rate: 'Commission rate', + calc_base_amount: 'Calculation base amount', + commission_amount: 'Commission amount', + status: 'Status', + 'status 0': 'Pending', + 'status 1': 'Paid', + 'status 2': 'Reverted', + settled_at: 'Settled at', + remark: 'Remark', + create_time: 'Created', + update_time: 'Updated', +} + diff --git a/web/src/lang/backend/zh-cn/agent/commissionRecord.ts b/web/src/lang/backend/zh-cn/agent/commissionRecord.ts new file mode 100644 index 0000000..860a964 --- /dev/null +++ b/web/src/lang/backend/zh-cn/agent/commissionRecord.ts @@ -0,0 +1,19 @@ +export default { + 'quick Search Fields': 'ID/结算周期ID/备注', + id: 'ID', + settlement_period_id: '结算周期ID', + channel_id: '渠道ID', + admin_id: '代理管理员ID', + commission_rate: '佣金比例', + calc_base_amount: '结算基数', + commission_amount: '佣金金额', + status: '状态', + 'status 0': '待发放', + 'status 1': '已发放', + 'status 2': '已回退', + settled_at: '发放时间', + remark: '备注', + create_time: '创建时间', + update_time: '更新时间', +} + diff --git a/web/src/views/backend/agent/commissionRecord/index.vue b/web/src/views/backend/agent/commissionRecord/index.vue new file mode 100644 index 0000000..5f60776 --- /dev/null +++ b/web/src/views/backend/agent/commissionRecord/index.vue @@ -0,0 +1,80 @@ + + + + + + diff --git a/web/src/views/backend/agent/commissionRecord/popupForm.vue b/web/src/views/backend/agent/commissionRecord/popupForm.vue new file mode 100644 index 0000000..c13ef0c --- /dev/null +++ b/web/src/views/backend/agent/commissionRecord/popupForm.vue @@ -0,0 +1,49 @@ + + + + + +