73 lines
5.1 KiB
PHP
73 lines
5.1 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Admin;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Models\TransaksiBuket;
|
|
use App\Models\BookingFoto;
|
|
use Carbon\Carbon;
|
|
use Illuminate\Support\Facades\DB;
|
|
use App\Services\DashboardService;
|
|
|
|
class BerandaController extends Controller
|
|
{
|
|
public function index()
|
|
{
|
|
$today = Carbon::today();
|
|
$stat = DashboardService::getStats();
|
|
$buketToday = TransaksiBuket::with(['pelanggan', 'buket'])->whereDate('tgl_ambil', $today)->where('status_transaksi', 'diterima')->get();
|
|
$fotoToday = BookingFoto::with(['pelanggan', 'paketFoto'])->whereDate('tgl_booking', $today)->where('status_booking', 'diterima')->orderBy('jam_mulai', 'asc')->get();
|
|
$pesananBuket = TransaksiBuket::where('status_transaksi', 'menunggu_verifikasi')->latest()->get();
|
|
$pesananFoto = BookingFoto::where('status_booking', 'menunggu_verifikasi')->latest()->get();
|
|
return view('admin.beranda.index', compact('stat', 'buketToday', 'fotoToday', 'pesananBuket', 'pesananFoto'));
|
|
}
|
|
// public function index()
|
|
// {
|
|
// $now = Carbon::now();
|
|
// $lastMonth = Carbon::now()->subMonth();
|
|
// $today = Carbon::today();
|
|
// $getGrowth = function ($current, $previous) {
|
|
// if ($previous <= 0) return $current > 0 ? 100 : 0;
|
|
// return round((($current - $previous) / $previous) * 100, 1);
|
|
// };
|
|
// $currPendapatan = TransaksiBuket::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->where('status_transaksi', 'diterima')->sum('total_bayar') +
|
|
// BookingFoto::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->where('status_booking', 'diterima')->sum('total_bayar');
|
|
|
|
// $currMasuk = TransaksiBuket::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->count() +
|
|
// BookingFoto::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->count();
|
|
|
|
// $currSelesai = TransaksiBuket::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->where('status_transaksi', 'selesai')->count() +
|
|
// BookingFoto::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->where('status_booking', 'selesai')->count();
|
|
|
|
// $currBatal = TransaksiBuket::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->where('status_transaksi', 'ditolak')->count() +
|
|
// BookingFoto::whereMonth('created_at', $now->month)->whereYear('created_at', $now->year)->where('status_booking', 'ditolak')->count();
|
|
// $prevPendapatan = TransaksiBuket::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->where('status_transaksi', 'diterima')->sum('total_bayar') +
|
|
// BookingFoto::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->where('status_booking', 'diterima')->sum('total_bayar');
|
|
|
|
// $prevMasuk = TransaksiBuket::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->count() +
|
|
// BookingFoto::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->count();
|
|
|
|
// $prevSelesai = TransaksiBuket::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->where('status_transaksi', 'selesai')->count() +
|
|
// BookingFoto::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->where('status_booking', 'selesai')->count();
|
|
|
|
// $prevBatal = TransaksiBuket::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->where('status_transaksi', 'ditolak')->count() +
|
|
// BookingFoto::whereMonth('created_at', $lastMonth->month)->whereYear('created_at', $lastMonth->year)->where('status_booking', 'ditolak')->count();
|
|
// $stat = [
|
|
// 'pendapatan' => $currPendapatan,
|
|
// 'pendapatan_grow' => $getGrowth($currPendapatan, $prevPendapatan),
|
|
// 'masuk_count' => $currMasuk,
|
|
// 'masuk_grow' => $getGrowth($currMasuk, $prevMasuk),
|
|
// 'selesai_count' => $currSelesai,
|
|
// 'selesai_grow' => $getGrowth($currSelesai, $prevSelesai),
|
|
// 'batal_count' => $currBatal,
|
|
// 'batal_grow' => $getGrowth($currBatal, $prevBatal),
|
|
// ];
|
|
// $buketToday = TransaksiBuket::with(['pelanggan', 'buket'])->whereDate('tgl_ambil', $today)->where('status_transaksi', 'diterima')->get();
|
|
// $fotoToday = BookingFoto::with(['pelanggan', 'paketFoto'])->whereDate('tgl_booking', $today)->where('status_booking', 'diterima')->orderBy('jam_mulai', 'asc')->get();
|
|
// $pesananBuket = TransaksiBuket::with(['pelanggan', 'buket'])->where('status_transaksi', 'menunggu_verifikasi')->latest()->get();
|
|
// $pesananFoto = BookingFoto::with(['pelanggan', 'paketFoto'])->where('status_booking', 'menunggu_verifikasi')->latest()->get();
|
|
|
|
// return view('admin.beranda.index', compact('stat', 'buketToday', 'fotoToday', 'pesananBuket', 'pesananFoto'));
|
|
// }
|
|
}
|