From 54431cbeb1585af2097960e7fbcea906648376aa Mon Sep 17 00:00:00 2001 From: ShengLong <452591453@qq.com> Date: Thu, 23 Apr 2026 15:43:22 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=87=AA=E5=AA=92=E4=BD=93?= =?UTF-8?q?=E6=B8=A0=E9=81=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 + admin/src/api/finance.ts | 5 + admin/src/views/finance/account_cost/edit.vue | 36 +++ .../src/views/finance/account_cost/index.vue | 64 ++++- admin/src/views/stats/conversion/index.vue | 40 ++- admin/tsconfig.tsbuildinfo | 2 +- .../finance/AccountCostController.php | 11 + .../lists/finance/AccountCostLists.php | 13 +- .../logic/finance/AccountCostLogic.php | 30 +- .../adminapi/logic/stats/ConversionLogic.php | 152 +++++++--- .../validate/finance/AccountCostValidate.php | 17 ++ server/app/command/QywxScanMediaChannel.php | 37 +++ server/app/common/model/QywxMediaChannel.php | 18 ++ .../service/qywx/MediaChannelService.php | 270 ++++++++++++++++++ server/config/console.php | 2 + ...hannel_source_and_account_cost_channel.sql | 27 ++ .../1.9.20260421/add_account_cost_menu.sql | 3 +- .../add_account_cost_delete_menu.sql | 25 ++ ...hannel_source_and_account_cost_channel.sql | 30 ++ 19 files changed, 737 insertions(+), 47 deletions(-) create mode 100644 server/app/command/QywxScanMediaChannel.php create mode 100644 server/app/common/model/QywxMediaChannel.php create mode 100644 server/app/common/service/qywx/MediaChannelService.php create mode 100644 server/database/migrations/2026_04_23_create_media_channel_source_and_account_cost_channel.sql create mode 100644 server/sql/1.9.20260423/add_account_cost_delete_menu.sql create mode 100644 server/sql/1.9.20260423/create_media_channel_source_and_account_cost_channel.sql diff --git a/.gitignore b/.gitignore index 7de2eac0..eb4024b9 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,5 @@ bin-release/ # information for Eclipse / Flash Builder. /.idea +/.codex-tasks +/.trellis diff --git a/admin/src/api/finance.ts b/admin/src/api/finance.ts index e8f79630..b90fd2b0 100644 --- a/admin/src/api/finance.ts +++ b/admin/src/api/finance.ts @@ -59,3 +59,8 @@ export function accountCostEdit(params?: any) { export function accountCostDetail(params?: any) { return request.get({ url: '/finance.account_cost/detail', params }) } + +// 账户消耗删除 +export function accountCostDelete(params?: any) { + return request.post({ url: '/finance.account_cost/delete', params }) +} diff --git a/admin/src/views/finance/account_cost/edit.vue b/admin/src/views/finance/account_cost/edit.vue index 93e37527..63820c76 100644 --- a/admin/src/views/finance/account_cost/edit.vue +++ b/admin/src/views/finance/account_cost/edit.vue @@ -18,6 +18,22 @@ :disabled="mode === 'edit'" /> + + + + + () + const emit = defineEmits(['success', 'close']) const formRef = shallowRef() const popupRef = shallowRef>() @@ -58,6 +84,7 @@ const popupTitle = computed(() => (mode.value === 'edit' ? '编辑账户消耗' const formData = reactive({ id: '', cost_date: '', + media_channel_code: '', amount: 0, remark: '', }) @@ -70,6 +97,13 @@ const formRules = { trigger: ['change'], }, ], + media_channel_code: [ + { + required: true, + message: '请选择自媒体渠道', + trigger: ['change'], + }, + ], amount: [ { required: true, @@ -82,6 +116,7 @@ const formRules = { const resetForm = () => { formData.id = '' formData.cost_date = '' + formData.media_channel_code = props.defaultMediaChannelCode || '' formData.amount = 0 formData.remark = '' } @@ -106,6 +141,7 @@ const open = (type: 'add' | 'edit' = 'add') => { const setFormData = (data: Record) => { formData.id = data.id ?? '' formData.cost_date = data.cost_date ?? '' + formData.media_channel_code = data.media_channel_code ?? '' formData.amount = Number(data.amount ?? 0) formData.remark = data.remark ?? '' } diff --git a/admin/src/views/finance/account_cost/index.vue b/admin/src/views/finance/account_cost/index.vue index d6b49189..888dc4bf 100644 --- a/admin/src/views/finance/account_cost/index.vue +++ b/admin/src/views/finance/account_cost/index.vue @@ -21,6 +21,22 @@ v-model:endTime="queryParams.end_date" /> + + + + + + @@ -55,7 +72,7 @@ - + @@ -74,22 +99,36 @@ - +