diff --git a/Layout/default/Dashboard/Dashboard.php b/Layout/default/Dashboard/Dashboard.php index 9e60aff8f..44b829244 100644 --- a/Layout/default/Dashboard/Dashboard.php +++ b/Layout/default/Dashboard/Dashboard.php @@ -61,12 +61,14 @@ $chartColors = [ -
+
-

Akquise Statistiken Momentan nur für Admins sichtbar

+
+
+

Akquise Statistiken Momentan nur für Admins sichtbar

+
-
@@ -83,14 +85,15 @@ $chartColors = [
-
+
Bestellungen

/

-
+ +
@@ -98,14 +101,14 @@ $chartColors = [
-
+
Status BEP Installed (244, SD)

/

-
+
@@ -113,14 +116,14 @@ $chartColors = [
-
+
Status OTO Installed (245, MD)

/

-
+
@@ -128,14 +131,14 @@ $chartColors = [
-
+
Aktive Anschlüsse

/

-
+
@@ -143,18 +146,18 @@ $chartColors = [
-
+

Kunden je Partner


- -
+ +
-
+
$count): ?> @@ -234,7 +237,70 @@ $chartColors = [ } }); + + + const chart = new Chart(document.getElementById('sparkline1').getContext('2d'), { + type: 'line', + data: { + labels: [ + + $o): $wo[] = "KW".date("W Y", $time); endforeach; ?> + "" + ], + datasets: [ + { + label: "", + fill: true, + data: [ + + ] + } + ] + }, + options: { + responsive: true, + legend: { + display: false + }, + elements: { + line: { + borderColor: '#800', + borderWidth: 1 + }, + point: { + radius: 0 + } + }, + tooltips: { + mode: 'index', + intersect: false + }, + hover: { + mode: 'nearest', + intersect: true + }, + scales: { + yAxes: [ + { + display: false + } + ], + xAxes: [ + { + display: false + } + ] + }, + interaction: { + intersect: false, + mode: 'index', + }, + } + }); + + + }); diff --git a/application/Dashboard/DashboardController.php b/application/Dashboard/DashboardController.php index 5c9d92305..5adff48a1 100644 --- a/application/Dashboard/DashboardController.php +++ b/application/Dashboard/DashboardController.php @@ -53,6 +53,7 @@ class DashboardController extends mfBaseController { $max_connections = $this->getTotalHomes($campaign_ids); $count_orders = PreorderModel::count(["preordercampaign_id" => $campaign_ids, "deleted" => 0]); + $weekly_orders = $this->getWeeklyOrders($campaign_ids); $status_connected_single = PreorderModel::count(["preordercampaign_id" => $campaign_ids, "deleted" => 0, "status_code" => 244]); $status_connected_multi = PreorderModel::count(["preordercampaign_id" => $campaign_ids, "deleted" => 0, "status_code" => 245]); @@ -71,7 +72,8 @@ class DashboardController extends mfBaseController { $max_connections = $this->getTotalHomes($campaign_ids); $count_orders = PreorderModel::count(["preordercampaign_id" => $campaign_ids, "deleted" => 0]); - + $weekly_orders = $this->getWeeklyOrders($campaign_ids); + $status_connected_single = PreorderModel::count(["preordercampaign_id" => $campaign_ids, "deleted" => 0, "status_code" => 244]); $status_connected_multi = PreorderModel::count(["preordercampaign_id" => $campaign_ids, "deleted" => 0, "status_code" => 245]); @@ -86,6 +88,8 @@ class DashboardController extends mfBaseController { $this->layout()->set("max_connections", $max_connections); $this->layout()->set("count_orders", $count_orders); + $this->layout()->set("weekly_orders", $weekly_orders); + $this->layout()->set("status_connected_single", $status_connected_single); $this->layout()->set("status_connected_multi", $status_connected_multi); $this->layout()->set("status_connected", $status_connected); @@ -132,6 +136,31 @@ class DashboardController extends mfBaseController { return $orders; } + private function getWeeklyOrders($preordercampaign_id = []) { + $orders = []; + + $week = new DateTime("now - 52 weeks"); + $start = $week->getTimestamp(); + + for($w = 1; $w <= 52; $w++) { + $week->modify("+1 week"); + $end = $week->getTimestamp(); + + /*$week = $now->modify("-$w weeks"); + $week_before = $week->modify("-1 weeks"); + $this->log->debug("now: ".$now->getTimestamp()." | week ".$week->getTimestamp()." | before: ".$week_before->getTimestamp());*/ + + $where = "AND (tt_preorder.`create` > $start AND tt_preorder.`create` <= $end)"; + + $count = PreorderModel::count(["preordercampaign_id" => $preordercampaign_id, "deleted" => 0, "add-where" => $where]); + $orders[$week->getTimestamp()] = $count; + $start = $end; + } + + return $orders; + //var_dump($orders);exit; + } + protected function pdfAction() { $order = new Order(7); $owner = new Address(1);