201 lines
5.2 KiB
Markdown
201 lines
5.2 KiB
Markdown
# 口译服务管理后台
|
||
|
||
一个基于 Next.js 和 TypeScript 构建的现代化口译服务管理后台系统。
|
||
|
||
## 功能特性
|
||
|
||
### 🏢 企业服务管理
|
||
- **企业合同管理**:管理企业合同信息和服务费率配置
|
||
- **企业员工管理**:管理企业员工信息和通话记录
|
||
- **企业账单管理**:企业结算记录和账单管理
|
||
- **个性化费率配置**:为不同企业设置专属服务费率
|
||
|
||
### 📋 订单管理
|
||
- **多种服务类型**:
|
||
- AI语音翻译
|
||
- AI视频翻译
|
||
- 手语翻译
|
||
- 人工口译
|
||
- 文档翻译
|
||
- **订单状态跟踪**:待处理、处理中、已完成、已取消、失败
|
||
- **优先级管理**:紧急、高、普通、低
|
||
- **详细信息展示**:包括译员信息、时间安排、费用等
|
||
|
||
### 📄 文档管理
|
||
- **文档上传管理**:支持多种文档格式
|
||
- **翻译进度跟踪**:实时显示翻译状态和进度
|
||
- **文档下载功能**:支持原文档和翻译结果下载
|
||
|
||
### 🧾 发票管理
|
||
- **发票生成**:支持个人和企业发票
|
||
- **发票下载**:PDF格式发票下载
|
||
- **发票打印**:直接打印功能
|
||
- **发票状态管理**:草稿、已开具、已付款、已取消
|
||
|
||
### 👥 用户管理
|
||
- **用户信息管理**:个人用户和企业用户
|
||
- **用户状态跟踪**:活跃状态、登录记录
|
||
- **用户类型区分**:个人用户、企业用户
|
||
|
||
### 🎯 译员管理
|
||
- **译员信息管理**:译员资料、专业领域
|
||
- **译员状态监控**:在线、离线、忙碌状态
|
||
- **语言能力管理**:支持的语言对
|
||
|
||
### 📞 通话管理
|
||
- **实时通话监控**:当前活跃通话
|
||
- **通话记录管理**:历史通话记录
|
||
- **通话质量统计**:通话时长、费用统计
|
||
|
||
### ⚙️ 系统设置
|
||
- **服务费率配置**:为每种服务设置独立费率
|
||
- **系统参数配置**:通话设置、通知设置
|
||
- **安全设置**:双因素认证、会话超时
|
||
- **API配置**:第三方服务集成
|
||
|
||
## 技术栈
|
||
|
||
- **前端框架**:Next.js 14
|
||
- **类型系统**:TypeScript
|
||
- **样式框架**:Tailwind CSS
|
||
- **图标库**:Heroicons
|
||
- **状态管理**:React Hooks
|
||
- **数据库**:Supabase(可选)
|
||
- **部署**:Vercel(推荐)
|
||
|
||
## 安装和运行
|
||
|
||
### 环境要求
|
||
- Node.js 18.0 或更高版本
|
||
- npm 或 yarn
|
||
|
||
### 安装依赖
|
||
```bash
|
||
npm install
|
||
# 或
|
||
yarn install
|
||
```
|
||
|
||
### 环境配置
|
||
复制 `.env.example` 到 `.env.local` 并配置必要的环境变量:
|
||
|
||
```bash
|
||
cp .env.example .env.local
|
||
```
|
||
|
||
### 开发模式运行
|
||
```bash
|
||
npm run dev
|
||
# 或
|
||
yarn dev
|
||
```
|
||
|
||
访问 [http://localhost:3000](http://localhost:3000) 查看应用。
|
||
|
||
### 构建生产版本
|
||
```bash
|
||
npm run build
|
||
# 或
|
||
yarn build
|
||
```
|
||
|
||
### 启动生产服务器
|
||
```bash
|
||
npm start
|
||
# 或
|
||
yarn start
|
||
```
|
||
|
||
## 项目结构
|
||
|
||
```
|
||
├── components/ # 可复用组件
|
||
├── lib/ # 工具库和配置
|
||
│ ├── demo-data.ts # 演示数据
|
||
│ ├── supabase.ts # Supabase 配置
|
||
│ └── utils.ts # 工具函数
|
||
├── pages/ # 页面组件
|
||
│ ├── api/ # API 路由
|
||
│ ├── auth/ # 认证页面
|
||
│ └── dashboard/ # 管理后台页面
|
||
├── public/ # 静态资源
|
||
├── styles/ # 样式文件
|
||
├── types/ # TypeScript 类型定义
|
||
└── utils/ # 工具函数
|
||
```
|
||
|
||
## 核心功能说明
|
||
|
||
### 费率优先级机制
|
||
系统采用三级费率优先级:
|
||
1. **企业合同费率**:优先级最高,适用于企业员工
|
||
2. **系统通用费率**:适用于个人用户和无合同企业
|
||
3. **默认费率**:系统兜底费率
|
||
|
||
### 演示模式
|
||
项目支持演示模式,无需配置数据库即可体验完整功能:
|
||
- 自动检测 Supabase 配置
|
||
- 使用内置演示数据
|
||
- 支持所有功能的模拟操作
|
||
|
||
### 响应式设计
|
||
- 完全响应式界面设计
|
||
- 支持移动端和桌面端
|
||
- 优化的用户体验
|
||
|
||
## 部署
|
||
|
||
### Vercel 部署(推荐)
|
||
1. 将项目推送到 GitHub
|
||
2. 在 Vercel 中导入项目
|
||
3. 配置环境变量
|
||
4. 部署完成
|
||
|
||
### 其他平台部署
|
||
项目支持部署到任何支持 Next.js 的平台,如:
|
||
- Netlify
|
||
- Railway
|
||
- Heroku
|
||
- 自托管服务器
|
||
|
||
## 环境变量
|
||
|
||
```bash
|
||
# Supabase 配置(可选)
|
||
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
|
||
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
|
||
|
||
# 其他第三方服务配置
|
||
TWILIO_ACCOUNT_SID=your_twilio_sid
|
||
TWILIO_AUTH_TOKEN=your_twilio_token
|
||
OPENAI_API_KEY=your_openai_key
|
||
```
|
||
|
||
## 贡献指南
|
||
|
||
1. Fork 项目
|
||
2. 创建功能分支 (`git checkout -b feature/AmazingFeature`)
|
||
3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)
|
||
4. 推送到分支 (`git push origin feature/AmazingFeature`)
|
||
5. 创建 Pull Request
|
||
|
||
## 许可证
|
||
|
||
本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情。
|
||
|
||
## 联系方式
|
||
|
||
- 项目地址:[http://git.wanzhongtech.com/mars/Twilioapp-admin](http://git.wanzhongtech.com/mars/Twilioapp-admin)
|
||
- 问题反馈:请在 GitLab Issues 中提交
|
||
|
||
## 更新日志
|
||
|
||
### v1.0.0 (2024-01-30)
|
||
- ✅ 完成企业服务管理功能
|
||
- ✅ 完成订单管理功能
|
||
- ✅ 完成发票管理功能
|
||
- ✅ 完成文档管理功能
|
||
- ✅ 完成用户和译员管理功能
|
||
- ✅ 完成系统设置功能
|
||
- ✅ 完成演示模式
|
||
- ✅ 完成响应式设计 |