summaryrefslogtreecommitdiff
path: root/src/banking/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/banking/mod.rs')
-rw-r--r--src/banking/mod.rs61
1 files changed, 2 insertions, 59 deletions
diff --git a/src/banking/mod.rs b/src/banking/mod.rs
index 410bae1..e936286 100644
--- a/src/banking/mod.rs
+++ b/src/banking/mod.rs
@@ -1,59 +1,2 @@
-
-use parsers::csv::CsvFile;
-
-
-pub struct Account {
- name : String,
- iban : String,
- transactions : Vec<Transaction>
-}
-
-
-#[derive(Serialize)]
-pub struct Transaction {
- pub sender_name : String,
- pub amount : f32,
- pub reference : String,
- pub date : chrono::NaiveDate
-}
-
-impl Transaction {
- pub fn from_sparkasse_csv_file(file : CsvFile) -> Vec<Transaction> {
- let mut ret = Vec::new();
- for line in file.iter() {
- let mut sender_name_f = String::from("");
- let mut sender_iban_f = String::from("");
- let mut amount_f : f32 = 0.0;
- let mut reference_f = String::from("");
- let mut date_f = chrono::NaiveDate::parse_from_str("01.01.2019", "%d.%m.%Y").unwrap();
- match line.get(&String::from("Kontonummer")) {
- Some(value) => sender_iban_f = value.to_string(),
- None => println!("missing sender")
- }
- match line.get(&String::from("Beguenstigter/Zahlungspflichtiger")) {
- Some(value) => sender_name_f = value.to_string(),
- None => println!("missing sender")
- }
- match line.get(&String::from("Verwendungszweck")) {
- Some(value) => reference_f = value.to_string(),
- None => println!("missing refernce")
- }
- match line.get(&String::from("Betrag")) {
- Some(value) => amount_f = value.parse().unwrap(),
- None => println!("missing amount")
- }
- match line.get(&String::from("Valutadatum")) {
- Some(value) => {
- date_f = chrono::NaiveDate::parse_from_str(value, "%d.%m.%y").unwrap();} ,
- None => println!("missing date")
- }
- ret.push(Transaction {
- sender_name : sender_name_f,
- amount : amount_f,
- reference : reference_f,
- date : date_f });
-
- }
- ret
- }
-}
+pub mod asset;
+pub mod account;