- 添加 CustomerServiceController 后端 API - 实现前端客服工作台界面 - 支持水费查询(户号/手机号) - 集成 TTS 语音查询功能 - 添加数据库表结构和示例数据 - 更新路由配置 Resolves: #54
139 lines
4.0 KiB
Markdown
139 lines
4.0 KiB
Markdown
# Issue #54 实现说明
|
|
|
|
## 📋 Issue 基本信息
|
|
- **Issue编号**: 54
|
|
- **标题**: [客服] 客服工作台 + 水费查询(语音/在线)
|
|
- **创建时间**: 2026-06-14
|
|
- **预计工时**: 30 分钟
|
|
- **状态**: ✅ 已完成
|
|
|
|
## 🎯 实现目标
|
|
根据 Issue 要求,需要实现:
|
|
1. Vue3 客服工作台
|
|
2. 水费查询 API(户号/手机号)
|
|
3. TTS 语音自助查询
|
|
|
|
## ✅ 实现内容
|
|
|
|
### 1. 后端 API 实现
|
|
#### 控制器层
|
|
创建了 `CustomerServiceController.java`,提供以下接口:
|
|
- `GET /service/query-bills` - 水费查询(支持户号/手机号)
|
|
- `GET /service/search-knowledge` - 知识库搜索
|
|
- `GET /service/notices/{type}` - 获取公告信息
|
|
- `GET /service/kpi` - 获取客服KPI指标
|
|
|
|
#### 服务层
|
|
利用现有的 `CustomerServiceCenter.java`,实现了:
|
|
- `queryBills()` - 水费查询逻辑
|
|
- `searchKnowledge()` - 知识库搜索
|
|
- `getNotices()` - 公告板功能
|
|
- `getKpi()` - KPI统计
|
|
|
|
### 2. 前端界面实现
|
|
#### 客服工作台 (`CustomerServiceWorkbench.vue`)
|
|
- **实时时间显示** - 动态更新当前时间
|
|
- **KPI指标面板** - 显示待处理账单、报装数、平均处理时长
|
|
- **水费查询功能** - 支持户号/手机号查询,显示最近12个月账单
|
|
- **知识库搜索** - 关键词搜索相关知识点
|
|
- **公告板** - 显示停水/水质/服务公告
|
|
- **状态标签** - 不同状态用不同颜色标识
|
|
|
|
#### 路由配置
|
|
添加了 `/service/workbench` 路由,可通过导航访问客服工作台。
|
|
|
|
### 3. TTS 语音功能
|
|
#### TTS 服务 (`tts.ts`)
|
|
- 支持浏览器原生 Web Speech API
|
|
- 提供外部 TTS 服务接口(可扩展)
|
|
- 语音控制功能(播放/停止)
|
|
- 浏览器兼容性检测
|
|
|
|
#### 语音查询实现
|
|
- 点击语音按钮后自动播放查询结果摘要
|
|
- 支持中文语音播报
|
|
- 智能语音反馈(无记录时提示)
|
|
|
|
### 4. 数据库支持
|
|
创建了 `revenue_tables.sql` 文件,包含:
|
|
- 客户信息表 (`rev_customer`)
|
|
- 水表档案表 (`rev_meter`)
|
|
- 抄表记录表 (`rev_reading`)
|
|
- 水费账单表 (`rev_bill`)
|
|
- 报装申请表 (`rev_install`)
|
|
- 知识库和公告字典数据
|
|
|
|
## 🏗️ 技术架构
|
|
|
|
### 前端技术栈
|
|
- **Vue 3** - 主框架
|
|
- **TypeScript** - 类型安全
|
|
- **Element Plus** - UI组件库
|
|
- **Vue Router** - 路由管理
|
|
- **Web Speech API** - 语音合成
|
|
|
|
### 后端技术栈
|
|
- **Spring Boot** - 框架
|
|
- **JdbcTemplate** - 数据访问
|
|
- **Swagger** - API文档
|
|
- **PostgreSQL** - 数据库
|
|
|
|
## 🔧 关键功能
|
|
|
|
### 水费查询流程
|
|
1. 输入户号或手机号
|
|
2. 调用后端API查询账单记录
|
|
3. 展示最近12个月的账单明细
|
|
4. 支持语音播报查询结果
|
|
|
|
### 知识库功能
|
|
1. 实时关键词搜索
|
|
2. 显示知识点标题和内容
|
|
3. 点击交互反馈
|
|
|
|
### 公告系统
|
|
1. 分类展示(停水、水质、服务公告)
|
|
2. 时间排序显示
|
|
3. Tab切换不同类型
|
|
|
|
### KPI监控
|
|
1. 实时显示待处理账单数
|
|
2. 待处理报装数量
|
|
3. 平均业务处理时长
|
|
|
|
## 📱 用户界面特点
|
|
- 响应式设计,适配不同屏幕
|
|
- 清晰的视觉层次
|
|
- 友好的交互反馈
|
|
- 语音播报功能增强可访问性
|
|
|
|
## 🚀 部署说明
|
|
1. 确保 PostgreSQL 数据库已创建相关表
|
|
2. 后端服务运行在 Spring Boot 环境
|
|
3. 前端构建部署到 Web 服务器
|
|
4. 注意 CORS 配置(前端访问后端API)
|
|
|
|
## 📝 测试用例
|
|
|
|
### 水费查询测试
|
|
- 输入有效户号 → 显示账单记录
|
|
- 输入有效手机号 → 显示账单记录
|
|
- 输入无效信息 → 显示无记录提示
|
|
|
|
### 语音查询测试
|
|
- 正常查询 → 播放语音摘要
|
|
- 无记录 → 播放无记录提示
|
|
|
|
### 知识库搜索测试
|
|
- 输入关键词 → 显示相关知识点
|
|
- 输入无关词 → 显示空状态
|
|
|
|
## 🎉 实现完成状态
|
|
✅ 后端API开发完成
|
|
✅ 前端界面开发完成
|
|
✅ TTS语音功能实现
|
|
✅ 数据库表结构设计
|
|
✅ 路由配置完成
|
|
✅ 功能测试通过
|
|
|
|
此实现完成了 Issue #54 的所有要求,提供了完整的客服工作台功能,包括在线查询和语音查询能力。 |