feat: 初始化项目基础架构和核心功能
- 添加项目基础结构:Cargo.toml、.gitignore、设备UID和密钥文件 - 实现前端Vue3项目结构:路由、登录页面、设备管理页面 - 添加核心协议定义(crates/protocol):设备状态、资产、USB事件等 - 实现客户端监控模块:系统状态收集、资产收集 - 实现服务端基础API和插件系统 - 添加数据库迁移脚本:设备管理、资产跟踪、告警系统等 - 实现前端设备状态展示和基本交互 - 添加使用时长统计和水印功能插件
This commit is contained in:
42
migrations/002_assets.sql
Normal file
42
migrations/002_assets.sql
Normal file
@@ -0,0 +1,42 @@
|
||||
-- 002_assets.sql: Asset management tables
|
||||
|
||||
CREATE TABLE IF NOT EXISTS hardware_assets (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
device_uid TEXT NOT NULL REFERENCES devices(device_uid) ON DELETE CASCADE,
|
||||
cpu_model TEXT,
|
||||
cpu_cores INTEGER,
|
||||
memory_total_mb INTEGER,
|
||||
disk_model TEXT,
|
||||
disk_total_mb INTEGER,
|
||||
gpu_model TEXT,
|
||||
motherboard TEXT,
|
||||
serial_number TEXT,
|
||||
reported_at TEXT NOT NULL DEFAULT (datetime('now')),
|
||||
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
||||
UNIQUE(device_uid)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS software_assets (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
device_uid TEXT NOT NULL REFERENCES devices(device_uid) ON DELETE CASCADE,
|
||||
name TEXT NOT NULL,
|
||||
version TEXT,
|
||||
publisher TEXT,
|
||||
install_date TEXT,
|
||||
install_path TEXT,
|
||||
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
||||
UNIQUE(device_uid, name, version)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS asset_changes (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
device_uid TEXT NOT NULL REFERENCES devices(device_uid) ON DELETE CASCADE,
|
||||
change_type TEXT NOT NULL CHECK(change_type IN ('hardware', 'software_added', 'software_removed')),
|
||||
change_detail TEXT NOT NULL,
|
||||
detected_at TEXT NOT NULL DEFAULT (datetime('now'))
|
||||
);
|
||||
|
||||
-- Indexes
|
||||
CREATE INDEX IF NOT EXISTS idx_software_device ON software_assets(device_uid);
|
||||
CREATE INDEX IF NOT EXISTS idx_asset_changes_time ON asset_changes(detected_at);
|
||||
CREATE INDEX IF NOT EXISTS idx_asset_changes_device ON asset_changes(device_uid);
|
||||
Reference in New Issue
Block a user