{{-- Tarih başına pazaryeri fiyatları — MİNİMAL TABLO (günübirlik). Amaç: tek ekranda azami bilgi. Satır = pazaryeri (+ sınıf), sütun = fiyat tipi. _qv-marketplace-prices'ın SADELEŞTİRİLMİŞ ikizi: aynı input adları (marketplace_prices[mp][class][alan]) ve aynı JS kancaları ([data-mpp] > [data-mpp-row] > [data-mpp-classrow] > [data-mpp-field]) kullanılır; motor (_qv-marketplace-prices-ui) elementin tablo olduğunu umursamaz. Böylece kur çevirisi, sınıf türetme ve elle girilen hücre koruması (mor kenar) aynen çalışır — yalnızca krom yoktur. Beklenen: $marketplaces, $existing, $fields, $classes, $useClasses (+ $tour) --}} @php $marketplaces = $marketplaces ?? collect(); $existing = $existing ?? []; $classes = $classes ?? collect(); $useClasses = ($useClasses ?? false) && $classes->isNotEmpty(); $classRows = $useClasses ? $classes->values() : collect([null]); $fields = collect($fields ?? [])->map(fn ($f) => [ 'key' => $f['key'], 'short' => $f['short'] ?? ($f['label'] ?? $f['key']), ])->values()->all(); // Ana pazar başa: matrisin tabanı ilk satırdır (motor "ilk kart taban" der) $primaryMpId = (int) (($tour ?? null)?->product?->primary_marketplace_id ?? 0); $primaryExplicit = $primaryMpId > 0 && $marketplaces->contains('id', $primaryMpId); if (!$primaryExplicit) { $primaryMpId = (int) (optional($marketplaces->first(fn($m) => $m->defaultCurrency && $m->defaultCurrency->is_base))->id ?? (optional($marketplaces->first())->id ?? 0)); } $marketplaces = $marketplaces->sortBy(fn($m) => $m->id === $primaryMpId ? 0 : 1)->values(); @endphp @if($marketplaces->isEmpty())
Tanımlı pazaryeri yok — Ayarlar → Pazaryerleri'nden ekleyin.
@else
@foreach($fields as $f)@endforeach @foreach($marketplaces as $i => $mp) @php $cur = $mp->defaultCurrency; $isPrimary = $i === 0; @endphp @if(!$cur) @else @foreach($classRows as $cls) @php $classKey = $cls ? $cls->id : 'none'; $isBaseCls = $cls ? $cls->is_base : true; $ex = $existing[$mp->id][$classKey] ?? null; @endphp @foreach($fields as $f) @endforeach @endforeach @endif @endforeach
{{ $f['short'] }}
{{ $mp->name }} Para birimi atanmamış
@if($loop->first) @if($isPrimary)@endif {{ $mp->name }} {{ $cur->code }} @if($useClasses && $cls){{ $cls->code ?: $cls->name }}@endif @else {{ $cls->code ?: $cls->name }} {{ $isBaseCls ? 'taban' : '+' . (float) $cls->diff_value . ($cls->diff_type === 'percent' ? '%' : '') }} @endif
İlk satır tabandır; diğer pazarlar kurdan otomatik hesaplanır, elle girilen hücre (mor) korunur.
@endif @once @endonce