@extends('layouts.dashboard') @section('title', __('Report Builder')) @section('page_title', __('Report Builder')) @section('content')
{{ __('Build a report') }}
@foreach($filterOptions as $col => $f)
@endforeach
@foreach($ds['columns'] as $col => $meta)
@endforeach
@if($ds['sums'])
@endif
{{ __('Saved reports') }}
@forelse($saved as $r) @empty
{{ __('Save any report configuration to reuse it later.') }}
@endforelse
@if($error)
{{ $error }}
@endif @if(!$result)
{{ __('Choose a dataset, filters and columns, then run the report. Group by time or a field to get counts, sums and a chart.') }}
@else @php($money = fn ($v) => money($v, false))
{{ __($ds['label']) }} {{ $cfg['from'] }} → {{ $cfg['to'] }} · {{ $result['grouped'] ? count($result['rows']).' '.__('groups') : number_format($result['total']).' '.__('records').(count($result['rows']) < $result['total'] ? ' ('.__('showing').' '.count($result['rows']).')' : '') }}
{{ __('Export CSV') }}
@if($result['grouped'] && count($result['rows']) > 1)
@endif
@foreach($result['headers'] as $alias => $h)@endforeach @forelse($result['rows'] as $row) @foreach($result['headers'] as $alias => $h) @php($v = $row[$alias] ?? null) @endforeach @empty @endforelse @if($result['sums']) @foreach($result['headers'] as $alias => $h)@endforeach @endif
{{ __($h['label']) }}
@if($v === null || $v === '') — @elseif(($h['type'] ?? '') === 'money') {{ $money($v) }} @elseif(($h['type'] ?? '') === 'datetime') {{ \Carbon\Carbon::parse($v)->format('M d, Y H:i') }} @elseif(($h['type'] ?? '') === 'bool') {{ $v ? __('Yes') : __('No') }} @elseif(($h['type'] ?? '') === 'number') {{ is_numeric($v) ? rtrim(rtrim(number_format((float) $v, 2), '0'), '.') : $v }} @else {{ \Illuminate\Support\Str::limit((string) $v, 80) }} @endif
{{ __('No data for this selection.') }}
@if(isset($result['sums'][$alias])){{ ($h['type'] ?? '') === 'money' ? $money($result['sums'][$alias]) : number_format($result['sums'][$alias], is_int($result['sums'][$alias]) ? 0 : 2) }}@elseif($loop->first){{ __('Total') }}@endif
@endif
@endsection @push('scripts') @endpush