diff --git a/src/csv.rs b/src/csv.rs index 194f7d5..4afb7a9 100644 --- a/src/csv.rs +++ b/src/csv.rs @@ -13,6 +13,8 @@ pub struct Row { } impl Row { + const DF: &str = "%Y-%m-%d %H:%M"; + pub fn new( name: &str, hut_type: &str, @@ -71,3 +73,25 @@ fn make_checksum() -> String { format!("{}{}", base, last) } + +impl std::fmt::Display for Row { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + write!( + f, + "{},{},{},{},{},N,{},{},{},{},{},{},{},{}", + self.name, + self.name, + self.hut_type, + self.path, + self.tare, + self.mat_id, + self.quantity, + self.lot_id, + self.uom, + self.lot_status, + self.born.format(Self::DF), + self.born.format(Self::DF), + self.expire.format(Self::DF), + ) + } +}