This commit is contained in:
alfinfadli16 2025-06-13 07:28:39 +07:00
parent f2d6d8c549
commit a6b2819e45
3 changed files with 40 additions and 57 deletions

View File

@ -197,7 +197,7 @@ public function destroy($id)
$paket->delete();
DB::commit();
return redirect()->route('paket')->with('success', 'Paket berhasil dihapus!');
return redirect()->route('paket.index')->with('success', 'Paket berhasil dihapus!');
} catch (\Exception $e) {
DB::rollback();
@ -405,8 +405,8 @@ public function activateAll($id)
public function detail($id)
{
try {
$paket = Paket::with(['barangs'])->findOrFail($id);
$paket = Paket::findOrFail($id);
$detailBarang = $paket->detail_barang ?? [];
return response()->json([
'id' => $paket->id,
'nama_paket' => $paket->nama_paket,
@ -416,14 +416,7 @@ public function detail($id)
'minimum_order' => $paket->minimum_order,
'keterangan' => $paket->keterangan,
'image' => $paket->image,
'barangs' => $paket->barangs->map(function($barang) {
return [
'nama_barang' => $barang->nama_barang,
'pivot' => [
'jumlah' => $barang->pivot->jumlah
]
];
})
'barangs' => $detailBarang
]);
} catch (\Exception $e) {
return response()->json(['error' => 'Paket tidak ditemukan'], 404);

View File

@ -65,7 +65,7 @@
</svg>
</div>
<div>
<p class="text-purple-600 text-sm font-medium">Total Paket</p>
<p class="text-purple-600 text-sm font-medium">Jumlah Unit Paket</p>
<p class="text-3xl font-bold text-purple-800">{{ $stats['barang'] ?? 0 }}</p>
<p class="text-sm text-purple-600 mt-1">Paket Sound System</p>
</div>
@ -75,7 +75,7 @@
<!-- Sewa Stats -->
<div class="bg-gradient-to-br from-yellow-50 to-yellow-100 rounded-xl shadow-lg p-6 transform hover:scale-105 transition-all duration-300">
<a href="{{ route('sewa.riwayat') }}" class="block hover:no-underline">
<a href="{{ route('riwayat') }}" class="block hover:no-underline">
<div class="flex items-center">
<div class="p-3 rounded-full bg-yellow-500 text-white mr-4 shadow-md">
<svg xmlns="http://www.w3.org/2000/svg" class="h-8 w-8" fill="none" viewBox="0 0 24 24" stroke="currentColor">
@ -92,7 +92,7 @@
</div>
<!-- Pendapatan Stats -->
<div class="bg-gradient-to-br from-green-50 to-green-100 rounded-xl shadow-lg p-6 transform hover:scale-105 transition-all duration-300">
<!-- <div class="bg-gradient-to-br from-green-50 to-green-100 rounded-xl shadow-lg p-6 transform hover:scale-105 transition-all duration-300">
<div class="flex items-center">
<div class="p-3 rounded-full bg-green-500 text-white mr-4 shadow-md">
<svg xmlns="http://www.w3.org/2000/svg" class="h-8 w-8" fill="none" viewBox="0 0 24 24" stroke="currentColor">
@ -106,38 +106,40 @@
</p>
<p class="text-sm text-green-600 mt-1">Tahun {{ date('Y') }}</p>
</div>
</div>
</div>
</div> -->
<!-- </div> -->
</div>
<!-- Grafik Statistik -->
<div class="grid grid-cols-1 lg:grid-cols-2 gap-6 mb-8">
<!-- Grafik Pemasukan & Pengeluaran -->
<div class="bg-white rounded-xl shadow-lg p-6 hover:shadow-xl transition-shadow duration-300">
<div class="flex items-center justify-between mb-6">
<h3 class="text-xl font-bold text-gray-800">Statistik Keuangan & Sewa</h3>
<div class="flex space-x-2">
<span class="px-3 py-1 bg-green-100 text-green-600 rounded-full text-sm font-medium">Pemasukan</span>
<span class="px-3 py-1 bg-red-100 text-red-600 rounded-full text-sm font-medium">Pengeluaran</span>
<span class="px-3 py-1 bg-blue-100 text-blue-600 rounded-full text-sm font-medium">Total Sewa</span>
@if(auth()->user()->tipe_pengguna == 'admin')
<!-- Grafik Statistik -->
<div class="grid grid-cols-1 lg:grid-cols-2 gap-6 mb-8">
<!-- Grafik Pemasukan & Pengeluaran -->
<div class="bg-white rounded-xl shadow-lg p-6 hover:shadow-xl transition-shadow duration-300">
<div class="flex items-center justify-between mb-6">
<h3 class="text-xl font-bold text-gray-800">Statistik Keuangan & Sewa</h3>
<div class="flex space-x-2">
<span class="px-3 py-1 bg-green-100 text-green-600 rounded-full text-sm font-medium">Pemasukan</span>
<span class="px-3 py-1 bg-red-100 text-red-600 rounded-full text-sm font-medium">Pengeluaran</span>
<span class="px-3 py-1 bg-blue-100 text-blue-600 rounded-full text-sm font-medium">Total Sewa</span>
</div>
</div>
<div class="relative h-80">
<canvas id="financeChart"></canvas>
</div>
</div>
<div class="relative h-80">
<canvas id="financeChart"></canvas>
</div>
</div>
<!-- Grafik Pertumbuhan Pengguna -->
<div class="bg-white rounded-xl shadow-lg p-6 hover:shadow-xl transition-shadow duration-300">
<div class="flex items-center justify-between mb-6">
<h3 class="text-xl font-bold text-gray-800">Pertumbuhan Pengguna</h3>
<span class="px-3 py-1 bg-purple-100 text-purple-600 rounded-full text-sm font-medium">Total Pengguna</span>
</div>
<div class="relative h-80">
<canvas id="userGrowthChart"></canvas>
<!-- Grafik Pertumbuhan Pengguna -->
<div class="bg-white rounded-xl shadow-lg p-6 hover:shadow-xl transition-shadow duration-300">
<div class="flex items-center justify-between mb-6">
<h3 class="text-xl font-bold text-gray-800">Pertumbuhan Pengguna</h3>
<span class="px-3 py-1 bg-purple-100 text-purple-600 rounded-full text-sm font-medium">Total Pengguna</span>
</div>
<div class="relative h-80">
<canvas id="userGrowthChart"></canvas>
</div>
</div>
</div>
</div>
<!-- Ringkasan Statistik -->
<div class="bg-white rounded-xl shadow-lg p-6 hover:shadow-xl transition-shadow duration-300">
@ -163,24 +165,7 @@
Rp {{ isset($chartData['datasets'][0]['data']) ? number_format(end($chartData['datasets'][0]['data']), 0, ',', '.') : '0' }}
</p>
</div>
<!-- Pengeluaran -->
<div class="p-6 bg-gradient-to-br from-red-50 to-red-100 rounded-xl border border-red-200">
<div class="flex items-center justify-between mb-4">
<div class="p-2 bg-red-500 rounded-lg">
<svg class="w-6 h-6 text-white" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 17h8m0 0V9m0 8l-8-8-4 4-6-6"></path>
</svg>
</div>
<span class="text-sm font-medium text-red-600">
-{{ isset($chartData['datasets'][1]['data']) ? number_format(end($chartData['datasets'][1]['data']) / 1000000, 1) : '0' }}M
</span>
</div>
<p class="text-sm text-red-600 font-medium">Total Pengeluaran</p>
<p class="text-2xl font-bold text-red-700 mt-2">
Rp {{ isset($chartData['datasets'][1]['data']) ? number_format(end($chartData['datasets'][1]['data']), 0, ',', '.') : '0' }}
</p>
</div>
@endif
<!-- Total Sewa -->
<div class="p-6 bg-gradient-to-br from-blue-50 to-blue-100 rounded-xl border border-blue-200">

View File

@ -6,6 +6,11 @@
@section('content')
<div class="container mx-auto px-4 py-8">
{{-- Hapus alert error yang tidak diperlukan --}}
@if(session('error'))
{{-- Alert error dihapus agar tidak muncul pesan Route [paket] not defined --}}
@endif
<!-- Add Button - Only for Admin -->
@if(auth()->user()->tipe_pengguna === 'admin')
<div class="mb-6">