156 lines
11 KiB
PHP
Executable File
156 lines
11 KiB
PHP
Executable File
<x-filament-panels::page>
|
|
<div class="w-full max-w-full space-y-4 px-2 lg:px-6">
|
|
{{-- BARRA NAVIGAZIONE UNIFICATA E COMPATTA --}}
|
|
<div class="mb-2 flex flex-wrap items-center justify-between gap-2 rounded-xl border border-slate-200 bg-white/80 p-2 shadow-xs backdrop-blur-xs dark:border-slate-800 dark:bg-slate-900/80">
|
|
<div class="flex flex-wrap items-center gap-1.5">
|
|
<a href="{{ \App\Filament\Pages\Gescon\StabiliArchivio::getUrl(panel: 'admin-filament') }}"
|
|
class="inline-flex items-center gap-1.5 rounded-lg border border-slate-200 bg-slate-50 px-2.5 py-1.5 text-xs font-semibold text-slate-700 transition hover:bg-slate-100 hover:text-slate-900 dark:border-slate-700 dark:bg-slate-800 dark:text-slate-200">
|
|
<span>🏢</span>
|
|
<span>Elenco Stabili</span>
|
|
</a>
|
|
<a href="{{ \App\Filament\Pages\Condomini\NominativiStabile::getUrl(panel: 'admin-filament') }}"
|
|
class="inline-flex items-center gap-1.5 rounded-lg border border-slate-200 bg-slate-50 px-2.5 py-1.5 text-xs font-semibold text-slate-700 transition hover:bg-slate-100 hover:text-slate-900 dark:border-slate-700 dark:bg-slate-800 dark:text-slate-200">
|
|
<span>👥</span>
|
|
<span>Elenco Nominativi</span>
|
|
</a>
|
|
<a href="{{ \App\Filament\Pages\UnitaImmobiliarePage::getUrl(panel: 'admin-filament') }}"
|
|
class="inline-flex items-center gap-1.5 rounded-lg border border-slate-200 bg-slate-50 px-2.5 py-1.5 text-xs font-semibold text-slate-700 transition hover:bg-slate-100 hover:text-slate-900 dark:border-slate-700 dark:bg-slate-800 dark:text-slate-200">
|
|
<span>🏠</span>
|
|
<span>Unità Immobiliare</span>
|
|
</a>
|
|
<a href="{{ \App\Filament\Pages\Condomini\TabelleMillesimaliArchivio::getUrl(panel: 'admin-filament') }}"
|
|
class="inline-flex items-center gap-1.5 rounded-lg border border-slate-200 bg-slate-50 px-2.5 py-1.5 text-xs font-semibold text-slate-700 transition hover:bg-slate-100 hover:text-slate-900 dark:border-slate-700 dark:bg-slate-800 dark:text-slate-200">
|
|
<span>📐</span>
|
|
<span>Millesimi</span>
|
|
</a>
|
|
<a href="{{ \App\Filament\Pages\Condomini\CatastoHub::getUrl(panel: 'admin-filament') }}"
|
|
class="inline-flex items-center gap-1.5 rounded-lg border border-slate-200 bg-slate-50 px-2.5 py-1.5 text-xs font-semibold text-slate-700 transition hover:bg-slate-100 hover:text-slate-900 dark:border-slate-700 dark:bg-slate-800 dark:text-slate-200">
|
|
<span>🏛️</span>
|
|
<span>Catasto</span>
|
|
</a>
|
|
<span class="inline-flex items-center gap-1.5 rounded-lg border border-indigo-200 bg-indigo-50 px-2.5 py-1.5 text-xs font-semibold text-indigo-700 shadow-xs ring-2 ring-indigo-500/20 dark:border-indigo-800 dark:bg-indigo-900/30 dark:text-indigo-300">
|
|
<span>⚙️</span>
|
|
<span>Scheda Stabile</span>
|
|
</span>
|
|
</div>
|
|
|
|
@if($stabile)
|
|
<div class="flex items-center gap-2 text-xs">
|
|
<span class="inline-flex items-center gap-1 rounded-md bg-emerald-50 px-2.5 py-1 font-bold text-emerald-700 border border-emerald-200 dark:bg-emerald-950/40 dark:text-emerald-300 dark:border-emerald-800">
|
|
<span class="h-2 w-2 rounded-full bg-emerald-500 animate-pulse"></span>
|
|
Stabile {{ $stabile->codice_stabile ?: $stabile->id }}
|
|
</span>
|
|
</div>
|
|
@endif
|
|
</div>
|
|
|
|
@if(! $stabile)
|
|
<div class="rounded-xl border border-amber-200 bg-amber-50 p-6 text-amber-800 shadow-xs dark:border-amber-800 dark:bg-amber-950/40 dark:text-amber-300">
|
|
<div class="flex items-center gap-3">
|
|
<span class="text-2xl">⚠️</span>
|
|
<div>
|
|
<h3 class="font-bold text-base">Nessuno stabile attivo selezionato</h3>
|
|
<p class="text-sm mt-0.5">Seleziona uno stabile dall'elenco stabili o dal cruscotto per visualizzarne i dettagli di gestione.</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@else
|
|
{{-- HERO HEADER CARD DELLO STABILE --}}
|
|
<div class="rounded-2xl border border-slate-200 bg-gradient-to-r from-slate-900 via-slate-800 to-indigo-950 p-6 text-white shadow-sm dark:border-slate-800">
|
|
<div class="flex flex-col gap-4 md:flex-row md:items-center md:justify-between">
|
|
<div class="space-y-2">
|
|
<div class="flex flex-wrap items-center gap-2.5">
|
|
<h2 class="text-2xl font-black tracking-tight text-white">
|
|
{{ $stabile->denominazione ?: ('Stabile #' . $stabile->id) }}
|
|
</h2>
|
|
<span class="rounded-lg bg-white/10 px-2.5 py-1 text-xs font-mono font-bold text-amber-300 backdrop-blur-xs border border-white/10">
|
|
COD. {{ $stabile->codice_stabile ?: ($stabile->codice_operatore ?: '—') }}
|
|
</span>
|
|
@if($stabile->codice_fiscale)
|
|
<span class="rounded-lg bg-white/10 px-2.5 py-1 text-xs font-mono text-slate-200 backdrop-blur-xs border border-white/10">
|
|
CF: {{ $stabile->codice_fiscale }}
|
|
</span>
|
|
@endif
|
|
</div>
|
|
<div class="flex flex-wrap items-center gap-x-4 gap-y-1 text-xs text-slate-300">
|
|
@if($stabile->indirizzo)
|
|
<span class="flex items-center gap-1">
|
|
<span>📍</span>
|
|
<span>{{ $stabile->indirizzo }}</span>
|
|
</span>
|
|
@endif
|
|
@if($stabile->citta)
|
|
<span>· {{ $stabile->cap ? $stabile->cap . ' ' : '' }}{{ $stabile->citta }} ({{ $stabile->provincia ?? 'RM' }})</span>
|
|
@endif
|
|
@if($stabile->foglio && $stabile->particella_catasto)
|
|
<span class="rounded-md bg-indigo-500/20 px-2 py-0.5 text-indigo-200 border border-indigo-500/30">
|
|
Catasto: Fg. {{ $stabile->foglio }}, Part. {{ $stabile->particella_catasto }}
|
|
</span>
|
|
@endif
|
|
</div>
|
|
</div>
|
|
|
|
{{-- QUICK ACTIONS PILLS --}}
|
|
<div class="flex flex-wrap items-center gap-2">
|
|
<a href="{{ \App\Filament\Pages\Contabilita\RateEmesseArchivio::getUrl(panel: 'admin-filament') }}"
|
|
class="inline-flex items-center gap-1.5 rounded-xl border border-white/20 bg-white/10 px-3 py-2 text-xs font-bold text-white shadow-xs backdrop-blur-xs transition hover:bg-white/20">
|
|
<span>💶</span>
|
|
<span>Rate emesse</span>
|
|
</a>
|
|
<a href="{{ \App\Filament\Pages\Contabilita\CasseBancheMovimenti::getUrl(panel: 'admin-filament') }}"
|
|
class="inline-flex items-center gap-1.5 rounded-xl border border-white/20 bg-white/10 px-3 py-2 text-xs font-bold text-white shadow-xs backdrop-blur-xs transition hover:bg-white/20">
|
|
<span>🏦</span>
|
|
<span>Movimenti bancari</span>
|
|
</a>
|
|
<a href="{{ \App\Filament\Pages\Condomini\CatastoHub::getUrl(panel: 'admin-filament') }}"
|
|
class="inline-flex items-center gap-1.5 rounded-xl border border-amber-400/30 bg-amber-500/20 px-3 py-2 text-xs font-bold text-amber-200 shadow-xs backdrop-blur-xs transition hover:bg-amber-500/30">
|
|
<span>🏛️</span>
|
|
<span>HUB Catasto</span>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
{{-- TAB NAVIGATION PILLS BAR --}}
|
|
@php
|
|
$tabIcons = [
|
|
'dati-generali' => '📋',
|
|
'unita-immobiliari' => '🏠',
|
|
'palazzine' => '🏢',
|
|
'assicurazioni' => '🛡️',
|
|
'tabelle-millesimali' => '📐',
|
|
'rate-emesse' => '💶',
|
|
'gestioni' => '📅',
|
|
'documentazione' => '📁',
|
|
'posta-ufficiale' => '✉️',
|
|
'protocollo-comunicazioni' => '📜',
|
|
'dati-bancari' => '🏦',
|
|
];
|
|
@endphp
|
|
|
|
<div class="rounded-2xl border border-slate-200 bg-white p-2 shadow-xs dark:border-slate-800 dark:bg-slate-900">
|
|
<nav class="flex flex-wrap gap-1.5" aria-label="Tabs">
|
|
@foreach($this->tabs() as $key => $label)
|
|
@php
|
|
$active = $this->tab === $key;
|
|
$icon = $tabIcons[$key] ?? '📌';
|
|
@endphp
|
|
<a
|
|
href="{{ \App\Filament\Pages\Condomini\StabilePage::getUrl(panel: 'admin-filament') . '?tab=' . urlencode($key) }}"
|
|
class="inline-flex items-center gap-1.5 rounded-xl px-3.5 py-2 text-xs font-bold transition {{ $active ? 'border border-indigo-300 bg-indigo-600 text-white shadow-xs dark:bg-indigo-600' : 'border border-slate-200/80 bg-slate-50 text-slate-700 hover:bg-slate-100 hover:text-slate-900 dark:border-slate-700 dark:bg-slate-800/80 dark:text-slate-300 dark:hover:bg-slate-800' }}"
|
|
>
|
|
<span>{{ $icon }}</span>
|
|
<span>{{ $label }}</span>
|
|
</a>
|
|
@endforeach
|
|
</nav>
|
|
</div>
|
|
|
|
{{-- TAB CONTENT CONTAINER --}}
|
|
<div class="rounded-2xl border border-slate-200 bg-white p-6 shadow-xs dark:border-slate-800 dark:bg-slate-900">
|
|
@include($this->tabView(), ['stabile' => $stabile])
|
|
</div>
|
|
@endif
|
|
</div>
|
|
</x-filament-panels::page>
|