{{-- Odalama panosu — YALNIZCA konaklamalı kalkışlarda render edilir (OperationService::isOvernight; günübirlikte sekme hiç basılmaz). Odalar satışta kurgulanır (sale_rooms); burada eksik oda açılabilir ve yolcular odalara yerleştirilir. Yerleşim sale_passengers.sale_room_id'ye yazılır, serbest metin room_number oda etiketiyle senkron tutulur. Beklenen: $uid, $typeKey, $id, $rooming, $roomingSummary, $roomTypes, $roomingReady --}} @php $rmgTotalPax = collect($rooming)->sum('pax_named'); @endphp @if(!$roomingReady)
Oda tabloları henüz oluşturulmamış. Terminalde php artisan migrate komutunu çalıştırdıktan sonra odalama burada açılacak.
@elseif(empty($rooming))
Bu kalkışta rezervasyon yok Odalama, kalkışa bağlı rezervasyonlar üzerinden kurgulanır.
@else {{-- Uçlar DOM'a yazılır, JS kapanışına değil: kart tazelendiğinde ya da iki operasyon kartı üst üste açıldığında her işlem kendi kalkışının ucuna gider. --}}
{{-- ═══ ARAÇ ÇUBUĞU ═══ --}}
{{ $roomingSummary['rooms'] }} oda {{ $roomingSummary['assigned'] }}/{{ $rmgTotalPax }} yerleşti {{ $roomingSummary['unassigned'] }} atanmamış @if($roomingSummary['over']) {{ $roomingSummary['over'] }} kapasite aşımı @endif
Yolcuyu sürükleyip odaya bırakın — ya da kartındaki listeden oda seçin.
{{-- ═══ REZERVASYON BAZLI ODALAMA ═══ --}} @foreach($rooming as $s) @php $sid = $s['sale_id']; @endphp
{{ mb_strtoupper(mb_substr($s['customer'], 0, 1)) }}
{{ $s['customer'] }} · {{ $s['assigned_count'] }}/{{ $s['pax_named'] }} yolcu yerleşti @if($s['pax_missing'] > 0) {{ $s['pax_missing'] }} isimsiz @endif
{{-- Yeni oda formu (katlanır) --}}
{{-- Atanmamış yolcu havuzu --}}
Atanmamış {{ count($s['unassigned']) }}
@foreach($s['unassigned'] as $p) @include('agency.operations.partials.rooming-chip', ['p' => $p, 'sale' => $s, 'uid' => $uid, 'roomId' => null]) @endforeach
{{-- Odalar --}}
@forelse($s['rooms'] as $room)
{{ $room['label'] }} {{ $room['type_label'] }} @if($room['extra_bed']) yatak@endif {{ $room['beds_used'] }}/{{ $room['bed_capacity'] }}
{{-- Oda düzenleme (katlanır) --}}
@foreach($room['occupants'] as $p) @include('agency.operations.partials.rooming-chip', ['p' => $p, 'sale' => $s, 'uid' => $uid, 'roomId' => $room['id']]) @endforeach
@if($room['priced']['adult'] || $room['priced']['child'] || $room['priced']['infant'])
Fiyatlanan: {{ $room['priced']['adult'] }}Y @if($room['priced']['child']) · {{ $room['priced']['child'] }}Ç @endif @if($room['priced']['infant']) · {{ $room['priced']['infant'] }}B @endif @if($room['unit_price'] !== null)· {{ number_format($room['unit_price'], 0, ',', '.') }}₺@endif
@endif
@empty
Bu rezervasyonda oda tanımlanmamış Oda ekleyip yolcuları yerleştirebilirsiniz.
@endforelse
@endforeach
{{-- /.rmg-root --}} @endif @include('agency.operations.partials.rooming-styles') @if($roomingReady && !empty($rooming)) @endif