Merhabalar, seçilen tarihler arasındaki hafta sonu günlerini nasıl gizleyebiliriz veya sadece kayıt olan tarihleri nasıl çekebiliriz?
$columns = collect($records)
->groupBy(‘tarih’)
->map(function($items) {
return $items
->groupBy(‘tedarikci_id’)
->map(fn($items) => $items->sum(‘toplam’));
})
->toArray();
<table>
<thead>
<tr>
<th>Tedarikçi</th>
{{–
Burada tarihlerden sütunları oluşturuyorum. Formatı siz beliryelebilirsiniz,
ben 12.02.2022 olacak şekilde yaptım
–}}
@foreach($dates as $date)
<th>{{ $date->format(‘d.m.Y’) }}</th>
@endforeach
</tr>
</thead>
<tbody>
{{–
Tedarikçileri iterasyona sokup satırları oluşturuyorum ve ilk sütuna isimlerini yazıyorum
–}}
@foreach($suppliers as $supplier)
<tr>
<td>{{ $supplier->name }}</td>
{{–
Tarihleri iterasyona sokup $columns dizisinde eşleşen toplamları alıyorum
–}}
@foreach($dates as $date)
<td>{{ data_get($columns, “{$date->toDateString()}.{$supplier->id}”) ?? ‘-’ }}</td>
@endforeach
</tr>
@endforeach
</tbody>