From dbfd519e35aa13e45e6b362a32c709c105020628 Mon Sep 17 00:00:00 2001 From: ultrageese Date: Mon, 8 Jun 2026 19:00:40 +1000 Subject: [PATCH] =?UTF-8?q?=D1=83=D0=B2=D1=83=D0=B2=D1=83=20=D1=8D=D0=B2?= =?UTF-8?q?=D0=B2=D1=8D=D0=B2=D1=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- code/src/worker_tab.rs | 32 ++++++++++++++------------------ 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/code/src/worker_tab.rs b/code/src/worker_tab.rs index 03e5fdc..a62dc2d 100644 --- a/code/src/worker_tab.rs +++ b/code/src/worker_tab.rs @@ -62,23 +62,10 @@ impl WorkerTabViewer { fn show_worker(&mut self, ui: &mut egui::Ui) { ui.horizontal(|ui| { if ui.button("Добавить").clicked() { - self.show_worker_add_modal = true; - self.add_worker_name = String::new(); - self.add_worker_position = Position::default(); + self.process_worker_state.is_open = true; + self.process_worker_state.data.insert("id".to_string(), "0".to_string()); + self.process_worker_ }; - if ui.button("Редактировать").clicked() { - self.show_worker_edit_modal = true; - self.rt.block_on(async { - let wrkr = match self.db_oper.get_worker_by_id(self.edit_worker_id).await { - Ok(worker) => worker, - Err(_) => Worker::default(), - }; - self.edit_worker_name = wrkr.full_name; - self.edit_worker_hire_date = wrkr.hire_date.format("%Y-%m-%d").to_string(); - self.edit_worker_position = wrkr.position; - self.edit_worker_is_fired = wrkr.is_fired; - }); - } if ui.button("Обновить").clicked() { self.update_workers(); } @@ -173,7 +160,7 @@ impl WorkerTabViewer { .selected_text(format!("#{:08}", &self.edit_worker_id)) .show_ui(ui, |ui| { self.rt.block_on(async { - for worker in self.db_oper.get_workers().await.unwrap().iter() { + for worker in self.workers.read().clone().iter() { ui.selectable_value( &mut self.edit_worker_id, worker.id, @@ -209,7 +196,7 @@ impl WorkerTabViewer { .selected_text(&self.edit_worker_position.name) .show_ui(ui, |ui| { self.rt.block_on(async { - for pos in self.db_oper.get_position().await.unwrap().iter() { + for pos in self.positions.read().clone().iter() { ui.selectable_value( &mut self.edit_worker_position, pos.clone(), @@ -263,6 +250,14 @@ impl WorkerTabViewer { } }); } + if self.process_worker_state.is_open{ + egui::Modal::new(egui::Id::new("process_worker_modal")).show(ui.ctx(), |ui|{ + if ui.button("Закрыть").clicked(){ + self.process_worker_state.is_open = false; + } + + }); + } TableBuilder::new(ui) .column(Column::auto()) .column(Column::auto()) @@ -309,6 +304,7 @@ impl WorkerTabViewer { }); } }); + } fn show_position(&mut self, ui: &mut egui::Ui) {