工单系统监测工具。 如果有新工单,会弹提示。
Go to file
tsl aa01a63fcd feat(monitor): 新增暂停1小时监测功能 2026-07-06 10:43:48 +08:00
.claude refactor(monitor): ♻️ 优化代码 2026-04-01 10:05:53 +08:00
.husky refactor: ♻️ 重构文件结构 2026-03-31 17:08:30 +08:00
.serena refactor: ♻️ 重构文件结构 2026-03-31 17:08:30 +08:00
.tauri feat(): 添加更新功能 2026-03-25 10:06:25 +08:00
.vscode feat: 完成,登录获取cookie有bug 2026-02-27 09:07:50 +08:00
data refactor: ♻️ 优化存储 2026-04-17 08:58:20 +08:00
public feat(): 添加待审核 2026-03-23 09:10:32 +08:00
scripts feat(): 添加更新功能 2026-03-25 10:06:25 +08:00
src feat(monitor): 新增暂停1小时监测功能 2026-07-06 10:43:48 +08:00
src-tauri refactor: ♻️ 重构文件结构 2026-03-31 17:08:30 +08:00
.czrc refactor: ♻️ 重构文件结构 2026-03-31 17:08:30 +08:00
.editorconfig refactor: ♻️ 重构文件结构 2026-03-31 17:08:30 +08:00
.env refactor: ♻️ 优化请求接口 2026-04-16 09:50:30 +08:00
.env.development refactor: ♻️ 重构文件结构 2026-03-31 17:08:30 +08:00
.env.production refactor: ♻️ 重构文件结构 2026-03-31 17:08:30 +08:00
.gitignore feat: 完成,登录获取cookie有bug 2026-02-27 09:07:50 +08:00
.lintstagedrc.json refactor: ♻️ 使用router跳转页面 2026-04-17 10:11:17 +08:00
README.md refactor: ♻️ 重构文件结构 2026-03-31 17:08:30 +08:00
commitlint.config.cjs refactor: ♻️ 重构文件结构 2026-03-31 17:08:30 +08:00
eslint.config.js refactor: ♻️ 重构文件结构 2026-03-31 17:08:30 +08:00
index.html init 2025-10-07 15:16:37 +08:00
package.json refactor: ♻️ 使用router跳转页面 2026-04-17 10:11:17 +08:00
pnpm-lock.yaml refactor: ♻️ 使用router跳转页面 2026-04-17 10:11:17 +08:00
prettier.config.js refactor: ♻️ 重构文件结构 2026-03-31 17:08:30 +08:00
run.bat feat: 完成,登录获取cookie有bug 2026-02-27 09:07:50 +08:00
tsconfig.json refactor: ♻️ 重构文件结构 2026-03-31 17:08:30 +08:00
tsconfig.node.json init 2025-10-07 15:16:37 +08:00
vite.config.ts refactor: ♻️ 重构文件结构 2026-03-31 17:08:30 +08:00

README.md

工单系统监测

基于 Tauri 2.x + Vue 3 + TypeScript 的工单监测桌面应用,用于监测 CRM 系统的待处理工单并发送系统通知。

环境要求

  • Node.js >= 18
  • Ruststable
  • Visual Studio Build ToolsWindows含 C++ 工具链)
  • pnpm

推荐 IDE VS Code + Vue - Official + Tauri + rust-analyzer

开发

# 安装依赖
pnpm install

# 启动开发模式(前端 + Tauri
pnpm run tauri-dev

# 仅启动前端开发服务器
pnpm run dev

构建

签名密钥已包含在项目中(.tauri/ 目录),构建脚本会自动加载,直接运行:

pnpm run tauri-build

构建产物位于 src-tauri/target/release/bundle/nsis/

版本号管理

使用自定义脚本统一更新 package.jsontauri.conf.jsonCargo.toml 三个文件的版本号:

pnpm run version:patch      # 补丁版本  x.y.Z → x.y.Z+1
pnpm run version:minor      # 次版本    x.Y.z → x.Y+1.0
pnpm run version:major      # 主版本    X.y.z → X+1.0.0
pnpm run version -- 1.2.3   # 指定版本号

发布

构建完成后,运行发布脚本将安装包和更新元数据上传到远程服务器:

pnpm run publish -- --notes "更新说明"

脚本会自动:

  1. 从构建产物中读取 .nsis.zip.nsis.zip.sig
  2. 生成 update.json(供应用内自动更新使用)
  3. 通过 SCP 上传到服务器 192.168.2.127:/var/www/html/work-order-monitor/

更新地址:http://web.nps.yunvip123.cn/work-order-monitor/update.json

完整发版流程

# 1. 更新版本号
pnpm run version:minor

# 2. 构建
pnpm run tauri-build

# 3. 发布到服务器
pnpm run publish -- --notes "v0.3.0 新功能说明"

或一键构建 + 发布:

pnpm run release

签名密钥

项目已内置 updater 签名密钥(.tauri/signing-key.tauri/signing-key.pub),无密码保护,任何人克隆项目后即可直接构建。

如需重新生成密钥:

pnpm tauri signer generate -w .tauri/signing-key -p "" --ci -f

生成后需将 .tauri/signing-key.pub 的内容更新到 src-tauri/tauri.conf.jsonplugins.updater.pubkey 字段。

项目结构

src/                          # 前端Vue 3
├── App.vue                   # 主界面
├── stores/monitor.ts         # Pinia 状态管理(核心业务逻辑)
├── components/
│   ├── MonitorControl.vue    # 监测面板(工单数据卡片)
│   ├── LoginForm.vue         # 登录表单
│   ├── SettingsPanel.vue     # 配置面板
│   ├── StatusHeader.vue      # 顶部状态栏
│   ├── LogViewer.vue         # 日志查看器
│   ├── CloseDialog.vue       # 关闭确认弹窗
│   └── UpdateDialog.vue      # 更新确认弹窗

src-tauri/                    # Rust 后端
├── src/lib.rs                # 应用初始化、插件注册
├── src/notification.rs       # Windows Toast 通知
├── tauri.conf.json           # Tauri 配置
├── capabilities/default.json # 权限配置

scripts/
├── build.mjs                 # 构建(自动加载签名密钥)
├── bump-version.mjs          # 版本号管理
└── publish.mjs               # 构建发布

监测的 API

接口 说明 触发通知条件
SystemUser/Login 登录获取 Session -
DemandManage/QueryIndexCount 工单统计 PendingCount / StaycloseCount / ConfirmCount > 0
DemandManage/GetWorkOrderListPage 待审核工单列表 DataCount > 0

Tauri 插件

  • tauri-plugin-http — HTTP 请求
  • tauri-plugin-notification — 系统通知
  • tauri-plugin-autostart — 开机自启动
  • tauri-plugin-opener — 打开外部链接
  • tauri-plugin-updater — 应用内自动更新
  • tauri-plugin-process — 进程管理(重启)