From 67a27284b36df17752abede637d7c83128e5080d Mon Sep 17 00:00:00 2001 From: Maxime Augier Date: Wed, 21 Aug 2024 16:07:09 +0200 Subject: [PATCH] Site inventory mode --- src/main.rs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/main.rs b/src/main.rs index 9023ef0..f9381ea 100644 --- a/src/main.rs +++ b/src/main.rs @@ -30,6 +30,7 @@ enum Session { #[derive(Debug, Clone, Subcommand)] enum Mode { Login, + List, Status, Session { #[arg(default_value = "ongoing")] @@ -161,6 +162,17 @@ fn main() -> Result<()> { match args.mode { Mode::Login => login()?, + Mode::List => { + for site in ctx.sites_details()? { + println!("Site {} (level {})", site.site.id, site.site.level_of_access); + for circuit in site.circuits { + println!(" Circuit {} ({}A)", circuit.id, circuit.rated_current); + for charger in circuit.chargers { + println!("Charger {} (level {}", charger.id, charger.level_of_access); + } + } + } + }, Mode::Status => loop_chargers(&mut ctx, &args.charger_id, |c, ctx| { c.state(ctx).map(|s| status(&c.id, s)) })?,