вабба-лабба-даб-даб

master
Алексей Алексей 2026-06-13 11:35:28 +10:00
parent 60ecbc5361
commit 38bf6c33c7
3 changed files with 31 additions and 24 deletions

View File

@ -8,7 +8,7 @@ anyhow = "1.0.102"
bigdecimal = "0.4.10"
chrono = { version = "0.4.44", features = ["serde"] }
dotenvy = "0.15.7"
eframe = "0.34.2"
eframe = {version = "0.34.2", features = ["glow"]}
egui = "0.34.2"
egui_dock = "0.19.1"
egui_extras = {version = "0.34.2", features = ["datepicker"]}
@ -20,5 +20,3 @@ tokio={version = "1.52.3", features = ["full"]}
[target.'cfg(target_os="windows")'.dependencies]
eframe = {version ="0.34.2",default-features=false, features=["glow"]}

View File

@ -7,7 +7,6 @@ use crate::{
Equipment, LoginModalState, LoginStatus, Material, MaterialCategory, MaterialRow,
ModalStatus, ModalWinState, Position, Worker,
},
payment_tab::PaymentTabViewer,
tab::*,
worker_tab::{self, *},
};
@ -166,14 +165,13 @@ impl eframe::App for App<'_> {
struct MainTabViewer {
positions: Arc<RwLock<Option<Vec<Position>>>>,
workers: Arc<RwLock<Option<Vec<Worker>>>>,
workers: Arc<RwLock<Vec<Worker>>>,
equipment: Arc<RwLock<Option<Vec<Equipment>>>>,
db_oper: DBOperator,
worker_tabs: WorkerTabViewer,
worker_tree: egui_dock::DockState<Tab>,
material_tabs: MaterialTabViewer,
material_tree: egui_dock::DockState<Tab>,
payment_tabs: PaymentTabViewer,
rt: tokio::runtime::Runtime,
equipment_modal_state: ModalWinState,
is_dark_theme: bool,
@ -188,9 +186,9 @@ impl Default for MainTabViewer {
positions: Arc::new(RwLock::new(Option::Some(
rt.block_on(async { db_oper.get_position().await.unwrap() }),
))),
workers: Arc::new(RwLock::new(Option::Some(
workers: Arc::new(RwLock::new(
rt.block_on(async { db_oper.get_workers().await.unwrap() }),
))),
)),
equipment: Arc::new(RwLock::new(Option::Some(
rt.block_on(async { db_oper.get_equipment().await.unwrap() }),
))),
@ -217,7 +215,6 @@ impl Default for MainTabViewer {
tab_type: TabTypes::MaterialTypeList,
},
]),
payment_tabs: PaymentTabViewer::default(),
rt,
is_dark_theme: true,
interface_scale_ratio: 1.2,
@ -243,7 +240,6 @@ impl MainTabViewer {
is_admin,
worker_tabs: WorkerTabViewer::new(is_admin),
material_tabs: MaterialTabViewer::new(is_admin),
payment_tabs: PaymentTabViewer::new(is_admin),
..Default::default()
}
}
@ -360,25 +356,37 @@ impl MainTabViewer {
ui.end_row();
ui.label("Инв. номер");
let mut inv_num = self
.equipment_modal_state
ui.text_edit_singleline(
self.equipment_modal_state
.data
.get_mut("inv_number")
.unwrap();
ui.text_edit_singleline(inv_num);
.unwrap(),
);
ui.end_row();
ui.label("Ответственный");
// egui::ComboBox::new("process_equipment_combobox");
egui::ComboBox::new("process_equipment_combobox", "").show_ui(ui, |ui| {
for wkrk in self.workers.read().clone().iter() {
ui.selectable_value(
&mut self
.equipment_modal_state
.data
.get_mut("worker_id")
.unwrap(),
&mut wkrk.id.to_string(),
wkrk.full_name.clone(),
);
}
});
ui.end_row();
ui.label("Дата последнего\nтехобслуживания");
let mut maintenance = self
.equipment_modal_state
ui.text_edit_singleline(
self.equipment_modal_state
.data
.get_mut("maintenance_date")
.unwrap();
ui.text_edit_singleline(maintenance);
.unwrap(),
);
});
}
});

View File

@ -11,12 +11,13 @@ mod worker_tab;
fn main() {
dotenvy::dotenv().ok();
database::estabilish_connection();
let native_opts = eframe::NativeOptions {
let mut native_opts = eframe::NativeOptions {
viewport: egui::ViewportBuilder::default()
.with_inner_size([700.0, 300.0])
.with_min_inner_size([650.0, 200.0]),
..Default::default()
};
native_opts.renderer = eframe::Renderer::Glow;
eframe::run_native(
"BCS",