netgescon-day0/resources/views/admin/palazzine/index.blade.php

107 lines
5.5 KiB
PHP

@extends('admin.layouts.netgescon')
@section('title', 'Palazzine dello stabile')
@section('content')
<div class="container-fluid">
<div class="d-flex flex-column flex-md-row justify-content-between align-items-md-center mb-4">
<div class="mb-3 mb-md-0">
<h1 class="h2 mb-2">
<i class="fas fa-city me-3 text-primary"></i>
Palazzine dello stabile
<span class="text-muted">{{ $stabile->denominazione ?? $stabile->codice_stabile }}</span>
</h1>
<p class="text-muted mb-0">
<i class="fas fa-map-marker-alt me-2"></i>
{{ $stabile->indirizzo ?? 'Indirizzo non disponibile' }}
</p>
</div>
<div class="d-flex gap-2">
<a href="{{ route('admin.stabili.show', ['stabile' => $stabile->id]) }}" class="btn btn-outline-secondary">
<i class="fas fa-arrow-left me-2"></i>
Torna allo stabile
</a>
<a href="{{ route('admin.palazzine.create', ['stabile_id' => $stabile->id]) }}" class="btn btn-netgescon-primary">
<i class="fas fa-plus me-2"></i>
Nuova Palazzina
</a>
</div>
</div>
@if($palazzine->isEmpty())
<div class="card shadow-sm border-0">
<div class="card-body py-5 text-center text-muted">
<i class="fas fa-building fa-3x mb-3"></i>
<p class="mb-2">Non ci sono ancora palazzine censite per questo stabile.</p>
<p class="small">Usa il pulsante "Nuova Palazzina" per iniziare oppure importa i dati dallo strumento Gescon.</p>
</div>
</div>
@else
<div class="row g-4">
@foreach($palazzine as $palazzina)
@php
$totaleUnita = $palazzina->unitaImmobiliari->count();
$unitaOccupate = $palazzina->unitaImmobiliari->whereIn('stato_occupazione', ['occupata_proprietario', 'occupata_inquilino'])->count();
$unitaLibere = $palazzina->unitaImmobiliari->where('stato_occupazione', 'libera')->count();
@endphp
<div class="col-12 col-md-6 col-xl-4">
<div class="card h-100 shadow-sm border-0">
<div class="card-body d-flex flex-column">
<div class="d-flex justify-content-between align-items-start mb-3">
<div>
<h2 class="h5 mb-1">
<i class="fas fa-building me-2 text-primary"></i>
Palazzina {{ $palazzina->codice_palazzina ?? '-' }}
</h2>
<p class="text-muted mb-0">{{ $palazzina->denominazione ?? 'Senza denominazione' }}</p>
</div>
<span class="badge bg-primary-subtle text-primary">{{ $totaleUnita }} unità</span>
</div>
<div class="row text-center mb-3 g-2">
<div class="col">
<div class="p-2 bg-light rounded">
<p class="text-muted small mb-1">Occupate</p>
<p class="fw-semibold text-success mb-0">{{ $unitaOccupate }}</p>
</div>
</div>
<div class="col">
<div class="p-2 bg-light rounded">
<p class="text-muted small mb-1">Libere</p>
<p class="fw-semibold text-warning mb-0">{{ $unitaLibere }}</p>
</div>
</div>
<div class="col">
<div class="p-2 bg-light rounded">
<p class="text-muted small mb-1">Scale</p>
<p class="fw-semibold text-info mb-0">{{ $palazzina->numero_scale ?? '-' }}</p>
</div>
</div>
</div>
<div class="mt-auto d-flex justify-content-between align-items-center">
<span class="text-muted small">
Aggiornata {{ optional($palazzina->updated_at)->diffForHumans() ?? 'N/D' }}
</span>
<div class="btn-group">
<a href="{{ route('admin.palazzine.show', $palazzina) }}" class="btn btn-sm btn-outline-primary">
<i class="fas fa-eye me-1"></i>Dettagli
</a>
<a href="{{ route('admin.palazzine.edit', $palazzina) }}" class="btn btn-sm btn-outline-secondary">
<i class="fas fa-edit me-1"></i>Modifica
</a>
</div>
</div>
</div>
</div>
</div>
@endforeach
</div>
<div class="mt-4">
{{ $palazzine->withQueryString()->links() }}
</div>
@endif
</div>
@endsection