вухуху
parent
cd4c66e5c6
commit
36561fc1bb
File diff suppressed because it is too large
Load Diff
|
|
@ -164,9 +164,9 @@ impl eframe::App for App<'_> {
|
|||
}
|
||||
|
||||
struct MainTabViewer {
|
||||
positions: Arc<RwLock<Option<Vec<Position>>>>,
|
||||
workers: Arc<RwLock<Vec<Worker>>>,
|
||||
equipment: Arc<RwLock<Option<Vec<Equipment>>>>,
|
||||
|
||||
db_oper: DBOperator,
|
||||
worker_tabs: WorkerTabViewer,
|
||||
worker_tree: egui_dock::DockState<Tab>,
|
||||
|
|
@ -183,9 +183,6 @@ impl Default for MainTabViewer {
|
|||
let rt = tokio::runtime::Runtime::new().unwrap();
|
||||
let db_oper = rt.block_on(async { DBOperator::new().await });
|
||||
Self {
|
||||
positions: Arc::new(RwLock::new(Option::Some(
|
||||
rt.block_on(async { db_oper.get_position().await.unwrap() }),
|
||||
))),
|
||||
workers: Arc::new(RwLock::new(
|
||||
rt.block_on(async { db_oper.get_workers().await.unwrap() }),
|
||||
)),
|
||||
|
|
@ -317,7 +314,7 @@ impl MainTabViewer {
|
|||
.insert("name".into(), eq.name.clone());
|
||||
self.equipment_modal_state
|
||||
.data
|
||||
.insert("inv_numver".into(), eq.inv_number.clone());
|
||||
.insert("inv_number".into(), eq.inv_number.clone());
|
||||
self.equipment_modal_state
|
||||
.data
|
||||
.insert("worker_id".into(), eq.worker.id.to_string());
|
||||
|
|
@ -335,10 +332,14 @@ impl MainTabViewer {
|
|||
.insert("name".into(), eq.name.clone());
|
||||
self.equipment_modal_state
|
||||
.data
|
||||
.insert("inv_numver".into(), eq.inv_number.clone());
|
||||
.insert("inv_number".into(), eq.inv_number.clone());
|
||||
self.equipment_modal_state
|
||||
.data
|
||||
.insert("worker_id".into(), eq.worker.id.to_string());
|
||||
self.equipment_modal_state.data.insert(
|
||||
"maintenance_date".into(),
|
||||
eq.maintenance_date.date_naive().to_string(),
|
||||
);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -365,19 +366,37 @@ impl MainTabViewer {
|
|||
ui.end_row();
|
||||
|
||||
ui.label("Ответственный");
|
||||
egui::ComboBox::new("process_equipment_combobox", "").show_ui(ui, |ui| {
|
||||
for wkrk in self.workers.read().clone().iter() {
|
||||
ui.selectable_value(
|
||||
&mut self
|
||||
let workname = self
|
||||
.workers
|
||||
.read()
|
||||
.clone()
|
||||
.iter()
|
||||
.find(|w| {
|
||||
w.id.to_string()
|
||||
== self
|
||||
.equipment_modal_state
|
||||
.data
|
||||
.get_mut("worker_id")
|
||||
.unwrap(),
|
||||
&mut wkrk.id.to_string(),
|
||||
wkrk.full_name.clone(),
|
||||
);
|
||||
}
|
||||
});
|
||||
.get("worker_id")
|
||||
.unwrap()
|
||||
.clone()
|
||||
})
|
||||
.unwrap()
|
||||
.full_name
|
||||
.clone();
|
||||
egui::ComboBox::new("process_equipment_combobox", "")
|
||||
.selected_text(workname)
|
||||
.show_ui(ui, |ui| {
|
||||
for wkrk in self.workers.read().clone().iter() {
|
||||
ui.selectable_value(
|
||||
self.equipment_modal_state
|
||||
.data
|
||||
.get_mut("worker_id")
|
||||
.unwrap(),
|
||||
wkrk.id.to_string(),
|
||||
&wkrk.full_name,
|
||||
);
|
||||
}
|
||||
});
|
||||
ui.end_row();
|
||||
|
||||
ui.label("Дата последнего\nтехобслуживания");
|
||||
|
|
@ -388,6 +407,13 @@ impl MainTabViewer {
|
|||
.unwrap(),
|
||||
);
|
||||
});
|
||||
} else {
|
||||
ui.label("Вы уверены, что хотите удалить:");
|
||||
ui.strong(format!(
|
||||
"{} | {}?",
|
||||
self.equipment_modal_state.data.get("name").unwrap(),
|
||||
self.equipment_modal_state.data.get("inv_number").unwrap()
|
||||
));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
|
@ -406,9 +432,7 @@ impl MainTabViewer {
|
|||
.id(id)
|
||||
.show_inside(ui, &mut self.material_tabs);
|
||||
}
|
||||
fn show_salary(&mut self, ui: &mut egui::Ui) {
|
||||
ui.label("Помогите");
|
||||
}
|
||||
fn show_salary(&mut self, ui: &mut egui::Ui) {}
|
||||
fn show_settings(&mut self, ui: &mut egui::Ui) {
|
||||
ui.checkbox(&mut self.is_dark_theme, "Тёмная тема");
|
||||
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ mod payment_tab;
|
|||
mod recipe_tab;
|
||||
mod tab;
|
||||
mod worker_tab;
|
||||
mod worker_database;
|
||||
// mod schema;
|
||||
fn main() {
|
||||
dotenvy::dotenv().ok();
|
||||
|
|
|
|||
|
|
@ -2,7 +2,9 @@ use crate::{
|
|||
database::DBOperator,
|
||||
tab::{TABS_CAN_BE_WINDOWS, Tab, TabTypes},
|
||||
};
|
||||
|
||||
/*
|
||||
* Я не придумал, зачем я сделал данный файл. Мой глупый разум решил, что он нужен.
|
||||
*/
|
||||
pub struct PaymentTabViewer {
|
||||
db_oper: DBOperator,
|
||||
is_admin: bool,
|
||||
|
|
|
|||
Loading…
Reference in New Issue