From 56e82c580e42093369393a9c99e5d521404a889f Mon Sep 17 00:00:00 2001 From: Dennis Eichhorn Date: Fri, 28 May 2021 20:28:40 +0200 Subject: [PATCH] general fixes and tpl additions --- Controller/BackendController.php | 30 ++ Theme/Backend/Lang/ar.lang.php | 0 Theme/Backend/Lang/cs.lang.php | 0 Theme/Backend/Lang/da.lang.php | 0 Theme/Backend/Lang/de.lang.php | 0 Theme/Backend/Lang/el.lang.php | 0 Theme/Backend/Lang/en.lang.php | 0 Theme/Backend/Lang/es.lang.php | 0 Theme/Backend/Lang/fi.lang.php | 0 Theme/Backend/Lang/fr.lang.php | 0 Theme/Backend/Lang/hu.lang.php | 0 Theme/Backend/Lang/it.lang.php | 0 Theme/Backend/Lang/ja.lang.php | 0 Theme/Backend/Lang/ko.lang.php | 0 Theme/Backend/Lang/no.lang.php | 0 Theme/Backend/Lang/pl.lang.php | 0 Theme/Backend/Lang/pt.lang.php | 0 Theme/Backend/Lang/ru.lang.php | 0 Theme/Backend/Lang/sv.lang.php | 0 Theme/Backend/Lang/th.lang.php | 0 Theme/Backend/Lang/tr.lang.php | 0 Theme/Backend/Lang/uk.lang.php | 0 Theme/Backend/Lang/zh.lang.php | 0 .../Backend/sales-analysis-dashboard.tpl.php | 380 ++++++++++++++++++ 24 files changed, 410 insertions(+) mode change 100644 => 100755 Theme/Backend/Lang/ar.lang.php mode change 100644 => 100755 Theme/Backend/Lang/cs.lang.php mode change 100644 => 100755 Theme/Backend/Lang/da.lang.php mode change 100644 => 100755 Theme/Backend/Lang/de.lang.php mode change 100644 => 100755 Theme/Backend/Lang/el.lang.php mode change 100644 => 100755 Theme/Backend/Lang/en.lang.php mode change 100644 => 100755 Theme/Backend/Lang/es.lang.php mode change 100644 => 100755 Theme/Backend/Lang/fi.lang.php mode change 100644 => 100755 Theme/Backend/Lang/fr.lang.php mode change 100644 => 100755 Theme/Backend/Lang/hu.lang.php mode change 100644 => 100755 Theme/Backend/Lang/it.lang.php mode change 100644 => 100755 Theme/Backend/Lang/ja.lang.php mode change 100644 => 100755 Theme/Backend/Lang/ko.lang.php mode change 100644 => 100755 Theme/Backend/Lang/no.lang.php mode change 100644 => 100755 Theme/Backend/Lang/pl.lang.php mode change 100644 => 100755 Theme/Backend/Lang/pt.lang.php mode change 100644 => 100755 Theme/Backend/Lang/ru.lang.php mode change 100644 => 100755 Theme/Backend/Lang/sv.lang.php mode change 100644 => 100755 Theme/Backend/Lang/th.lang.php mode change 100644 => 100755 Theme/Backend/Lang/tr.lang.php mode change 100644 => 100755 Theme/Backend/Lang/uk.lang.php mode change 100644 => 100755 Theme/Backend/Lang/zh.lang.php diff --git a/Controller/BackendController.php b/Controller/BackendController.php index 4312073..d75f99a 100755 --- a/Controller/BackendController.php +++ b/Controller/BackendController.php @@ -18,6 +18,7 @@ use phpOMS\Contract\RenderableInterface; use phpOMS\Message\RequestAbstract; use phpOMS\Message\ResponseAbstract; use phpOMS\Views\View; +use phpOMS\Asset\AssetType; /** * Sales class. @@ -34,10 +35,39 @@ final class BackendController extends Controller */ public function viewDashboard(RequestAbstract $request, ResponseAbstract $response, $data = null) : RenderableInterface { + $head = $response->get('Content')->getData('head'); + $head->addAsset(AssetType::CSS, 'Resources/chartjs/Chartjs/chart.css'); + $head->addAsset(AssetType::JSLATE, 'Resources/chartjs/Chartjs/chart.js'); + $head->addAsset(AssetType::JSLATE, 'Modules/ClientManagement/Controller.js', ['type' => 'module']); + $view = new View($this->app->l11nManager, $request, $response); $view->setTemplate('/Modules/Sales/Theme/Backend/sales-analysis-dashboard'); $view->addData('nav', $this->app->moduleManager->get('Navigation')->createNavigationMid(1001602001, $request, $response)); + ///// + $monthlySalesCustomer = []; + for ($i = 1; $i < 13; ++$i) { + $monthlySalesCustomer[] = [ + 'net_sales' => $sales = \mt_rand(1200000000, 2000000000), + 'customers' => \mt_rand(200, 400), + 'year' => 2020, + 'month' => $i, + ]; + } + + $view->addData('monthlySalesCustomer', $monthlySalesCustomer); + + $annualSalesCustomer = []; + for ($i = 1; $i < 11; ++$i) { + $annualSalesCustomer[] = [ + 'net_sales' => $sales = \mt_rand(1200000000, 2000000000) * 12, + 'customers' => \mt_rand(200, 400) * 6, + 'year' => 2020 - 10 + $i, + ]; + } + + $view->addData('annualSalesCustomer', $annualSalesCustomer); + return $view; } } diff --git a/Theme/Backend/Lang/ar.lang.php b/Theme/Backend/Lang/ar.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/cs.lang.php b/Theme/Backend/Lang/cs.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/da.lang.php b/Theme/Backend/Lang/da.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/de.lang.php b/Theme/Backend/Lang/de.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/el.lang.php b/Theme/Backend/Lang/el.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/en.lang.php b/Theme/Backend/Lang/en.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/es.lang.php b/Theme/Backend/Lang/es.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/fi.lang.php b/Theme/Backend/Lang/fi.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/fr.lang.php b/Theme/Backend/Lang/fr.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/hu.lang.php b/Theme/Backend/Lang/hu.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/it.lang.php b/Theme/Backend/Lang/it.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/ja.lang.php b/Theme/Backend/Lang/ja.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/ko.lang.php b/Theme/Backend/Lang/ko.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/no.lang.php b/Theme/Backend/Lang/no.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/pl.lang.php b/Theme/Backend/Lang/pl.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/pt.lang.php b/Theme/Backend/Lang/pt.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/ru.lang.php b/Theme/Backend/Lang/ru.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/sv.lang.php b/Theme/Backend/Lang/sv.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/th.lang.php b/Theme/Backend/Lang/th.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/tr.lang.php b/Theme/Backend/Lang/tr.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/uk.lang.php b/Theme/Backend/Lang/uk.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/Lang/zh.lang.php b/Theme/Backend/Lang/zh.lang.php old mode 100644 new mode 100755 diff --git a/Theme/Backend/sales-analysis-dashboard.tpl.php b/Theme/Backend/sales-analysis-dashboard.tpl.php index 242bfda..9223790 100755 --- a/Theme/Backend/sales-analysis-dashboard.tpl.php +++ b/Theme/Backend/sales-analysis-dashboard.tpl.php @@ -12,8 +12,388 @@ */ declare(strict_types=1); +use phpOMS\Localization\Money; + /** * @var \phpOMS\Views\View $this */ echo $this->getData('nav')->render(); +?> + +
+
+
+
+

getHtml('Current'); ?>

+
+
+ + +
+ +
+ + +
+
+ +

getHtml('Comparison'); ?>

+
+
+ + +
+ +
+ + +
+
+
+
+ +
+
+
+ +
+
+
Actual
+
+
+
Sales MTD:
+
+12.0 %
+
+ +
+
Sales YTD:
+
+1.2 %
+
+ +
+
Gross Profit Current:
+
+12.0 %
+
+ +
+
Gross Profit Previous:
+
+1.2 %
+
+
+
+
+ +
+
+
Budget
+
+
+
Sales MTD:
+
+12.0 %
+
+ +
+
Sales YTD:
+
+1.2 %
+
+ +
+
Gross Profit Current:
+
+12.0 %
+
+ +
+
Gross Profit Budget:
+
+1.2 %
+
+
+
+
+
+ +
+
+
+
+ Sales / Profit - Monthly + +
+ getData('monthlySalesCustomer'); ?> +
+ + + ], + "datasets": [ + { + "label": "getHtml('Profit'); ?>", + "type": "line", + "data": [ + + + ], + "yAxisID": "axis-2", + "fill": false, + "borderColor": "rgb(255, 99, 132)", + "backgroundColor": "rgb(255, 99, 132)", + "tension": 0.0 + }, + { + "label": "getHtml('Sales'); ?>", + "type": "bar", + "data": [ + + + ], + "yAxisID": "axis-1", + "fill": false, + "borderColor": "rgb(54, 162, 235)", + "backgroundColor": "rgb(54, 162, 235)", + "tension": 0.0 + } + ] + }, + "options": { + "title": { + "display": false, + "text": "Sales / Profit" + }, + "scales": { + "yAxes": [ + { + "id": "axis-1", + "display": true, + "position": "left" + }, + { + "id": "axis-2", + "display": true, + "position": "right", + "scaleLabel": { + "display": true, + "labelString": "getHtml('Profit'); ?>" + }, + "gridLines": { + "display": false + } + } + ] + } + } + }'> +
+ + +
+ + + + + + + +
Month + Sales + Customer count +
+ getCurrency(); ?> + + +
Total + getCurrency(); ?> + +
+
+
+
+
+
+ +
+
+
+ Sales / Profit - Annual + +
+ getData('annualSalesCustomer'); ?> +
+ + + ], + "datasets": [ + { + "label": "getHtml('Profit'); ?>", + "type": "line", + "data": [ + + + ], + "yAxisID": "axis-2", + "fill": false, + "borderColor": "rgb(255, 99, 132)", + "backgroundColor": "rgb(255, 99, 132)", + "tension": 0.0 + }, + { + "label": "getHtml('Sales'); ?>", + "type": "bar", + "data": [ + + + ], + "yAxisID": "axis-1", + "fill": false, + "borderColor": "rgb(54, 162, 235)", + "backgroundColor": "rgb(54, 162, 235)", + "tension": 0.0 + } + ] + }, + "options": { + "title": { + "display": false, + "text": "Sales / Profit" + }, + "scales": { + "yAxes": [ + { + "id": "axis-1", + "display": true, + "position": "left" + }, + { + "id": "axis-2", + "display": true, + "position": "right", + "scaleLabel": { + "display": true, + "labelString": "getHtml('Profit'); ?>" + }, + "gridLines": { + "display": false + } + } + ] + } + } + }'> +
+ + +
+ + + + + + +
Year + Sales + Customer count +
+ getCurrency(); ?> + + +
+
+
+
+
+
+
+ +
+
+
+
+ Sales / Attribute + +
+ + + + +
Product + Sales PY + Sales B + Sales A + Diff PY + Diff B +
+
+
+
+ +
+
+
+
+ Sales / Region + +
+ + + + +
Country + Sales PY + Sales B + Sales A + Diff PY + Diff B +
+
+
+
\ No newline at end of file