Neuer Contract
@@ -309,7 +309,7 @@
diff --git a/Layout/default/Contract/View.php b/Layout/default/Contract/View.php
index 357065e4f..a32bf419b 100644
--- a/Layout/default/Contract/View.php
+++ b/Layout/default/Contract/View.php
@@ -231,7 +231,7 @@
$contract->id])?>">
$contract->id])?>">
-
+ finish_date): ?>
$contract->id])?>" onclick="if(!confirm('Jetzt fertigstellen und in Verrechnung geben?')) return false">
diff --git a/Layout/default/Order/Index.php b/Layout/default/Order/Index.php
index 9f947a7d5..ad50c05d8 100644
--- a/Layout/default/Order/Index.php
+++ b/Layout/default/Order/Index.php
@@ -142,7 +142,8 @@
diff --git a/Layout/default/Order/Productchange.php b/Layout/default/Order/Productchange.php
new file mode 100644
index 000000000..ce0b820f8
--- /dev/null
+++ b/Layout/default/Order/Productchange.php
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/application/Contract/trigger/Finished.php b/application/Contract/trigger/Finished.php
index bc81bc6ce..7c257414a 100644
--- a/application/Contract/trigger/Finished.php
+++ b/application/Contract/trigger/Finished.php
@@ -48,6 +48,7 @@ class ContractTrigger_Finished {
$now->setTime(2,0,0);
$cancel_date = clone($now);
+ $cancel_date->modify("-1 day");
$cancel_date->setTime(23,59,59);
$origin = $link->origin;
@@ -74,7 +75,7 @@ class ContractTrigger_Finished {
// verlinkten Contract kündigen (wenn nicht schon gekündigt)
if ($old_link->change_action == "cancel" && !$old_link->origin->cancel_date) {
$old_link->origin->update([
- 'cancel_date' => $now->getTimestamp(),
+ 'cancel_date' => $cancel_date->getTimestamp(),
'cancel_date_by' => $this->me->id,
'edit_by' => $this->me->id
]);
@@ -100,7 +101,7 @@ class ContractTrigger_Finished {
// verlinkten Contract kündigen (wenn nicht schon gekündigt)
if ($old_link->change_action == "cancel" && !$old_link->contract->cancel_date) {
$old_link->contract->update([
- 'cancel_date' => $now->getTimestamp(),
+ 'cancel_date' => $cancel_date->getTimestamp(),
'cancel_date_by' => $this->me->id,
'edit_by' => $this->me->id
]);
@@ -126,7 +127,7 @@ class ContractTrigger_Finished {
// Alte Gutschrift kündigen und neue anlegen
//var_dump($old_credit->contract);
$old_credit->contract->update([
- 'cancel_date' => $now->getTimestamp(),
+ 'cancel_date' => $cancel_date->getTimestamp(),
'cancel_date_by' => $this->me->id,
'edit_by' => $this->me->id
]);
diff --git a/application/Order/OrderController.php b/application/Order/OrderController.php
index 2e8e1e52e..954d1aff1 100644
--- a/application/Order/OrderController.php
+++ b/application/Order/OrderController.php
@@ -150,18 +150,11 @@ class OrderController extends mfBaseController {
}
}
- //if(!$showLonelies) {
- //var_dump($order_search);exit;
- $pagination['maxItems'] = OrderModel::count($order_search);
- foreach(OrderModel::search($order_search, $pagination) as $order) {
- if(!array_key_exists($order->id, $orders)) {
- $orders[$order->id] = $order;
- }
- }
- //}
-
+ $pagination['maxItems'] = OrderModel::count($order_search);
+ $orders = OrderModel::search($order_search, $pagination, true);
+
$showLoneliesCount = false;
- foreach(["owner", "owner_address", "partner_number"] as $key) {
+ foreach(["owner", "owner_address", "partner_number"] as $key) {
if(array_key_exists($key, $filter) && $filter[$key]) {
$showLoneliesCount = true;
break;
@@ -192,7 +185,6 @@ class OrderController extends mfBaseController {
if($this->me->isAdmin()) {
if(!$this->request->filter['network_id']) {
$lonelies = OrderModel::search($order_search);
-
}
} else {
$order_search['create_by'] = $userIds;
@@ -225,7 +217,7 @@ class OrderController extends mfBaseController {
foreach($lonelies as $order) {
// check for voice or special products only
- $this->log->debug("Order id ".$order->id);
+ //$this->log->debug("Order id ".$order->id);
/*if($order->id == 38) {
var_dump($order);
exit;
@@ -476,7 +468,13 @@ class OrderController extends mfBaseController {
$this->layout()->setFlash("Wartestatus erfolgreich gespeichert", "success");
$this->redirect("Order","Index", $qs);
}
-
+
+ protected function addUpgrade() {
+ $this->layout()->setTemplate("Order/Productchange");
+
+
+ }
+
protected function saveAction() {
$r = $this->request;
//var_dump($r->products);
diff --git a/application/Order/OrderModel.php b/application/Order/OrderModel.php
index db4a8ca51..48527d8f2 100644
--- a/application/Order/OrderModel.php
+++ b/application/Order/OrderModel.php
@@ -180,7 +180,7 @@ class OrderModel {
return 0;
}
- public static function search($filter, $limit=false) {
+ public static function search($filter, $limit=false, $withId = false) {
$items = [];
$db = FronkDB::singleton();
@@ -210,7 +210,7 @@ class OrderModel {
if(is_array($limit) && count($limit)) {
if(is_numeric($limit['start']) && is_numeric($limit['count'])) {
$sql .= " LIMIT ".$limit['start'].", ".$limit['count'];
- } elseif(is_numeric($count)) {
+ } elseif(is_numeric($limit['count'])) {
$sql .= " LIMIT ".$limit['count'];
}
}
@@ -218,7 +218,11 @@ class OrderModel {
$res = $db->query($sql);
if($db->num_rows($res)) {
while($data = $db->fetch_object($res)) {
- $items[] = new Order($data);
+ if($withId) {
+ $items[$data->id] = new Order($data);
+ } else {
+ $items[] = new Order($data);
+ }
}
}