# 退单功能使用说明 ## 🎯 功能概述 退单管理功能允许管理员和代理用户对链接进行退单操作,提供了完整的退单流程管理和状态追踪。 ## 📁 文件结构 ``` 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月*