From db54dc28c0b80d55aa7ba678261619a5cf383159 Mon Sep 17 00:00:00 2001 From: JIe Jie Date: Tue, 9 Jul 2024 16:50:53 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E8=AD=A6=E5=91=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main.rs | 2 +- src/services/excel_service.rs | 5 ----- src/services/serial_service.rs | 5 +++-- src/services/sqlite_service.rs | 6 ------ src/services/ui_service.rs | 21 +++++---------------- src/services/work_service.rs | 7 ++++--- 6 files changed, 13 insertions(+), 33 deletions(-) diff --git a/src/main.rs b/src/main.rs index c9d17bc..a3cedd8 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,4 +1,4 @@ -use fltk::{*, prelude::*}; +use fltk::{*}; use crate::services::ui_service::UiService; diff --git a/src/services/excel_service.rs b/src/services/excel_service.rs index 6f4d4ec..5185d85 100644 --- a/src/services/excel_service.rs +++ b/src/services/excel_service.rs @@ -1,6 +1,3 @@ -use std::fs::File; -use std::io::BufReader; - use anyhow::Result; use calamine::{Data, DataType, open_workbook, Reader, Xlsx}; @@ -8,7 +5,6 @@ use crate::models::work_model::WorkModel; pub(crate) struct ExcelService { current_line: usize, - work_book: Xlsx>, sheet: calamine::Range, } @@ -27,7 +23,6 @@ impl ExcelService { }; let mut service = ExcelService { current_line: 0, - work_book, sheet, }; service.current_line = service.find_first_useful_line(); diff --git a/src/services/serial_service.rs b/src/services/serial_service.rs index 896dfc4..daf1afa 100644 --- a/src/services/serial_service.rs +++ b/src/services/serial_service.rs @@ -9,6 +9,7 @@ pub struct SerialService { port: Box, } + impl SerialService { pub fn new(port_name: &str) -> Result> { let port = new(port_name, 115_200) @@ -16,7 +17,7 @@ impl SerialService { .open()?; Ok(Box::new(SerialService { port })) } - + #[allow(dead_code)] pub fn get_ports() -> Result> { let portinfos = serialport::available_ports()?; let mut portnames: Vec = Vec::new(); @@ -55,7 +56,7 @@ impl SerialService { Err(err) => Err(err) }; } - + #[allow(dead_code)] pub fn close_serial(&mut self)->Result<()>{ todo!() } diff --git a/src/services/sqlite_service.rs b/src/services/sqlite_service.rs index e5c565d..6c297e9 100644 --- a/src/services/sqlite_service.rs +++ b/src/services/sqlite_service.rs @@ -59,9 +59,3 @@ impl SqliteService { Ok(rows.next()?.is_some()) } } - - -#[test] -fn create_sql_service_test() { - let service = SqliteService::default(); -} diff --git a/src/services/ui_service.rs b/src/services/ui_service.rs index 57ab2f9..cc3fe1e 100644 --- a/src/services/ui_service.rs +++ b/src/services/ui_service.rs @@ -3,7 +3,7 @@ use std::process; use std::rc::Rc; use std::sync::{Arc, Mutex}; -use fltk::prelude::{DisplayExt, InputExt, WidgetBase, WidgetExt}; +use fltk::prelude::{DisplayExt, InputExt, WidgetExt}; use fltk::text::TextBuffer; use crate::services::log_service::LOGGER; @@ -14,7 +14,6 @@ use crate::ui::main_ui::*; pub(crate) struct UiService { ui: Rc>, work_service: Rc>, - current_com: String, } impl UiService { @@ -29,7 +28,7 @@ impl UiService { let should_current_line; { - let mut work_service = work_service_clone.borrow_mut(); + let work_service = work_service_clone.borrow_mut(); current_com = work_service.config_model.last_com.clone(); should_current_line = work_service.config_model.current_line; } @@ -45,7 +44,6 @@ impl UiService { let ui_service = UiService { ui, work_service: work_service_rc, - current_com }; ui_service @@ -61,10 +59,9 @@ impl UiService { fn init_exit_callback(&mut self){ let ui_rc = Rc::clone(&self.ui); - let ui_rc_clone = Rc::clone(&ui_rc); let work_service_rc = Rc::clone(&self.work_service); ui_rc.borrow_mut().main_window.set_callback(move |_|{ - let mut work_service = work_service_rc.borrow_mut(); + let work_service = work_service_rc.borrow_mut(); work_service.save_config(); process::exit(0); }); @@ -75,7 +72,7 @@ impl UiService { let ui_rc_clone = Rc::clone(&ui_rc); let work_service_rc = Rc::clone(&self.work_service); ui_rc.borrow_mut().set_lines_btn.set_callback(move |_| { - let mut ui_clone = ui_rc_clone.clone(); + let ui_clone = ui_rc_clone.clone(); let mut set_dialog = UserInterface1::make_set_line_window(); let work_service_rc_clone = work_service_rc.clone(); set_dialog.ok_btn.set_callback(move |_| { @@ -115,7 +112,7 @@ impl UiService { fltk::dialog::message_default(&msg); return; } - if let Some(mut model) = work_service.get_next_work_model() { + if let Some(model) = work_service.get_next_work_model() { ui.current_write_model.set_value(&format!("{}: {}_{}", &model.line_number, &model.imei, &model.sn)); match work_service.write_and_check(model) { Ok(_) => { @@ -164,12 +161,4 @@ impl UiService { ui.current_line_textbox.set_value(current_line); }); } - - fn init_serial_service(&mut self) { - let port_name = self.ui.borrow().com_textbox.value(); - match self.work_service.borrow_mut().init_serial_service(port_name) { - Ok(_) => {} - Err(_) => { fltk::dialog::message_default("Cant Open serial") } - } - } } \ No newline at end of file diff --git a/src/services/work_service.rs b/src/services/work_service.rs index 036f3e9..54b4513 100644 --- a/src/services/work_service.rs +++ b/src/services/work_service.rs @@ -1,10 +1,9 @@ use anyhow::Result; -use log::Log; use crate::models::config_model::ConfigModel; use crate::models::work_model::WorkModel; use crate::services::{config_service::ConfigService, excel_service::ExcelService, serial_service::SerialService, sqlite_service::SqliteService}; -use crate::services::log_service::{FltkLogger, init_logger, LOGGER}; +use crate::services::log_service::{init_logger}; pub struct WorkService { pub(crate) serial_service: Option, @@ -28,6 +27,8 @@ impl WorkService { } return this; } + + #[allow(dead_code)] pub fn get_port_names() -> Vec { //maybe should not use unwrap return SerialService::get_ports().unwrap(); @@ -44,7 +45,6 @@ impl WorkService { } pub fn write_and_check(&mut self, model: WorkModel) -> Result { - let msg = &format!("{}:{}:{}", model.imei, model.sn, model.line_number); log::info!("Write Start"); match self.sqlite_service.check_imei_has_insert(&model.imei) { Ok(true) => { @@ -124,6 +124,7 @@ impl WorkService { }; } + #[allow(dead_code)] pub fn init_sqlite_service(&mut self, db_path: String) -> Result { return if let Ok(sqlite_service) = SqliteService::new(db_path) { self.sqlite_service = sqlite_service;