From b6f884805500525ccfd46fed0f24653c0778cb8d Mon Sep 17 00:00:00 2001 From: myqnrrhmn Date: Mon, 28 Apr 2025 08:57:32 +0700 Subject: [PATCH] chore: add value to recap content and media order statistic in dashboard overview --- .../Dashboard/OverviewController.php | 28 ++++++++++++++++++- .../views/dashboard/overview/index.blade.php | 22 +++++++++++++-- .../app/overview-statistics.blade.php | 4 +-- 3 files changed, 49 insertions(+), 5 deletions(-) diff --git a/app/Http/Controllers/Dashboard/OverviewController.php b/app/Http/Controllers/Dashboard/OverviewController.php index 9d642f3..e50c27b 100644 --- a/app/Http/Controllers/Dashboard/OverviewController.php +++ b/app/Http/Controllers/Dashboard/OverviewController.php @@ -3,10 +3,12 @@ namespace App\Http\Controllers\Dashboard; use App\Http\Controllers\Controller; +use App\Models\ContentRecap; use App\Models\Cooperation; use App\Models\IssueManagement; use App\Models\Media; use App\Models\MediaMonitoring; +use App\Models\MediaOrder; use App\Models\Order; use App\Models\User; use Illuminate\Http\Request; @@ -78,9 +80,33 @@ public function index(){ $data['instagramMediaMonitoring'] = $mediaMonitoringCount->get('instagram', 0); $data['tiktokMediaMonitoring'] = $mediaMonitoringCount->get('tiktok', 0); $data['cetakMediaMonitoring'] = $mediaMonitoringCount->get('cetak', 0); - // Akhir Statistik Monitoring Media + // Statistik Media Order + $mediaOrder = MediaOrder::select('status', DB::raw('count(*) as total')) + ->groupBy('status') + ->pluck('total', 'status'); + + $data['waitingMediaOrder'] = $mediaOrder[0] ?? 0; // Status 0 = menunggu + $data['acceptedMediaOrder'] = $mediaOrder[1] ?? 0; // Status 1 = diterima + $data['rejectedMediaOrder'] = $mediaOrder[2] ?? 0; // Status 2 = ditolak + // Akhir Statistik Media Order + + + // Statistik Rekap Konten + $contentRecap = ContentRecap::all(); + $contentRecapCount = $contentRecap->groupBy('channel')->map(function ($group) { + return $group->count(); + }); + $data['facebookContentRecap'] = $contentRecapCount->get('facebook', 0); + $data['twitterContentRecap'] = $contentRecapCount->get('twitter', 0); + $data['websiteContentRecap'] = $contentRecapCount->get('website', 0); + $data['youtubeContentRecap'] = $contentRecapCount->get('youtube', 0); + $data['instagramContentRecap'] = $contentRecapCount->get('instagram', 0); + $data['tiktokContentRecap'] = $contentRecapCount->get('tiktok', 0); + $data['cetakContentRecap'] = $contentRecapCount->get('cetak', 0); + // Akhir Statistik Rekap Konten + // Data kalender pengajuan kerjasama diff --git a/resources/views/dashboard/overview/index.blade.php b/resources/views/dashboard/overview/index.blade.php index 9829c51..e5bc06f 100644 --- a/resources/views/dashboard/overview/index.blade.php +++ b/resources/views/dashboard/overview/index.blade.php @@ -188,6 +188,24 @@ Facebook +
  • +
    + + Twitter +
    +
  • +
  • +
    + + Website +
    +
  • +
  • +
    + + YouTube +
    +
  • @@ -202,8 +220,8 @@
  • - - Twitter + + Cetak
  • diff --git a/resources/views/partials/app/overview-statistics.blade.php b/resources/views/partials/app/overview-statistics.blade.php index a1ccd7f..a29eb24 100644 --- a/resources/views/partials/app/overview-statistics.blade.php +++ b/resources/views/partials/app/overview-statistics.blade.php @@ -731,7 +731,7 @@ function ecommerceBarS1(selector, set_data) { datasets: [{ borderColor: "#fff", background: ["#FFB200", "#4F75FF", "#E50046"], - data: [100, 100, 100] + data: ["{{$waitingMediaOrder}}", "{{$acceptedMediaOrder}}", "{{$rejectedMediaOrder}}"] }] }; @@ -742,7 +742,7 @@ function ecommerceBarS1(selector, set_data) { datasets: [{ borderColor: "#fff", background: ["#1877F2", "#1DA1F2", "#28A745", "#FF0000", "#E4405F", "#00F2EA", "#333333"], - data: [100, 100, 100, 100, 100, 100, 100] + data: ["{{ $facebookContentRecap }}", "{{ $twitterContentRecap }}", "{{ $websiteContentRecap }}", "{{ $youtubeContentRecap }}", "{{ $instagramContentRecap }}", "{{ $tiktokContentRecap }}", "{{ $cetakContentRecap }}"] }] };