Add Backup Management GUI (Phase 3-4)

Web GUI Implementation:
- Backup.vue: Storage dashboard + Snapshot management + Scheduler config
- Router: Add /backup route
- Home.vue: Add Backup management card
- Tauri commands: 10 backup API endpoints

Features:
- Storage stats (total/used/free, dedup/compression ratios)
- Snapshot list with create/delete/restore actions
- Backup scheduler configuration (enabled, interval, max_snapshots)
- Run backup now button
- Send/Receive placeholders

Tauri Commands:
- get_storage_stats, list_snapshots
- create_snapshot, delete_snapshot, restore_snapshot
- get_backup_stats, get_backup_config, set_backup_config
- run_backup

Build: cargo build (Tauri)  5 warnings
Tests: 495 markbase-core + 201 smb-server = 696 total
This commit is contained in:
Warren
2026-06-24 03:16:27 +08:00
parent 1d9e140e6c
commit 90219a65ad
9 changed files with 4151 additions and 368 deletions

View File

@@ -19,13 +19,14 @@ serde_json = "1.0"
serde = { version = "1.0", features = ["derive"] }
tauri = { version = "1.8.3", features = ["fs-all", "path-all", "http-all", "shell-all"] }
tokio = { version = "1.0", features = ["full"] }
sqlx = { version = "0.7", features = ["runtime-tokio", "sqlite"] }
sysinfo = "0.30"
chrono = { version = "0.4", features = ["serde"] }
anyhow = "1.0"
thiserror = "1.0"
rusqlite = { version = "0.30", features = ["bundled"] }
uuid = { version = "1.0", features = ["v4"] }
lazy_static = "1.4"
rusqlite = { version = "0.32", features = ["bundled"] }
markbase-core = { path = "../../markbase-core" }
[features]
custom-protocol = [ "tauri/custom-protocol" ]