- 添加项目基础结构:Cargo.toml、.gitignore、设备UID和密钥文件 - 实现前端Vue3项目结构:路由、登录页面、设备管理页面 - 添加核心协议定义(crates/protocol):设备状态、资产、USB事件等 - 实现客户端监控模块:系统状态收集、资产收集 - 实现服务端基础API和插件系统 - 添加数据库迁移脚本:设备管理、资产跟踪、告警系统等 - 实现前端设备状态展示和基本交互 - 添加使用时长统计和水印功能插件
43 lines
1.6 KiB
SQL
43 lines
1.6 KiB
SQL
-- 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);
|