diff --git a/app/Classes/Modules/ControllersLogic/Dashboard/CbmReportLogic.php b/app/Classes/Modules/ControllersLogic/Dashboard/CbmReportLogic.php
new file mode 100644
index 0000000..2b890a5
--- /dev/null
+++ b/app/Classes/Modules/ControllersLogic/Dashboard/CbmReportLogic.php
@@ -0,0 +1,41 @@
+repository = $repository;
+ }
+
+ public function execute() {
+
+ $cbm = $this->repository->selectRaw('created_at, ((((width/100) * (length/100) * (height/100))) * quantity) as cbm')->whereYear('created_at', '=', Carbon::now()->year)->whereMonth('created_at', '=', Carbon::now()->month)->orderBy('created_at')->get();
+
+ $cbmGroup = $cbm->groupBy(function ($item) {
+ return Carbon::parse($item->created_at)->format('j');
+ });
+
+ $cbmMap = $cbmGroup->map(function ($item){
+ return collect($item)->sum("cbm");
+ })->toArray();
+
+ $report = [];
+ for($x = 1; $x <= Carbon::now()->daysInMonth; $x++){
+ $report[] = isset($cbmMap[$x]) ? $cbmMap[$x] : 0;
+ }
+
+ return $report;
+ }
+}
\ No newline at end of file
diff --git a/app/Classes/Modules/ControllersLogic/Dashboard/CustomerReportLogic.php b/app/Classes/Modules/ControllersLogic/Dashboard/CustomerReportLogic.php
new file mode 100644
index 0000000..ea9d3ca
--- /dev/null
+++ b/app/Classes/Modules/ControllersLogic/Dashboard/CustomerReportLogic.php
@@ -0,0 +1,39 @@
+orderRepository = $orderRepository;
+ $this->companiesRepository = $companiesRepository;
+ }
+
+
+ public function execute() {
+ $active = $this->orderRepository->whereYear('created_at', '=', Carbon::now()->year)->whereMonth('created_at', '=', Carbon::now()->month)->orderBy('company_id')->get()->groupBy('company_id');
+ $company = $this->companiesRepository->count();
+
+ if ($company > $active->count()) $company -= $active->count();
+ else $company = $active->count() - $company;
+
+ return [$active->count(), $company];
+
+ }
+}
\ No newline at end of file
diff --git a/app/Classes/Modules/ControllersLogic/Dashboard/OrdersReportLogic.php b/app/Classes/Modules/ControllersLogic/Dashboard/OrdersReportLogic.php
new file mode 100644
index 0000000..8f1c128
--- /dev/null
+++ b/app/Classes/Modules/ControllersLogic/Dashboard/OrdersReportLogic.php
@@ -0,0 +1,43 @@
+repository = $repository;
+ }
+
+ public function execute() {
+
+ $Orders= $this->repository->whereYear('created_at', '=', Carbon::now()->year)
+ ->whereMonth('created_at', '=', Carbon::now()->month)->orderBy('created_at')->get();
+
+ $group = $Orders->groupBy(function($item) {
+ return Carbon::parse($item->created_at)->format('j');
+ });
+
+ $groupCount = $group->map(function ($item) {
+ return collect($item)->count();
+ })->toArray();
+
+ $report = [];
+ for($x = 1; $x <= Carbon::now()->daysInMonth; $x++) {
+ $report[] = isset($groupCount[$x]) ? $groupCount[$x] : 0;
+
+ }
+ return $report;
+ }
+}
+
diff --git a/app/Classes/Modules/ControllersLogic/Dashboard/OrdersStatusReportLogic.php b/app/Classes/Modules/ControllersLogic/Dashboard/OrdersStatusReportLogic.php
new file mode 100644
index 0000000..8a28a93
--- /dev/null
+++ b/app/Classes/Modules/ControllersLogic/Dashboard/OrdersStatusReportLogic.php
@@ -0,0 +1,39 @@
+repository = $repository;
+ }
+
+ public function execute() {
+ $status = $this->repository->whereNotNull('current_step')->get()->groupBy('current_step');
+ $completed = $this->repository->whereNull('current_step')->where('complete', '=' , 1)->get();
+
+ $statusMap = $status->map(function ($item) {
+ return collect($item)->count();
+ })->toArray();
+
+ $completedArray = ["COMPLETED" => $completed->count()];
+ $combine = $statusMap + $completedArray;
+
+ return [
+ $combine['PS_PROCESSING'],
+ $combine['MS_WAREHOUSE_RECEIVING'],
+ $combine['PS_SHIPPING'],
+ $completedArray['COMPLETED']
+ ];
+ }
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/Dashboard/CbmReportController.php b/app/Http/Controllers/Dashboard/CbmReportController.php
new file mode 100644
index 0000000..804a22a
--- /dev/null
+++ b/app/Http/Controllers/Dashboard/CbmReportController.php
@@ -0,0 +1,13 @@
+execute();
+ }
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/Dashboard/CustomerReportController.php b/app/Http/Controllers/Dashboard/CustomerReportController.php
new file mode 100644
index 0000000..62844a9
--- /dev/null
+++ b/app/Http/Controllers/Dashboard/CustomerReportController.php
@@ -0,0 +1,18 @@
+execute();
+ }
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/Dashboard/OrdersReportController.php b/app/Http/Controllers/Dashboard/OrdersReportController.php
new file mode 100644
index 0000000..0c06a30
--- /dev/null
+++ b/app/Http/Controllers/Dashboard/OrdersReportController.php
@@ -0,0 +1,13 @@
+execute();
+ }
+}
\ No newline at end of file
diff --git a/app/Http/Controllers/Dashboard/OrdersStatusReportController.php b/app/Http/Controllers/Dashboard/OrdersStatusReportController.php
new file mode 100644
index 0000000..6b98efb
--- /dev/null
+++ b/app/Http/Controllers/Dashboard/OrdersStatusReportController.php
@@ -0,0 +1,12 @@
+execute();
+ }
+}
\ No newline at end of file
diff --git a/resources/assets/vue/app.js b/resources/assets/vue/app.js
index ad30f62..0a37f2f 100644
--- a/resources/assets/vue/app.js
+++ b/resources/assets/vue/app.js
@@ -88,6 +88,11 @@ Vue.component('notification-component', require('./components/common/Notificatio
Vue.component('company-error-notification-component', require('./components/company/notifications/CompanyErrorComponent.vue'));
+Vue.component('cbm-order-chart-component', require('./components/dashboard/elements/CbmVsOrdersChartComponent.vue'));
+Vue.component('customer-chart-component', require('./components/dashboard/elements/CustomerChartComponent.vue'));
+Vue.component('order-status-chart-component', require('./components/dashboard/elements/OrderStatusChartComponent.vue'));
+
+
window.Event = new Vue();
const header = new Vue({
diff --git a/resources/assets/vue/components/dashboard/elements/CbmVsOrdersChartComponent.vue b/resources/assets/vue/components/dashboard/elements/CbmVsOrdersChartComponent.vue
new file mode 100644
index 0000000..7d327a9
--- /dev/null
+++ b/resources/assets/vue/components/dashboard/elements/CbmVsOrdersChartComponent.vue
@@ -0,0 +1,117 @@
+
+