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