From 9096e22899a789c5a36649ad427a017b80121807 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=87=8C=E5=B0=9B?= <1254210241@qq.com> Date: Tue, 16 Jun 2026 10:42:24 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=86=E8=B4=A6=E9=A1=B5=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/splitAccount.js | 50 +++ src/views/splitAccount/SplitAccountConfig.vue | 356 ++++++++++++++++++ .../splitAccount/SplitAccountEmployee.vue | 343 +++++++++++++++++ 3 files changed, 749 insertions(+) create mode 100644 src/api/splitAccount.js create mode 100644 src/views/splitAccount/SplitAccountConfig.vue create mode 100644 src/views/splitAccount/SplitAccountEmployee.vue diff --git a/src/api/splitAccount.js b/src/api/splitAccount.js new file mode 100644 index 00000000..1e02ab98 --- /dev/null +++ b/src/api/splitAccount.js @@ -0,0 +1,50 @@ +import request from '@/utils/request' + +/** + * 分账配置 - API + */ + +/** + * 查询分账配置列表 + * @param {Object} params - { page, page_size } + * @returns {Promise} + */ +export const fetchSplitAccountList = (params = {}) => { + return request.get('/split-account-config/list', { params }) +} + +/** + * 查询分账配置详情 + * @param {number|string} id - 配置ID + * @returns {Promise} + */ +export const fetchSplitAccountDetail = (id) => { + return request.get('/split-account-config/detail', { params: { id } }) +} + +/** + * 新增分账配置 + * @param {Object} data - { rule_name, rule_value, status, description } + * @returns {Promise} + */ +export const createSplitAccount = (data) => { + return request.post('/split-account-config/create', data) +} + +/** + * 修改分账配置 + * @param {Object} data - { id, rule_name, rule_value, status, description } + * @returns {Promise} + */ +export const updateSplitAccount = (data) => { + return request.put('/split-account-config/update', data) +} + +/** + * 删除分账配置 + * @param {number|string} id - 配置ID + * @returns {Promise} + */ +export const deleteSplitAccount = (id) => { + return request.delete('/split-account-config/delete', { params: { id } }) +} diff --git a/src/views/splitAccount/SplitAccountConfig.vue b/src/views/splitAccount/SplitAccountConfig.vue new file mode 100644 index 00000000..51c5a8c6 --- /dev/null +++ b/src/views/splitAccount/SplitAccountConfig.vue @@ -0,0 +1,356 @@ + + + + + 分账配置 + 新增配置 + + + + + + 查询 + + + + + + + + + + + {{ item.product_type }}:{{ (item.ratio * 100) }}% + {{ item.add_amount }}元 + + + - + + + + + + {{ row.status === 1 ? '启用' : '禁用' }} + + + + + + + + 编辑 + 删除 + handleStatusChange(row, val)" + style="margin-left:8px;" + /> + + + + + + + + + + + + + + + + + + + {{ item.product_type }} + + + + + + + + + + + + + + + + + + 启用 + 禁用 + + + + + 取消 + 确定 + + + + + + + + diff --git a/src/views/splitAccount/SplitAccountEmployee.vue b/src/views/splitAccount/SplitAccountEmployee.vue new file mode 100644 index 00000000..a24290c7 --- /dev/null +++ b/src/views/splitAccount/SplitAccountEmployee.vue @@ -0,0 +1,343 @@ + + + + 分账设置 + + + + + + + + + + + + {{ row.expire_time ? formatTime(row.expire_time) : '-' }} + + + + + + {{ row.configData.rule_name }} + + + {{ rule.product_type }} + {{ (rule.ratio * 100) }}% + +{{ rule.add_amount }} + + + + 未配置 + + + + + {{ formatTime(row.created_at) }} + + + + + 设置 + + + + + + + + + 分账配置 — {{ dialogEmployee.name }} + + + + + + 暂无可用配置 + 请先前往「分账配置」页面添加规则 + + + + 请选择要关联的分账规则: + + + + + + + + {{ item.rule_name }} + + + {{ rule.product_type }} + {{ (rule.ratio * 100) }}% + +{{ rule.add_amount }}¥ + + + {{ item.description }} + + + + + + + + + + + + + +
暂无可用配置