2.4 KiB
2.4 KiB
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
项目概述
这是一个基于 Tauri 2.x + Vue 3 的工单监测桌面应用,用于监测 CRM 系统(crm.yunvip123.com)的待处理工单并发送系统通知。
常用命令
项目使用 npm 作为包管理器(存在 package-lock.json)。
# 启动开发模式(前端 + Tauri)
pnpm run tauri dev
# 仅启动前端开发服务器
pnpm run dev
# 构建生产版本
npm run tauri build
# 前端类型检查 + 构建
pnpm run build
# Rust 后端检查
cd src-tauri && cargo check
cd src-tauri && cargo clippy
架构概述
前端驱动架构:所有业务逻辑(API 调用、定时任务、通知)都在 Vue 前端实现,Rust 后端仅负责系统级功能。
前端(src/)
src/App.vue- 主界面,包含全部业务逻辑:用户认证、监测调度、通知、网络检测、配置管理、系统托盘- 使用 Vue 3 Composition API(
<script setup>) - Vite 开发服务器端口:1420,HMR 端口:1421
- 系统托盘使用
@tauri-apps/api/tray和@tauri-apps/api/menu实现
Rust 后端(src-tauri/src/)
lib.rs- 应用初始化、插件注册、窗口关闭事件处理(关闭→隐藏到托盘)
Tauri 命令
无自定义命令(所有功能通过前端 API 实现)
API 集成
- 登录:
POST https://crm.yunvip123.com/api/SystemUser/Login - 工单查询:
GET https://crm.yunvip123.com/api/DemandManage/QueryIndexCount - 认证方式:ASP.NET_SessionId Cookie
- HTTP 白名单配置在
src-tauri/capabilities/default.json
通知触发条件
当以下任意计数 > 0 时触发系统通知:
PendingCount(待处理)StaycloseCount(待关闭)ConfirmCount(待确认)
关键配置
src-tauri/capabilities/default.json- Tauri 权限配置(HTTP 白名单、插件权限)src-tauri/tauri.conf.json- 应用配置(窗口、图标、bundle)- 用户配置文件路径:
%APPDATA%/tauri-app/config.json(Windows)
依赖的 Tauri 插件
tauri-plugin-http- HTTP 请求tauri-plugin-notification- 系统通知tauri-plugin-autostart- 开机自启动tauri-plugin-opener- 打开外部链接
Windows 编译要求
需要安装 Visual Studio Build Tools(包含 C++ 工具链)才能编译 Rust 后端。