diff --git a/application/Contractqueue/ContractqueueController.php b/application/Contractqueue/ContractqueueController.php index 0971c0e10..fd17c253b 100644 --- a/application/Contractqueue/ContractqueueController.php +++ b/application/Contractqueue/ContractqueueController.php @@ -121,8 +121,9 @@ class ContractqueueController extends mfBaseController { //$max_orders = 1500; $not_before = new DateTime("2024-07-01"); + $not_before->setTimezone(new DateTimeZone("Europe/Vienna")); - foreach(OrderModel::search(["finish_date" => true, "finish_date<" => date("U"), "finish_date>" => $not_before->getTimestamp()]) as $order) { + foreach(OrderModel::search(["finish_date" => true, "finish_date<=" => date("U"), "finish_date>=" => $not_before->getTimestamp()]) as $order) { if(!is_array($order->products) || !count($order->products)) { //echo "keine Produkte in Order ".$order->id."\n"; continue; diff --git a/application/Order/OrderModel.php b/application/Order/OrderModel.php index 97e0067ad..f491dae57 100644 --- a/application/Order/OrderModel.php +++ b/application/Order/OrderModel.php @@ -301,14 +301,28 @@ class OrderModel { $where .= " AND `Order`.finish_date > $finish_date"; } } - + + if(array_key_exists("finish_date>=", $filter)) { + $finish_date = $filter['finish_date>=']; + if($finish_date) { + $where .= " AND `Order`.finish_date >= $finish_date"; + } + } + if(array_key_exists("finish_date<", $filter)) { $finish_date = $filter['finish_date<']; if($finish_date) { $where .= " AND `Order`.finish_date < $finish_date"; } } - + + if(array_key_exists("finish_date<=", $filter)) { + $finish_date = $filter['finish_date<=']; + if($finish_date) { + $where .= " AND `Order`.finish_date <= $finish_date"; + } + } + if(array_key_exists("upgrade", $filter)) { if($filter['upgrade'] == 1) { $where .= " AND `Order`.upgrade = 1";