@php /** * The disagreement table. Three money columns and one of them matters: the * difference between what was counted and what the books can account for. */ $typeBadge = [ 'bank' => 'indigo', 'cash' => 'emerald', 'mobile_money' => 'sky', 'director' => 'amber', 'other' => 'slate', ]; $tz = config('app.display_timezone'); $tabMeta = [ 'disputed' => ['label' => __('Disagreeing'), 'icon' => 'exclamation-triangle'], 'all' => ['label' => __('All declared floats'), 'icon' => 'queue-list'], ]; $metrics = [ [ 'label' => __('Floats declared'), 'value' => number_format($total), 'icon' => 'wallet', 'accent' => '#124a61', 'sub' => __('Counted by their holder'), ], [ 'label' => __('In agreement'), 'value' => number_format($agreed) . ' / ' . number_format($total), 'icon' => 'check-circle', 'accent' => $blocked ? '#0ea5e9' : '#10b981', 'sub' => $blocked ? __('Books match the count') : __('Every account agrees'), ], [ 'label' => __('Disagreeing'), 'value' => number_format($disputedCount), 'icon' => 'exclamation-triangle', 'accent' => $disputedCount > 0 ? '#f43f5e' : '#94a3b8', 'sub' => $disputedCount > 0 ? __('Money is on hold') : __('Nothing outstanding'), ], [ 'label' => __('Unexplained gap'), 'value' => $baseCode . ' ' . number_format($totalGap, 2), 'icon' => 'scale-balance', 'accent' => '#8b5cf6', 'sub' => $totalGap >= 0 ? __('Counted more than the books hold') : __('Books hold more than was counted'), ], [ 'label' => __('Records replayed'), 'value' => number_format($replayed), 'icon' => 'arrows-right-left', 'accent' => '#f59e0b', 'sub' => __('Carried from the old workspace'), ], ]; @endphp
{{ __('Float punch-in') }} {{ __('Treasury') }} {{-- What is being held, and why, before anybody wonders where the buttons went. --}} @if ($blocked)

{{ __('Money is on hold') }}

{{ $explanation }}

{{ __('Until every float agrees with the books, no payment, expense or transfer can be recorded. Quoting, invoicing and creating jobs are untouched: the work carries on, only the cash stands still.') }}

{{ __('Two ways out. If the count is right, accept it here and the difference goes to Opening Balances. If the count was wrong, the holder recounts on the punch-in page.') }}

@endif
@foreach ($metrics as $m)

{{ $m['label'] }}

{{ $m['value'] }}

{{ $m['sub'] }}
@endforeach
@foreach ($tabMeta as $key => $meta) @endforeach

{{ __('Declared against the books') }}

{{ __('The books are read as they stood at the cut-over, not as they stand today, so trading since then is not counted against the declaration. A positive difference means more was counted than the books can account for.') }}

@forelse ($rows as $row) @php $account = $row['account']; $gap = $row['difference']; @endphp @empty @endforelse
{{ __('Account') }} {{ __('Holder') }} {{ __('Declared') }} {{ __('Books say at cut-over') }} {{ __('Difference') }} {{ __('Declared on') }} {{ __('Actions') }}

{{ $account->name }}

{{ $types[$account->type]['label'] ?? $account->type }}
{{ $account->holder?->name ?? __('Unassigned') }} {{ $account->currency_code }} {{ number_format($row['declared'], 2) }} {{ $account->currency_code }} {{ number_format($row['system'], 2) }} {{ $row['agrees'] ? '—' : ($gap > 0 ? '+' : '−') . number_format(abs($gap), 2) }} {{ $row['confirmation']->confirmed_at?->timezone($tz)->format('j M Y H:i') ?? '—' }} @if ($row['agrees']) {{ __('Agrees') }} @elseif ($canSettle)
@else {{ __('Needs a director') }} @endif