@extends('layouts.app') @section('title', 'Occupancy Report') @section('nav_reports', 'bg-teal-50 text-teal-700 font-semibold') @section('page_title', 'Reports') @section('page_subtitle', 'Occupancy — ' . \Carbon\Carbon::parse($from)->format('M j') . ' – ' . \Carbon\Carbon::parse($to)->format('M j, Y')) @section('content') {{-- ===== TABS + DATE PICKER ===== --}} @include('reports._toolbar', ['active' => 'occupancy', 'from' => $from, 'to' => $to, 'date' => $from]) {{-- ===== SUMMARY TILES ===== --}}

Avg Occupancy

{{ number_format($avgOcc, 1) }}%

{{ $totalOccupiedNights }} of {{ $availableRoomNights }} room-nights

Total Revenue

₱{{ number_format($totalRevenue, 0) }}

over {{ $daysCount }} day{{ $daysCount !== 1 ? 's' : '' }}

ADR (Avg Daily Rate)

₱{{ number_format($avgAdr, 0) }}

per occupied room/night

RevPAR (Rev per Avail. Room)

₱{{ number_format($avgRevpar, 0) }}

{{ $totalRooms }} available rooms

{{-- ===== DAILY TABLE ===== --}}

Daily Breakdown

Revenue distributed evenly across each night of each stay

{{ $totalRooms }} rooms available
@if(empty($rows))

No data for this period.

@else
@foreach($rows as $row) @php $isToday = $row['date']->isToday(); $isWeekend = $row['date']->isWeekend(); $occ = $row['occ_pct']; $occColor = $occ >= 80 ? 'bg-green-500' : ($occ >= 60 ? 'bg-teal-500' : ($occ >= 40 ? 'bg-amber-400' : 'bg-gray-300')); $occText = $occ >= 80 ? 'text-green-700' : ($occ >= 60 ? 'text-teal-700' : ($occ >= 40 ? 'text-amber-700' : 'text-gray-500')); @endphp @endforeach {{-- Totals row --}}
Date Occupied Occupancy % Revenue ADR RevPAR
@if($isToday) Today @endif {{ $row['date']->format('D, M j') }}
{{ $row['occupied'] }} / {{ $totalRooms }}
{{ number_format($occ, 1) }}%
{{ $row['revenue'] > 0 ? '₱' . number_format($row['revenue'], 0) : '—' }} {{ $row['adr'] > 0 ? '₱' . number_format($row['adr'], 0) : '—' }} {{ $row['revpar'] > 0 ? '₱' . number_format($row['revpar'], 0) : '—' }}
Period Total / Avg {{ $totalOccupiedNights }} nts @php $oc = $avgOcc; $cl = $oc >= 80 ? 'bg-green-500' : ($oc >= 60 ? 'bg-teal-500' : ($oc >= 40 ? 'bg-amber-400' : 'bg-gray-300')); $ct = $oc >= 80 ? 'text-green-700' : ($oc >= 60 ? 'text-teal-700' : ($oc >= 40 ? 'text-amber-700' : 'text-gray-500')); @endphp
{{ number_format($oc, 1) }}%
₱{{ number_format($totalRevenue, 0) }} ₱{{ number_format($avgAdr, 0) }} ₱{{ number_format($avgRevpar, 0) }}
@endif
@endsection