From 1d9a7ba8a09e207ae98232edc7117840c2d5f2fc Mon Sep 17 00:00:00 2001 From: "Torsten Schulz (local)" Date: Wed, 28 Jan 2026 14:41:27 +0100 Subject: [PATCH] Refactor product cost retrieval in DirectorWorker: Simplify the SQL query by removing the original_sell_cost from the selection, and adjust the cost resolution logic to improve clarity and efficiency in database interactions. --- Cargo.toml | 2 +- src/worker/director.rs | 8 +------- src/worker/sql.rs | 2 +- 3 files changed, 3 insertions(+), 9 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 5097bfa..ee7cc3a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -15,4 +15,4 @@ ctrlc = "3" tokio-rustls = "0.25" rustls-pemfile = "2" libsystemd = "0.7" -chrono = "0.4" +chrono = "0.4" \ No newline at end of file diff --git a/src/worker/director.rs b/src/worker/director.rs index dd4fc51..c3d3555 100644 --- a/src/worker/director.rs +++ b/src/worker/director.rs @@ -718,14 +718,8 @@ impl DirectorWorker { // Helper: get one_piece_cost from DB row fallback logic fn resolve_one_piece_cost(conn: &mut DbConnection, product_id: i32, fallback: f64) -> Result { - conn.prepare("get_product_cost", QUERY_GET_PRODUCT_COST)?; + conn.prepare("get_product_cost", QUERY_GET_PRODUCT_COST)?; let rows = conn.execute("get_product_cost", &[&product_id])?; - if let Some(row) = rows.first() - && let Some(osc) = row.get("original_sell_cost") - && let Ok(v) = osc.parse::() - { - return Ok(v); - } if let Some(row) = rows.first() && let Some(sc) = row.get("sell_cost") && let Ok(v) = sc.parse::() diff --git a/src/worker/sql.rs b/src/worker/sql.rs index 4ef4004..76718f9 100644 --- a/src/worker/sql.rs +++ b/src/worker/sql.rs @@ -44,7 +44,7 @@ VALUES ($1, $2, FALSE, NOW(), NOW()); // Product pricing pub const QUERY_GET_PRODUCT_COST: &str = r#" -SELECT original_sell_cost, sell_cost FROM falukant_type.product WHERE id = $1; +SELECT sell_cost FROM falukant_type.product WHERE id = $1; "#; pub const QUERY_GET_DIRECTORS: &str = r#"