85 lines
4.6 KiB
PHP
85 lines
4.6 KiB
PHP
<x-filament-panels::page>
|
|
<div class="mx-auto max-w-7xl space-y-4">
|
|
<x-filament.components.page-breadcrumbs
|
|
:breadcrumbs="[
|
|
['label' => 'Contabilità', 'url' => null],
|
|
['label' => 'Casse e banche', 'url' => null],
|
|
]"
|
|
/>
|
|
|
|
@if(! $this->getActiveStabile())
|
|
<x-filament::section>
|
|
<div class="text-sm text-gray-600">Seleziona uno stabile per importare e verificare i movimenti banca.</div>
|
|
</x-filament::section>
|
|
@endif
|
|
|
|
@php
|
|
$hdr = $this->getHeaderSaldoInfo();
|
|
$periodo = $this->periodoTotali;
|
|
$periodoOptions = $this->periodoOptions;
|
|
$periodoRateOptions = $this->periodoRateOptions;
|
|
$periodoRate = $this->periodoRateTotali;
|
|
@endphp
|
|
|
|
<x-filament::section>
|
|
<div class="flex flex-wrap items-center justify-between gap-2">
|
|
<div class="text-sm font-medium">
|
|
{{ $hdr['label'] }}
|
|
@if($hdr['saldo'] !== null && $hdr['data'])
|
|
· saldo al: {{ $hdr['data'] }} € {{ number_format((float) $hdr['saldo'], 2, ',', '.') }}
|
|
@endif
|
|
</div>
|
|
<div class="text-xs text-gray-600">Filtra per periodo/gestione dai filtri tabella.</div>
|
|
</div>
|
|
<div class="mt-4 grid grid-cols-1 gap-3 lg:grid-cols-4">
|
|
<div class="rounded-lg border bg-white p-3">
|
|
<div class="text-xs text-gray-500">Periodo</div>
|
|
<div class="mt-2 flex flex-wrap gap-2">
|
|
<select wire:model="periodoTipo" class="rounded border-gray-300 text-xs">
|
|
<option value="mese">Mese</option>
|
|
<option value="trimestre">Trimestre</option>
|
|
</select>
|
|
<select wire:model="periodoValore" class="rounded border-gray-300 text-xs">
|
|
@foreach(($periodoOptions[$periodoTipo] ?? []) as $val => $label)
|
|
<option value="{{ $val }}">{{ $label }}</option>
|
|
@endforeach
|
|
</select>
|
|
<input type="number" wire:model="periodoAnno" class="w-24 rounded border-gray-300 text-xs" min="2000" max="2100" />
|
|
</div>
|
|
</div>
|
|
<div class="rounded-lg border bg-white p-3">
|
|
<div class="text-xs text-gray-500">Totali periodo ({{ $periodo['label'] ?? '' }})</div>
|
|
<div class="mt-2 text-xs">
|
|
<div>Movimenti: <span class="font-semibold">{{ $periodo['count'] ?? 0 }}</span></div>
|
|
<div>Entrate: <span class="font-semibold">€ {{ number_format((float)($periodo['entrate'] ?? 0), 2, ',', '.') }}</span></div>
|
|
<div>Uscite: <span class="font-semibold">€ {{ number_format((float)($periodo['uscite'] ?? 0), 2, ',', '.') }}</span></div>
|
|
</div>
|
|
</div>
|
|
<div class="rounded-lg border bg-white p-3">
|
|
<div class="text-xs text-gray-500">Periodo rate (senza anno)</div>
|
|
<div class="mt-2 flex flex-wrap gap-2">
|
|
<select wire:model="periodoRate" class="rounded border-gray-300 text-xs">
|
|
<option value="">—</option>
|
|
@foreach($periodoRateOptions as $val => $label)
|
|
<option value="{{ $val }}">{{ $label }}</option>
|
|
@endforeach
|
|
</select>
|
|
</div>
|
|
<div class="mt-2 text-xs">
|
|
<div>Movimenti: <span class="font-semibold">{{ $periodoRate['count'] ?? 0 }}</span></div>
|
|
<div>Entrate: <span class="font-semibold">€ {{ number_format((float)($periodoRate['entrate'] ?? 0), 2, ',', '.') }}</span></div>
|
|
<div>Uscite: <span class="font-semibold">€ {{ number_format((float)($periodoRate['uscite'] ?? 0), 2, ',', '.') }}</span></div>
|
|
</div>
|
|
</div>
|
|
<div class="rounded-lg border bg-white p-3">
|
|
<div class="text-xs text-gray-500">Saldo periodo</div>
|
|
<div class="mt-3 text-lg font-semibold">€ {{ number_format((float)($periodo['saldo'] ?? 0), 2, ',', '.') }}</div>
|
|
</div>
|
|
</div>
|
|
<div class="mt-4">
|
|
{{ $this->table }}
|
|
</div>
|
|
</x-filament::section>
|
|
</div>
|
|
</x-filament-panels::page>
|