From 2349b42a13dc6cabf92b53d370245281b73c5395 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gustav=20S=C3=B6rn=C3=A4s?= Date: Thu, 29 Jul 2021 16:47:16 +0200 Subject: date constraints --- cli/src/main.rs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'cli/src/main.rs') diff --git a/cli/src/main.rs b/cli/src/main.rs index 48bbb1d..d1e793d 100644 --- a/cli/src/main.rs +++ b/cli/src/main.rs @@ -1,4 +1,4 @@ -use chrono::naive::NaiveDate; +use chrono::{naive::NaiveDate, Duration}; use rust_decimal::Decimal; use std::path::PathBuf; use std::str::FromStr; @@ -9,7 +9,7 @@ mod search; mod store; mod transaction; -use search::{Constraint, Search}; +use search::{Constraint, DateFilter, Search}; use store::Store; use transaction::{Transaction, TransactionKind}; @@ -72,7 +72,11 @@ fn main() { let mut store = Store::open(PathBuf::from("store")).unwrap(); let search = Search::new(store.transactions()); - let search = search.subtract(Constraint::Category("a".to_string())); + // let search = search.subtract(Constraint::Category("a".to_string())); + let search = search.subtract(Constraint::Date(DateFilter::Relative { + start: None, + end: Some(Duration::days(-2)), + })); let args = Mn::from_args(); eprintln!("{:?}", args); @@ -108,7 +112,7 @@ fn main() { println!("{}", store.categories().join("\n")); } Command::Show => { - let mut transactions = store.transactions(); + let mut transactions = search.get(); transactions.sort_by(|t1, t2| t1.date.cmp(&t2.date)); println!("{}", Table::new(transactions).with(Style::psql())); } -- cgit v1.2.1