From 7f4c2ca831e0fd04a1fb252cf1157a7427315406 Mon Sep 17 00:00:00 2001 From: zyh Date: Wed, 27 Aug 2025 21:20:05 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E7=A7=BB=E5=8A=A8=E7=AB=AF?= =?UTF-8?q?=E7=95=8C=E9=9D=A2=EF=BC=8C=E6=96=B0=E5=A2=9E=E9=80=80=E5=8D=95?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E5=8A=9F=E8=83=BD=EF=BC=8C=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E7=9B=B8=E5=85=B3API=E6=8E=A5=E5=8F=A3=EF=BC=8C=E6=9B=B4?= =?UTF-8?q?=E6=96=B0=E6=9D=83=E9=99=90=E8=AE=BE=E7=BD=AE=EF=BC=8C=E8=B0=83?= =?UTF-8?q?=E6=95=B4=E5=B8=83=E5=B1=80=E4=BB=A5=E6=94=AF=E6=8C=81=E5=93=8D?= =?UTF-8?q?=E5=BA=94=E5=BC=8F=E8=AE=BE=E8=AE=A1=EF=BC=8C=E6=8F=90=E5=8D=87?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E4=BD=93=E9=AA=8C=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/退单功能使用说明.md | 179 +++++ index.html | 2 +- src/App.vue | 458 +++++++++++ src/api/links.js | 10 + src/layouts/AdminLayout.vue | 247 +++++- src/main.js | 7 + src/plugins/mobile.js | 137 ++++ src/router/index.js | 2 + src/utils/mobile.js | 328 ++++++++ src/utils/permission.js | 11 + src/views/Login.vue | 180 ++++- src/views/links/LinkGenerate.vue | 1072 +++++++++++++++++++++---- src/views/refund/RefundManagement.vue | 548 +++++++++++++ src/views/settings/Settings.vue | 277 ++++++- src/views/users/UserList.vue | 335 +++++++- 15 files changed, 3595 insertions(+), 198 deletions(-) create mode 100644 docs/退单功能使用说明.md create mode 100644 src/plugins/mobile.js create mode 100644 src/utils/mobile.js create mode 100644 src/views/refund/RefundManagement.vue diff --git a/docs/退单功能使用说明.md b/docs/退单功能使用说明.md new file mode 100644 index 0000000..e4b7730 --- /dev/null +++ b/docs/退单功能使用说明.md @@ -0,0 +1,179 @@ +# 退单功能使用说明 + +## 🎯 功能概述 + +退单管理功能允许管理员和代理用户对链接进行退单操作,提供了完整的退单流程管理和状态追踪。 + +## 📁 文件结构 + +``` +src/ +├── views/refund/ +│ └── RefundManagement.vue # 退单管理页面 +├── api/ +│ └── links.js # 退单相关API接口 +├── router/ +│ └── index.js # 路由配置 +├── layouts/ +│ └── AdminLayout.vue # 管理后台布局(包含退单菜单) +└── utils/ + └── permission.js # 权限配置 +``` + +## 🔑 权限配置 + +### 新增权限 +- `REFUND_MANAGE` - 退单管理权限 +- `REFUND_EXECUTE` - 退单执行权限 +- `REFUND_VIEW` - 退单查看权限 + +### 角色权限分配 +- **管理员 (ADMIN)**: 拥有所有退单权限 +- **代理 (AGENT)**: 拥有查看和执行退单权限 + +## 🚀 功能特性 + +### 1. 链接查询 +- 支持按链接编号搜索 +- 支持按状态筛选 +- 实时显示链接详细信息 + +### 2. 退单操作 +- 智能判断是否可以执行退单 +- 支持的退单状态:`NEW`、`USING`、`LOGGED_IN` +- 不支持的状态:`REFUNDED`、`EXPIRED`、`COMPLETED` + +### 3. 安全确认 +- 退单前二次确认对话框 +- 显示链接详细信息确认 +- 防止误操作 + +### 4. 状态追踪 +- 实时更新链接状态 +- 记录退单时间 +- 显示操作历史 + +## 🎨 页面功能 + +### 搜索区域 +- **链接编号输入框**: 输入要查询的链接编号 +- **状态筛选器**: 选择特定状态的链接 +- **查询按钮**: 执行搜索操作 +- **重置按钮**: 清空搜索条件 + +### 链接信息卡片 +显示找到的链接详细信息: +- 链接编号 +- 当前状态(带状态标签) +- 创建时间和更新时间 +- 代理ID和关联设备 +- 总点数和当前点数 +- 退单时间(如果已退单) + +### 操作按钮 +- **执行退单**: 当链接状态允许时显示,点击后弹出确认对话框 +- **已退单**: 当链接已经退单时显示的禁用状态 +- **不允许退单**: 当链接状态不允许退单时显示的提示 + +### 使用说明 +提供了详细的帮助信息: +- 可退单的状态说明 +- 不可退单的状态说明 +- 退单流程介绍 +- 注意事项提醒 + +## 🔧 API接口 + +### 新增接口函数 + +#### `refundLink(codeNo)` +执行退单操作 +- **参数**: `codeNo` - 链接编号 +- **返回**: Promise 对象 +- **HTTP方法**: POST +- **路径**: `/api/link/{codeNo}/refund` + +#### `getLinkStatus(codeNo)` +查询链接状态 +- **参数**: `codeNo` - 链接编号 +- **返回**: Promise 对象,包含链接详细信息 +- **HTTP方法**: GET +- **路径**: `/api/link/{codeNo}/status` + +## 🎯 使用步骤 + +### 1. 访问退单管理页面 +- 登录管理后台 +- 在左侧菜单中点击 "退单管理" + +### 2. 查询链接 +1. 在搜索框中输入链接编号 +2. (可选)选择状态筛选 +3. 点击 "查询" 按钮 + +### 3. 执行退单 +1. 确认链接信息正确 +2. 点击 "执行退单" 按钮 +3. 在确认对话框中确认操作 +4. 等待退单完成 + +## ⚠️ 注意事项 + +1. **权限要求**: 只有管理员和代理用户可以访问退单功能 +2. **状态限制**: 只有特定状态的链接才能执行退单 +3. **不可逆操作**: 退单操作一旦执行无法撤销 +4. **代理限制**: 代理用户只能退单自己创建的链接 +5. **外部接口**: 系统会调用外部脚本接口,即使失败也会更新本地状态 + +## 🎨 界面特性 + +### 响应式设计 +- 支持桌面端和移动端访问 +- 自适应不同屏幕尺寸 +- 移动端优化的交互体验 + +### 状态标签 +- 新建: 蓝色标签 +- 使用中: 橙色标签 +- 已登录: 蓝色标签 +- 已完成: 绿色标签 +- 已退单: 灰色标签 +- 已过期: 红色标签 + +### 深色主题支持 +- 自动适配系统深色主题 +- 保持良好的视觉对比度 +- 所有组件都支持深色模式 + +## 🚨 错误处理 + +### 常见错误及解决方案 + +1. **链接不存在** + - 检查链接编号是否正确 + - 确认链接是否已被删除 + +2. **无权限查看** + - 确认用户角色权限 + - 代理用户只能查看自己的链接 + +3. **退单失败** + - 检查链接当前状态 + - 确认网络连接正常 + - 联系技术支持 + +4. **网络错误** + - 检查网络连接 + - 刷新页面重试 + - 联系技术支持 + +## 📞 技术支持 + +如果在使用过程中遇到问题,请联系技术支持团队: +- 提供具体的错误信息 +- 说明操作步骤 +- 提供链接编号(如适用) + +--- + +*最后更新时间: 2024年1月* diff --git a/index.html b/index.html index 89e19b2..4d9dcd5 100644 --- a/index.html +++ b/index.html @@ -2,7 +2,7 @@ - + Vue3 App diff --git a/src/App.vue b/src/App.vue index 82cde9c..c557e48 100644 --- a/src/App.vue +++ b/src/App.vue @@ -5,6 +5,464 @@ + + diff --git a/src/api/links.js b/src/api/links.js index cee8111..bbf0d59 100644 --- a/src/api/links.js +++ b/src/api/links.js @@ -22,4 +22,14 @@ export function batchDeleteLinks(codeNos) { return http.post('/api/link/batch-delete', { codeNos }) } +// 退单接口 +export function refundLink(codeNo) { + return http.post(`/api/link/${codeNo}/refund`) +} + +// 查询链接状态 +export function getLinkStatus(codeNo) { + return http.get(`/api/link/${codeNo}/status`) +} + diff --git a/src/layouts/AdminLayout.vue b/src/layouts/AdminLayout.vue index a800849..0af4d28 100644 --- a/src/layouts/AdminLayout.vue +++ b/src/layouts/AdminLayout.vue @@ -1,18 +1,26 @@ - +