将数据库修改到本地配置文件,修复工单没创建成功依旧会写入数据库的问题
This commit is contained in:
201
README.md
201
README.md
@@ -1,7 +1,200 @@
|
||||
# Tauri + Vue 3
|
||||
# TMS Tools - 工单管理工具
|
||||
|
||||
This template should help get you started developing with Tauri + Vue 3 in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.
|
||||
[](https://tauri.app)
|
||||
[](https://vuejs.org)
|
||||
[](https://element-plus.org)
|
||||
|
||||
## Recommended IDE Setup
|
||||
TMS Tools 是一款基于 Tauri + Vue 3 开发的桌面应用程序,用于管理影院技术支持工单。支持工单的创建、反馈、关闭以及批量操作功能。
|
||||
|
||||
- [VS Code](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) + [Tauri](https://marketplace.visualstudio.com/items?itemName=tauri-apps.tauri-vscode) + [rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer)
|
||||
## 功能特性
|
||||
|
||||
### 核心功能
|
||||
- **用户登录** - 对接 c.baobaot.com 平台认证
|
||||
- **工单创建** - 根据影院编码自动创建技术支持工单
|
||||
- **工单反馈** - 提交工单处理结果和解决方案
|
||||
- **工单关闭** - 完成工单并关闭
|
||||
- **批量操作** - 支持批量反馈和关闭今日/本月工单
|
||||
|
||||
### 数据管理
|
||||
- 每个用户拥有独立的数据表
|
||||
- 支持查看今日/本月工单列表
|
||||
- 工单状态筛选(已反馈/未反馈、已关闭/未关闭)
|
||||
- 实时同步远程平台数据
|
||||
|
||||
### 界面特性
|
||||
- 响应式布局设计
|
||||
- 左侧操作面板,右侧工单列表
|
||||
- 实时日志输出
|
||||
- 工单全选/多选操作
|
||||
- Element Plus 组件库提供美观的 UI
|
||||
|
||||
## 技术栈
|
||||
|
||||
### 前端
|
||||
- **Vue 3** - 渐进式 JavaScript 框架
|
||||
- **Vue Router 4** - 路由管理
|
||||
- **Element Plus** - UI 组件库
|
||||
- **Vite** - 构建工具
|
||||
|
||||
### 后端
|
||||
- **Tauri 2** - Rust 驱动的桌面应用框架
|
||||
- **Rust** - 系统级编程语言
|
||||
- **Tokio** - 异步运行时
|
||||
- **tokio-postgres** - PostgreSQL 异步驱动
|
||||
- **reqwest** - HTTP 客户端
|
||||
- **scraper** - HTML 解析
|
||||
|
||||
### 外部服务
|
||||
- **c.baobaot.com** - TMS 工单平台 API
|
||||
- **PostgreSQL** - 数据持久化存储
|
||||
|
||||
## 项目结构
|
||||
|
||||
```
|
||||
tms_tools/
|
||||
├── src/ # 前端源码
|
||||
│ ├── components/ # Vue 组件
|
||||
│ │ └── Login.vue # 登录组件
|
||||
│ ├── service/ # 业务页面
|
||||
│ │ └── workorder.vue # 工单管理主页面
|
||||
│ ├── router/ # 路由配置
|
||||
│ │ └── index.js # 路由定义
|
||||
│ ├── App.vue # 根组件
|
||||
│ └── main.js # 入口文件
|
||||
├── src-tauri/ # Tauri/Rust 后端
|
||||
│ ├── src/
|
||||
│ │ ├── lib.rs # 主库文件(Tauri 命令)
|
||||
│ │ └── main.rs # 程序入口
|
||||
│ ├── tms_service/ # TMS 服务模块
|
||||
│ │ └── src/lib.rs # 工单操作 API 封装
|
||||
│ ├── html_scraper/ # HTML 解析工具
|
||||
│ │ └── src/lib.rs # 网页内容解析
|
||||
│ ├── Cargo.toml # Rust 依赖配置
|
||||
│ └── tauri.conf.json # Tauri 配置
|
||||
├── package.json # Node.js 依赖
|
||||
├── index.html # HTML 入口
|
||||
└── README.md # 项目说明
|
||||
```
|
||||
|
||||
## 安装与运行
|
||||
|
||||
### 环境要求
|
||||
- [Node.js](https://nodejs.org/) (v18 或更高版本)
|
||||
- [Rust](https://www.rust-lang.org/tools/install) (最新稳定版)
|
||||
- [pnpm](https://pnpm.io/) (推荐) 或 npm
|
||||
|
||||
### 开发模式
|
||||
|
||||
```bash
|
||||
# 安装前端依赖
|
||||
pnpm install
|
||||
|
||||
# 运行开发服务器
|
||||
pnpm tauri dev
|
||||
```
|
||||
|
||||
### 构建生产版本
|
||||
|
||||
```bash
|
||||
# 构建桌面应用
|
||||
pnpm tauri build
|
||||
```
|
||||
|
||||
构建完成后,安装包将位于 `src-tauri/target/release/bundle/` 目录。
|
||||
|
||||
## 使用说明
|
||||
|
||||
### 1. 登录
|
||||
- 启动应用后进入登录页面
|
||||
- 输入用户名和密码
|
||||
- 首次登录会自动创建用户数据表
|
||||
|
||||
### 2. 工单操作
|
||||
|
||||
#### 创建工单
|
||||
1. 输入影院编码 (n2nip)
|
||||
2. 填写问题描述
|
||||
3. 选择联系方式(微信/手机)并填写号码
|
||||
4. 点击"创建工单"按钮
|
||||
5. 系统自动创建工单并返回工单 ID
|
||||
|
||||
#### 反馈工单
|
||||
1. 填写工单 ID 和处理结果
|
||||
2. 点击"反馈工单"按钮
|
||||
3. 或选择"反馈今日工单"批量处理
|
||||
|
||||
#### 关闭工单
|
||||
1. 填写工单 ID
|
||||
2. 点击"关闭工单"按钮
|
||||
3. 或选择"关闭今日工单"批量处理
|
||||
|
||||
### 3. 工单列表
|
||||
- 切换"今日工单"或"本月工单"查看不同范围
|
||||
- 使用筛选器过滤已反馈/未反馈、已关闭/未关闭的工单
|
||||
- 点击"全选"批量选择工单
|
||||
- 选中后可批量反馈或关闭
|
||||
|
||||
## API 接口
|
||||
|
||||
### Tauri 命令
|
||||
|
||||
| 命令 | 描述 |
|
||||
|------|------|
|
||||
| `login` | 用户登录验证 |
|
||||
| `get_cookie` | 获取当前登录 Cookie |
|
||||
| `get_dashboard_username` | 获取仪表板用户名 |
|
||||
| `get_workorders` | 获取工单列表 |
|
||||
| `create_ticket_command` | 创建工单 |
|
||||
| `insert_workorder` | 插入工单到数据库 |
|
||||
| `feedback_workorder` | 反馈单个工单 |
|
||||
| `feedback_today_workorders` | 批量反馈今日工单 |
|
||||
| `feedback_selected_workorders` | 反馈选中的工单 |
|
||||
| `close_workorder` | 关闭单个工单 |
|
||||
| `close_today_workorders` | 批量关闭今日工单 |
|
||||
| `close_selected_workorders` | 关闭选中的工单 |
|
||||
|
||||
## 配置说明
|
||||
|
||||
### 数据库配置
|
||||
数据库连接配置位于 `src-tauri/src/lib.rs`:
|
||||
|
||||
```rust
|
||||
let db_url = "postgres://tmstools:521707@honulla.com:5432/tmstools";
|
||||
```
|
||||
|
||||
### 外部 API
|
||||
- 登录接口: `https://c.baobaot.com/user/ajax_login`
|
||||
- 工单平台: `https://c.baobaot.com/cinema/workorder`
|
||||
|
||||
## 开发计划
|
||||
|
||||
- [ ] 支持离线模式
|
||||
- [ ] 添加工单导出功能(Excel/PDF)
|
||||
- [ ] 实现工单搜索功能
|
||||
- [ ] 添加数据统计报表
|
||||
- [ ] 支持多语言切换
|
||||
|
||||
## 许可证
|
||||
|
||||
本项目采用 MIT 许可证 - 详见 [LICENSE](LICENSE) 文件
|
||||
|
||||
## 贡献指南
|
||||
|
||||
欢迎提交 Issue 和 Pull Request!
|
||||
|
||||
1. Fork 本仓库
|
||||
2. 创建特性分支 (`git checkout -b feature/AmazingFeature`)
|
||||
3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)
|
||||
4. 推送到分支 (`git push origin feature/AmazingFeature`)
|
||||
5. 创建 Pull Request
|
||||
|
||||
## 联系方式
|
||||
|
||||
如有问题或建议,欢迎通过以下方式联系:
|
||||
|
||||
- 提交 [GitHub Issue](https://github.com/yourusername/tms_tools/issues)
|
||||
- 发送邮件至: your.email@example.com
|
||||
|
||||
---
|
||||
|
||||
**注意**: 本工具仅供学习和内部使用,请遵守相关平台的使用条款。
|
||||
Reference in New Issue
Block a user