@extends('reports.pdf.layout', ['title' => $report['property']->name.' · '.$period->label()]) @php use App\Support\Money; use App\Support\Percent; $income = $report['income']; $occupancy = $report['occupancy']; $largest = max($report['categories']->max('amount') ?? 0, 1); @endphp @section('content')

{{ $report['property']->name }}

Monthly report · {{ $period->label() }}{{ $period->isCurrent() ? ' (month in progress)' : '' }}
Profit
{{ Money::format($report['profit']) }}
Net income
{{ Money::format($income['net']) }}
Expenses
{{ Money::format($report['expenses']) }}
Occupancy
{{ Percent::format($occupancy['rate']) }}
{{ $occupancy['booked'] }} / {{ $occupancy['available'] }} nights

Profit

Payments received{{ Money::format($income['gross']) }}
Refunds{{ Money::format(-$income['refunds']) }}
Platform fees{{ Money::format(-$income['fees']) }}
Net income{{ Money::format($income['net']) }}
Expenses (approved){{ Money::format(-$report['expenses']) }}
Profit{{ Money::format($report['profit']) }}
@if ($report['pending_expenses'])

A further {{ Money::format($report['pending_expenses']) }} of expenses is pending approval and not counted.

@endif

Expenses by category

@forelse ($report['categories'] as $row) @empty @endforelse
{{ $row['category'] }}
{{ Money::format($row['amount']) }}
No approved expenses this month.

Occupancy by room

@foreach ($occupancy['rooms'] as $row) @endforeach
RoomBookedAvailableBlockedOccupancy
{{ $row['room']->name }} {{ $row['booked'] }} {{ $row['available'] }} {{ $row['blocked'] }} {{ Percent::format($row['rate']) }}

Payments received

@forelse ($report['payments'] as $p) @empty @endforelse
DateGuestRoomMethodAmountFeeNet
{{ $p->paid_on->format('j M') }} {{ $p->booking->guest->name }} {{ $p->booking->room->name }} {{ $p->isRefund() ? 'Refund' : $p->method->label() }} {{ Money::format($p->signedAmount()) }} {{ $p->platform_fee ? Money::format($p->platform_fee) : '' }} {{ Money::format($p->netAmount()) }}
No payments this month.

Expenses counted

@forelse ($report['expense_list'] as $e) @empty @endforelse
DateCategoryDescriptionPaid toAmount
{{ $e->spent_on->format('j M') }} {{ $e->category->name }} {{ $e->description }}{{ $e->room ? ' (room '.$e->room->name.')' : '' }} {{ $e->vendor }} {{ Money::format($e->amount) }}
No approved expenses this month.
@endsection