summaryrefslogtreecommitdiff
path: root/makima/src/server/handlers/directives.rs
diff options
context:
space:
mode:
Diffstat (limited to 'makima/src/server/handlers/directives.rs')
-rw-r--r--makima/src/server/handlers/directives.rs13
1 files changed, 10 insertions, 3 deletions
diff --git a/makima/src/server/handlers/directives.rs b/makima/src/server/handlers/directives.rs
index 960da94..15df6d5 100644
--- a/makima/src/server/handlers/directives.rs
+++ b/makima/src/server/handlers/directives.rs
@@ -1063,7 +1063,7 @@ pub async fn pick_up_orders(
};
// Fetch available orders
- let orders = match repository::get_available_orders_for_pickup(pool, auth.owner_id).await {
+ let orders = match repository::get_available_orders_for_pickup(pool, auth.owner_id, id).await {
Ok(o) => o,
Err(e) => {
tracing::error!("Failed to fetch available orders: {}", e);
@@ -1078,7 +1078,7 @@ pub async fn pick_up_orders(
// If no orders available, return early
if orders.is_empty() {
return Json(PickUpOrdersResponse {
- message: "No orders available to pick up".to_string(),
+ message: "No orders available to plan".to_string(),
order_count: 0,
task_id: None,
})
@@ -1125,6 +1125,13 @@ pub async fn pick_up_orders(
.into_response();
}
+ // Mark picked-up orders as in_progress
+ if let Err(e) =
+ repository::bulk_update_order_status(pool, auth.owner_id, &order_ids, "in_progress").await
+ {
+ tracing::warn!("Failed to update order status to in_progress: {}", e);
+ }
+
// Create the planning task
let req = CreateTaskRequest {
contract_id: None,
@@ -1199,7 +1206,7 @@ pub async fn pick_up_orders(
let _ = repository::advance_directive_ready_steps(pool, id).await;
Json(PickUpOrdersResponse {
- message: format!("Picked up {} orders", order_count),
+ message: format!("Planning {} orders", order_count),
order_count,
task_id: Some(task.id),
})