@php // Severity → how the checklist row is painted. `ok` always wins. $checkTone = [ 'blocker' => ['icon' => 'x-circle', 'chip' => 'bg-rose-50 text-rose-600', 'badge' => 'rose', 'word' => __('Blocks the close')], 'warning' => ['icon' => 'exclamation-triangle', 'chip' => 'bg-brand-yellow-50 text-brand-yellow-700', 'badge' => 'amber', 'word' => __('Worth a look')], ]; $okTone = ['icon' => 'check-circle', 'chip' => 'bg-emerald-50 text-emerald-600', 'badge' => 'emerald', 'word' => __('Clear')]; @endphp
{{ __('Accounting month') }}
{{ $monthLabel }}
@if ($snapshot->isClosed()) {{ __('Closed by :who on :when.', [ 'who' => $snapshot->closer?->name ?? $snapshot->locker?->name ?? __('the system'), 'when' => $snapshot->locked_at?->timezone(config('app.display_timezone'))->format('j M Y, H:i') ?? '—', ]) }} @else {{ __('Reopened by :who on :when. Reason: :reason', [ 'who' => $snapshot->reopener?->name ?? __('an administrator'), 'when' => $snapshot->reopened_at?->timezone(config('app.display_timezone'))->format('j M Y, H:i') ?? '—', 'reason' => $snapshot->reopen_reason ?: __('not recorded'), ]) }} @endif
{{ __('Frozen profit & loss') }}
{{ __('Frozen cash block') }}
{{ __('Next month must open on this closing figure. Change held for walk-in customers is inside it and carries forward as theirs.') }}
{{ $m['label'] }}
{{ $m['value'] }}
@if ($m['delta'] !== null){{ __('This month beside last month. Anything moving :pct% or more is flagged, in either direction.', ['pct' => 25]) }}
| {{ __('Figure') }} | {{ $monthLabel }} | {{ $previousLabel }} | {{ __('Change') }} |
|---|---|---|---|
| {{ __('Cash position') }} | |||
|
{{ $r['label'] }}
@if ($r['flagged'])
|
{{ number_format((float) $r['now'], 2) }} | {{ number_format((float) $r['was'], 2) }} | {{ $r['delta'] >= 0 ? '+' : '−' }}{{ number_format(abs((float) $r['delta']), 2) }} @if ($r['pct'] !== null) ({{ number_format(abs((float) $r['pct']), 1) }}%) @endif |
{{ __('Everything that should have landed in :month before it is frozen.', ['month' => $monthLabel]) }}
{{ $item['label'] }}
@unless ($item['ok']){{ $item['message'] }}
@if (! $item['ok'] && $item['route']) {{ __('Fix in :page', ['page' => $item['cta']]) }}{{ __('The frozen figure is never edited. Where a correction was authorised, it is shown as a separate reconciling line.') }}
| {{ __('Month') }} | {{ __('Status') }} | {{ __('Closed by') }} | {{ __('Net profit (frozen)') }} | {{ __('Adjustments') }} | {{ __('Closing cash') }} | {{ __('Actions') }} |
|---|---|---|---|---|---|---|
| {{ \Illuminate\Support\Carbon::create($row->period_year, $row->period_month, 1)->format('F Y') }} |
|
{{ $row->closer?->name ?? $row->locker?->name ?? '—' }} {{ $row->locked_at?->timezone(config('app.display_timezone'))->format('j M Y, H:i') ?? '—' }} | {{ number_format((float) $row->net_profit_base, 2) }} | @if (abs($adj) > 0.004) {{ $adj >= 0 ? '+' : '−' }}{{ number_format(abs($adj), 2) }} {{ __('adjusted :amount', ['amount' => number_format((float) $row->net_profit_base + $adj, 2)]) }} @else — @endif | {{ number_format((float) $row->closing_cash_base, 2) }} |
@if ($canManage && $row->isClosed())
@endif
|
|
|
||||||
{{ __('Reopening un-freezes the month: its figures start moving again and back-dated writes are accepted. Most corrections belong in an authorised adjustment instead, which leaves the closed figure intact.') }}
{{ __('Recorded against the month with your name and the time, and visible to every director.') }}