я обязательно победю
parent
b23537af78
commit
c92819cda9
|
|
@ -728,6 +728,7 @@ dependencies = [
|
|||
name = "code"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"anyhow",
|
||||
"chrono",
|
||||
"dotenv",
|
||||
"eframe",
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ version = "0.1.0"
|
|||
edition = "2024"
|
||||
|
||||
[dependencies]
|
||||
anyhow = "1.0.102"
|
||||
chrono = { version = "0.4.44", features = ["serde"] }
|
||||
dotenv = "0.15.0"
|
||||
eframe = "0.34.2"
|
||||
|
|
@ -11,7 +12,7 @@ egui = "0.34.2"
|
|||
egui_dock = "0.19.1"
|
||||
egui_extras = "0.34.2"
|
||||
rust_decimal = {version = "1.42.0", features = ["macros"]}
|
||||
sqlx = {version="0.8.6", features = ["runtime-tokio"]}
|
||||
sqlx = {version="0.8.6", features = ["runtime-tokio", "mysql"]}
|
||||
|
||||
[target.'cfg(target_os="windows")'.dependencies]
|
||||
eframe = {version ="0.34.2",default-features=false, features=["glow"]}
|
||||
|
|
|
|||
|
|
@ -1,9 +1,12 @@
|
|||
use sqlx::MySqlConnection;
|
||||
use sqlx::mysql::MySqlPoolOptions;
|
||||
use sqlx:mysql::MySqlPool;
|
||||
use sqlx::mysql::MySqlPool;
|
||||
use sqlx::Connection;
|
||||
|
||||
use dotenv::dotenv;
|
||||
// use crate::schema::equipment::dsl::*;
|
||||
// use crate::schema::worker::dsl::*;
|
||||
use crate::models::*;
|
||||
|
||||
struct DBOperator{
|
||||
connection_string: String,
|
||||
|
|
@ -13,25 +16,26 @@ impl DBOperator{
|
|||
dotenv().ok();
|
||||
let db_url = dotenv::var("DATABASE_URL").expect("DATABASE_URL установи!");
|
||||
Self{connection_string:db_url}
|
||||
|
||||
}
|
||||
pub fn get_all(&self, from: String){
|
||||
let pool = MySqlPool::connect(&self.connection_string);
|
||||
let ret = sqlx::query("SELECT * FROM ?")
|
||||
.bind(from)
|
||||
.fetch(pool);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
async fn get_position(pool: &MySqlPool) -> anyhow::Result<()>{
|
||||
let rets = sqlx::query!(r#"SELECT * FROM position"#)
|
||||
.fetch_all(*pool)
|
||||
.await?;
|
||||
Ok(())
|
||||
}
|
||||
|
||||
|
||||
|
||||
pub async fn estabilish_connection() -> Result<(), sqlx::Error>{
|
||||
dotenv().ok();
|
||||
let db_url = dotenv::var("DATABASE_URL").expect("DATABASE_URL установи!");
|
||||
let pool = MySqlPoolOptions::new()
|
||||
.max_connections(5)
|
||||
.connect(db_url).await?;
|
||||
.connect(&db_url).await?;
|
||||
|
||||
Ok(())
|
||||
}
|
||||
pub fn get_positions() -> std::vec::Vec<crate::models::Position>{
|
||||
todo!()
|
||||
}
|
||||
|
|
@ -4,7 +4,7 @@ mod models;
|
|||
mod database;
|
||||
// mod schema;
|
||||
fn main() -> eframe::Result{
|
||||
database::estabilish_connection();
|
||||
// database::estabilish_connection();
|
||||
let native_opts = eframe::NativeOptions {
|
||||
viewport: egui::ViewportBuilder::default()
|
||||
.with_inner_size([400.0,300.0])
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
|
||||
#[derive(Default, Clone, Hash)]
|
||||
#[derive(Default, Clone, Hash, sqlx::FromRow)]
|
||||
pub struct Position{
|
||||
id: i32,
|
||||
name: String,
|
||||
|
|
|
|||
Loading…
Reference in New Issue