From 00cb97ec57c438eaa270d2de7dfe4f040121bba5 Mon Sep 17 00:00:00 2001 From: "Torsten Schulz (local)" Date: Mon, 2 Feb 2026 15:48:53 +0100 Subject: [PATCH] Enhance logging for sales checks in DirectorWorker: Added detailed logging statements to track the sales verification process, including cases with no items to sell and the number of inventory items found. This improves visibility into the sales workflow and aids in debugging. --- YpDaemon/src/worker/director.rs | 9 ++++++++- src/worker/director.rs | 24 +++++++++++++++++++++++- 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/YpDaemon/src/worker/director.rs b/YpDaemon/src/worker/director.rs index 191a867..e33d9e6 100644 --- a/YpDaemon/src/worker/director.rs +++ b/YpDaemon/src/worker/director.rs @@ -652,10 +652,17 @@ impl DirectorWorker { conn.prepare("remove_inventory", QUERY_REMOVE_INVENTORY)?; conn.prepare("add_sell_log", QUERY_ADD_SELL_LOG)?; - // Falls es nichts zu verkaufen gibt, können wir sofort zurückkehren. if items.is_empty() { + eprintln!( + "[DirectorWorker] Verkaufsprüfung Director {} (branch_id={}): nichts zu verkaufen", + director.id, director.branch_id + ); return Ok(()); } + eprintln!( + "[DirectorWorker] Verkaufsprüfung Director {} (branch_id={}): {} Inventar-Items gefunden", + director.id, director.branch_id, items.len() + ); // Für alle Items dieses Directors sollten die user_id-Felder identisch // sein (Arbeitgeber des Directors). diff --git a/src/worker/director.rs b/src/worker/director.rs index a17d016..ffd41c8 100644 --- a/src/worker/director.rs +++ b/src/worker/director.rs @@ -164,6 +164,10 @@ impl DirectorWorker { if let Err(_) = self.start_transports_stub(&director) {} } if director.may_sell { + eprintln!( + "[DirectorWorker] Starte Verkaufsprüfung für Director {} (branch_id={})", + director.id, director.branch_id + ); self.start_sellings(&director)?; } } @@ -527,10 +531,17 @@ impl DirectorWorker { conn.prepare("remove_inventory", QUERY_REMOVE_INVENTORY)?; conn.prepare("add_sell_log", QUERY_ADD_SELL_LOG)?; - // Falls es nichts zu verkaufen gibt, können wir sofort zurückkehren. if items.is_empty() { + eprintln!( + "[DirectorWorker] Verkaufsprüfung Director {} (branch_id={}): nichts zu verkaufen", + director.id, director.branch_id + ); return Ok(()); } + eprintln!( + "[DirectorWorker] Verkaufsprüfung Director {} (branch_id={}): {} Inventar-Items gefunden", + director.id, director.branch_id, items.len() + ); // Für alle Items dieses Directors sollten die user_id-Felder identisch // sein (Arbeitgeber des Directors). @@ -698,6 +709,17 @@ impl DirectorWorker { let _ = self.base.change_falukant_user_money(item.user_id, payout_amount, "sell products"); } + eprintln!( + "[DirectorWorker] Verkauf: branch_id={}, product_id={}, quantity={}, revenue={:.2}, tax%={:.2}, payout={:.2}, user_id={}", + item.branch_id, + item.product_id, + item.quantity, + sell_price, + cumulative_tax_percent, + payout_amount, + item.user_id + ); + conn.execute( "add_sell_log", &[