diff --git a/code/src/app.rs b/code/src/app.rs index 3d79edd..8764709 100644 --- a/code/src/app.rs +++ b/code/src/app.rs @@ -166,33 +166,16 @@ impl MainTabViewer{ header.col(|ui|{ui.heading("Дата последнего\nя техобслуживания");}); }) .body(|mut body|{ - + for eq in self.equipment.read().clone().unwrap().iter(){ + body.row(20.0, |mut row|{ + row.col(|ui|{ui.label(eq.id.to_string());}); + row.col(|ui|{ui.label(&eq.name);}); + row.col(|ui|{ui.label(&eq.inv_number);}); + row.col(|ui|{ui.label(&eq.worker.full_name);}); + row.col(|ui|{ui.label(eq.maintenance_date.date_naive().to_string());}); + }); + } }); - ; - - for eq in self.equipment.read().clone().unwrap().iter() { - let id = ui.make_persistent_id(format!("{}:{}", eq.id, eq.name)); - ui.push_id(&id, |ui|{ - egui::CollapsingHeader::new(&eq.name) - .default_open(false) - .show(ui, |ui|{ - ui.horizontal(|ui|{ - ui.monospace("Инвентарный номер:"); - ui.label(&eq.inv_number); - }); - ui.horizontal(|ui|{ - ui.monospace("Ответственный:"); - ui.label(&eq.worker.full_name); - }); - ui.horizontal(|ui|{ - ui.monospace("Дата последнего техобслуживания:"); - ui.label(&eq.maintenance_date.date_naive().to_string()); - }); - - }); - }); - - } } @@ -1008,4 +991,19 @@ impl Default for MaterialTabViewer{ } } +} + +struct PaymentsTabViewer{ + +} +impl egui_dock::TabViewer for PaymentsTabViewer{ + type Tab = Tab; + + fn title(&mut self, tab: &mut Self::Tab) -> egui::WidgetText { + todo!() + } + + fn ui(&mut self, ui: &mut egui::Ui, tab: &mut Self::Tab) { + todo!() + } } \ No newline at end of file diff --git a/code/src/database.rs b/code/src/database.rs index cb7d810..69b7857 100644 --- a/code/src/database.rs +++ b/code/src/database.rs @@ -253,7 +253,14 @@ impl DBOperator{ } - + macro_rules! insert_fn { + ($expr:expr, $datatype:ty, $fn_name:ident) => { + pub async fn $fn_name{ + match sqlx::query(stringify!($expr)) + } + + }; + }