@extends('layouts.app') @section('content') @php $bookingStatusLabels = [ 'draft' => 'Draf', 'confirmed' => 'Dikonfirmasi', 'completed' => 'Selesai', 'picked_up' => 'Sudah Diambil', 'cancelled' => 'Dibatalkan', ]; @endphp

📊 Laporan Penjualan

Analisis transaksi dan pendapatan

Periode: {{ \Carbon\Carbon::parse($startDate)->format('d M Y') }} - {{ \Carbon\Carbon::parse($endDate)->format('d M Y') }}

Filter tipe: {{ strtoupper($orderType ?? 'all') }} @if(!empty($bookingStatus)) • Status booking: {{ $bookingStatusLabels[$bookingStatus] ?? $bookingStatus }} @endif

Total Penjualan
Rp {{ number_format($summary['total_amount'], 0, ',', '.') }}
Tunai: Rp {{ number_format($summary['total_received'], 0, ',', '.') }}
Piutang: Rp {{ number_format($summary['total_receivables'], 0, ',', '.') }}
Beban Operasional
Rp {{ number_format($summary['total_expenses'], 0, ',', '.') }}
Pembelian Stok
Rp {{ number_format($summary['total_purchases'], 0, ',', '.') }}
Laba Bersih
Rp {{ number_format($summary['net_income'], 0, ',', '.') }}
Transaksi Booking
{{ number_format($summary['booking_transactions'] ?? 0) }}
Selesai: {{ number_format($summary['booking_completed'] ?? 0) }}
Pending: {{ number_format($summary['booking_pending'] ?? 0) }}

Detail Transaksi

@forelse($transactions as $transaction)

{{ $transaction->transaction_code }}

{{ $transaction->created_at->format('d M Y, H:i') }}

{{ ucfirst($transaction->payment_method) }}

Total

Rp {{ number_format($transaction->total_amount, 0, ',', '.') }}

@if($transaction->note)
Ket: {{ $transaction->note }}
@endif

Kasir:

{{ $transaction->user->name }}

@empty

Tidak ada transaksi

Tidak ada transaksi pada periode yang dipilih.

@endforelse
@forelse($transactions as $transaction)

{{ $transaction->transaction_code }}

{{ $transaction->created_at->format('d M Y, H:i') }}

{{ ucfirst($transaction->payment_method) }}

Total

Rp {{ number_format($transaction->total_amount, 0, ',', '.') }}

Subtotal:

Rp {{ number_format($transaction->subtotal, 0, ',', '.') }}

Diskon:

- Rp {{ number_format($transaction->discount, 0, ',', '.') }}

Pajak Marketplace @if(($transaction->marketplace_tax_mode ?? 'global') === 'global') ({{ rtrim(rtrim(number_format((float) ($transaction->marketplace_tax_rate ?? 0), 2, ',', '.'), '0'), ',') }}%) @else (Per Item) @endif

{{ $transaction->marketplace_tax_burden === 'customer' ? '+' : '-' }} Rp {{ number_format($transaction->marketplace_tax_amount ?? 0, 0, ',', '.') }}

PPN ({{ rtrim(rtrim(number_format((float) ($transaction->ppn_tax_rate ?? 0), 2, ',', '.'), '0'), ',') }}%)

{{ $transaction->ppn_tax_burden === 'customer' ? '+' : '-' }} Rp {{ number_format($transaction->ppn_tax_amount ?? 0, 0, ',', '.') }}

Kasir:

{{ $transaction->user->name }}

@empty

Tidak ada transaksi

Tidak ada transaksi pada periode yang dipilih.

@endforelse
@forelse($transactions as $transaction)

{{ $transaction->transaction_code }}

{{ $transaction->created_at->format('d M Y, H:i') }}

@if($transaction->status == 'cancelled') DIBATALKAN @else {{ ucfirst($transaction->payment_method) }} @endif

Total

Rp {{ number_format($transaction->total_amount, 0, ',', '.') }}

Subtotal:

Rp {{ number_format($transaction->subtotal, 0, ',', '.') }}

Diskon:

- Rp {{ number_format($transaction->discount, 0, ',', '.') }}

Pajak Marketplace @if(($transaction->marketplace_tax_mode ?? 'global') === 'global') ({{ rtrim(rtrim(number_format((float) ($transaction->marketplace_tax_rate ?? 0), 2, ',', '.'), '0'), ',') }}%) @else (Per Item) @endif

{{ $transaction->marketplace_tax_burden === 'customer' ? '+' : '-' }} Rp {{ number_format($transaction->marketplace_tax_amount ?? 0, 0, ',', '.') }}

PPN ({{ rtrim(rtrim(number_format((float) ($transaction->ppn_tax_rate ?? 0), 2, ',', '.'), '0'), ',') }}%)

{{ $transaction->ppn_tax_burden === 'customer' ? '+' : '-' }} Rp {{ number_format($transaction->ppn_tax_amount ?? 0, 0, ',', '.') }}

Kasir:

{{ $transaction->user->name }}

@empty

Tidak ada transaksi

Tidak ada transaksi pada periode yang dipilih.

@endforelse
{{ $transactions->appends(request()->query())->links() }}

🔻 Rincian Pengeluaran Operasional

@forelse($expenses as $expense)

{{ \Carbon\Carbon::parse($expense->date)->isoFormat('D MMM YYYY') }}

{{ $expense->description }}

Rp {{ number_format($expense->amount, 0, ',', '.') }}
Dicatat: {{ $expense->user->name ?? '-' }}
@empty

Tidak ada data pengeluaran.

@endforelse
{{ $expenses->appends(request()->query())->links() }}

📦 Rincian Pembelian Stok

@forelse($purchases as $purchase)
{{ \Carbon\Carbon::parse($purchase->date)->isoFormat('D MMM YYYY') }}
Items:
    @foreach($purchase->items as $item)
  • {{ $item->product->name ?? 'Produk Dihapus' }} (x{{ $item->quantity }})
  • @endforeach

Supplier: {{ $purchase->supplier->name ?? 'Umum' }}

Rp {{ number_format($purchase->total_amount, 0, ',', '.') }}
@if($purchase->note)
Note: {{ $purchase->note }}
@endif
Dicatat: {{ $purchase->user->name ?? '-' }}
@empty

Tidak ada data pembelian stok.

@endforelse
{{ $purchases->appends(request()->query())->links() }}
@endsection