From fcec5d6bdeceba409453be8ba5d56fd21dc5032d Mon Sep 17 00:00:00 2001 From: fheinrich <fheinrich@techfak.uni-bielefeld.de> Date: Thu, 21 Mar 2024 11:59:39 +0100 Subject: [PATCH] Fix no orders appearing at all with small times and --- cooperative_cuisine/orders.py | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/cooperative_cuisine/orders.py b/cooperative_cuisine/orders.py index 95b994c5..0b0529e0 100644 --- a/cooperative_cuisine/orders.py +++ b/cooperative_cuisine/orders.py @@ -402,7 +402,7 @@ class RandomOrderGeneration(OrderGeneration): """For efficient checking to update order removable.""" self.number_cur_orders: int = 0 """How many orders are currently open.""" - self.needed_orders: int = 0 + self.num_needed_orders: int = 0 """For the sample on dur but when it was restricted due to max order number.""" def init_orders(self, now) -> list[Order]: @@ -435,26 +435,25 @@ class RandomOrderGeneration(OrderGeneration): if new_finished_orders: self.create_random_next_time_delta(now) return [] - # print( - # " - -", - # self.needed_orders, - # self.number_cur_orders, - # self.next_order_time, - # now, - # ) - - if self.needed_orders: - self.needed_orders -= len(new_finished_orders) - self.needed_orders = max(self.needed_orders, 0) - self.number_cur_orders += len(new_finished_orders) + + # print(self.number_cur_orders, self.num_needed_orders) + + if self.num_needed_orders: + # self.num_needed_orders -= len(new_finished_orders) + # self.num_needed_orders = max(self.num_needed_orders, 0) + # self.number_cur_orders += len(new_finished_orders) + return self.create_orders_for_meals( - self.random.choices(self.available_meals, k=len(new_finished_orders)), + self.random.choices( + self.available_meals, + k=len(new_finished_orders) + len(expired_orders), + ), now, ) if self.next_order_time <= now: if self.number_cur_orders >= self.kwargs.max_orders: - self.needed_orders += 1 + self.num_needed_orders += 1 else: if not self.kwargs.sample_on_serving: self.create_random_next_time_delta(now) -- GitLab