summaryrefslogtreecommitdiff
path: root/src/collects/status.rs
diff options
context:
space:
mode:
author魏曹先生 <1992414357@qq.com>2026-01-24 03:10:41 +0800
committer魏曹先生 <1992414357@qq.com>2026-01-24 03:10:41 +0800
commit49b9037168fb5b6c8deb7ab06abbfd6f54ebc798 (patch)
tree0f5b7c6ce67f2561b2e00da4331df09f476345d4 /src/collects/status.rs
parentf9fa7d65d775959efbc9609ccafd1fdce76129e4 (diff)
Split prepare phase into prepare and collect
- Prepare now handles argument-to-input conversion only - Collect handles resource gathering and data collection - Status command updated to use new two-phase structure - Command system trait modified to support separate phases
Diffstat (limited to 'src/collects/status.rs')
-rw-r--r--src/collects/status.rs38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/collects/status.rs b/src/collects/status.rs
new file mode 100644
index 0000000..b0e8fcd
--- /dev/null
+++ b/src/collects/status.rs
@@ -0,0 +1,38 @@
+use std::time::SystemTime;
+
+use just_enough_vcs::vcs::data::{
+ local::{
+ latest_file_data::LatestFileData, local_sheet::LocalSheetData,
+ workspace_analyzer::AnalyzeResultPure,
+ },
+ member::MemberId,
+ sheet::SheetName,
+};
+
+pub struct JVStatusCollect {
+ pub current_account: MemberId,
+ pub current_sheet: SheetName,
+ pub is_host_mode: bool,
+ pub in_ref_sheet: bool,
+ pub analyzed_result: AnalyzeResultPure,
+ pub latest_file_data: LatestFileData,
+ pub local_sheet_data: LocalSheetData,
+ pub update_time: SystemTime,
+ pub now_time: SystemTime,
+}
+
+impl Default for JVStatusCollect {
+ fn default() -> Self {
+ Self {
+ current_account: MemberId::default(),
+ current_sheet: SheetName::default(),
+ is_host_mode: false,
+ in_ref_sheet: false,
+ analyzed_result: AnalyzeResultPure::default(),
+ latest_file_data: LatestFileData::default(),
+ local_sheet_data: LocalSheetData::default(),
+ update_time: SystemTime::now(),
+ now_time: SystemTime::now(),
+ }
+ }
+}