netgescon-day0/resources/views/admin/dashboards/stabili.blade.php

191 lines
8.6 KiB
PHP
Executable File

@extends('admin.layouts.netgescon')
@section('page-title', 'Dashboard Stabili')
@section('content')
<div class="space-y-8 netgescon-fade-in">
<!-- Header -->
<div class="netgescon-card">
<div class="flex items-center justify-between">
<div>
<h2 class="netgescon-title">
<i class="fas fa-building text-green-500 mr-3"></i>
Dashboard Stabili
</h2>
<p class="netgescon-text mt-2">
Panoramica completa di tutti gli stabili e unità immobiliari
</p>
</div>
<div class="hidden md:block">
<a href="{{ route('admin.stabili.index') }}" class="netgescon-btn netgescon-btn-primary">
<i class="fas fa-list mr-2"></i>
Gestisci Stabili
</a>
</div>
</div>
</div>
<!-- Statistiche principali -->
<div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6">
<!-- Totale Stabili -->
<div class="netgescon-card">
<div class="flex items-center">
<div class="flex-1">
<p class="text-sm font-medium text-gray-600">Totale Stabili</p>
<p class="text-3xl font-bold netgescon-text">{{ $statistiche['totale_stabili'] }}</p>
</div>
<div class="p-3 bg-green-100 rounded-full">
<i class="fas fa-building text-green-600 text-xl"></i>
</div>
</div>
</div>
<!-- Stabili Attivi -->
<div class="netgescon-card">
<div class="flex items-center">
<div class="flex-1">
<p class="text-sm font-medium text-gray-600">Stabili Attivi</p>
<p class="text-3xl font-bold netgescon-text">{{ $statistiche['stabili_attivi'] }}</p>
</div>
<div class="p-3 bg-blue-100 rounded-full">
<i class="fas fa-check-circle text-blue-600 text-xl"></i>
</div>
</div>
</div>
<!-- Totale Unità -->
<div class="netgescon-card">
<div class="flex items-center">
<div class="flex-1">
<p class="text-sm font-medium text-gray-600">Totale Unità</p>
<p class="text-3xl font-bold netgescon-text">{{ $statistiche['totale_unita'] }}</p>
</div>
<div class="p-3 bg-purple-100 rounded-full">
<i class="fas fa-home text-purple-600 text-xl"></i>
</div>
</div>
</div>
<!-- Unità Occupate -->
<div class="netgescon-card">
<div class="flex items-center">
<div class="flex-1">
<p class="text-sm font-medium text-gray-600">Unità Occupate</p>
<p class="text-3xl font-bold netgescon-text">{{ $statistiche['unita_occupate'] }}</p>
<p class="text-sm text-gray-500">{{ $statistiche['totale_unita'] > 0 ? round(($statistiche['unita_occupate'] / $statistiche['totale_unita']) * 100, 1) : 0 }}% del totale</p>
</div>
<div class="p-3 bg-yellow-100 rounded-full">
<i class="fas fa-users text-yellow-600 text-xl"></i>
</div>
</div>
</div>
</div>
<div class="grid grid-cols-1 lg:grid-cols-2 gap-6">
<!-- Stabili Recenti -->
<div class="netgescon-card">
<div class="netgescon-card-header">
<h3 class="netgescon-card-title">
<i class="fas fa-plus-circle text-green-500 mr-2"></i>
Stabili Aggiunti di Recente
</h3>
</div>
<div class="netgescon-card-body">
@if($stabili_recenti->count())
<div class="space-y-3">
@foreach($stabili_recenti as $stabile)
<div class="flex items-center justify-between p-3 bg-gray-50 rounded-lg">
<div>
<h4 class="font-semibold netgescon-text">{{ $stabile->denominazione }}</h4>
<p class="text-sm text-gray-600">{{ $stabile->indirizzo }}</p>
<p class="text-xs text-gray-500">Aggiunto: {{ $stabile->created_at->format('d/m/Y') }}</p>
</div>
<div class="text-right">
<span class="netgescon-badge {{ $stabile->attivo ? 'netgescon-badge-green' : 'netgescon-badge-gray' }}">
{{ $stabile->attivo ? 'Attivo' : 'Non Attivo' }}
</span>
</div>
</div>
@endforeach
</div>
@else
<div class="text-center py-8">
<i class="fas fa-building text-gray-300 text-4xl mb-4"></i>
<p class="netgescon-text-muted">Nessun stabile disponibile</p>
</div>
@endif
</div>
</div>
<!-- Unità Immobiliari Recenti -->
<div class="netgescon-card">
<div class="netgescon-card-header">
<h3 class="netgescon-card-title">
<i class="fas fa-home text-purple-500 mr-2"></i>
Unità Immobiliari Recenti
</h3>
</div>
<div class="netgescon-card-body">
@if($unita_recenti->count())
<div class="space-y-3">
@foreach($unita_recenti as $unita)
<div class="flex items-center justify-between p-3 bg-gray-50 rounded-lg">
<div>
<h4 class="font-semibold netgescon-text">{{ $unita->denominazione }}</h4>
<p class="text-sm text-gray-600">{{ $unita->stabile->denominazione ?? 'N/A' }}</p>
<p class="text-xs text-gray-500">Piano: {{ $unita->piano ?? 'N/A' }} - Int: {{ $unita->interno ?? 'N/A' }}</p>
</div>
<div class="text-right">
<span class="netgescon-badge {{ $unita->isOccupata() ? 'netgescon-badge-blue' : 'netgescon-badge-gray' }}">
{{ $unita->isOccupata() ? 'Occupata' : 'Libera' }}
</span>
</div>
</div>
@endforeach
</div>
@else
<div class="text-center py-8">
<i class="fas fa-home text-gray-300 text-4xl mb-4"></i>
<p class="netgescon-text-muted">Nessuna unità immobiliare disponibile</p>
</div>
@endif
</div>
</div>
</div>
<!-- Azioni Rapide -->
<div class="netgescon-card">
<div class="netgescon-card-header">
<h3 class="netgescon-card-title">
<i class="fas fa-bolt text-yellow-500 mr-2"></i>
Azioni Rapide
</h3>
</div>
<div class="netgescon-card-body">
<div class="grid grid-cols-1 md:grid-cols-3 lg:grid-cols-5 gap-4">
<a href="{{ route('admin.stabili.index') }}" class="netgescon-btn netgescon-btn-outline flex flex-col items-center p-4">
<i class="fas fa-list text-2xl mb-2"></i>
<span>Elenco Stabili</span>
</a>
<a href="#" class="netgescon-btn netgescon-btn-outline flex flex-col items-center p-4">
<i class="fas fa-plus text-2xl mb-2"></i>
<span>Nuovo Stabile</span>
</a>
<a href="#" class="netgescon-btn netgescon-btn-outline flex flex-col items-center p-4">
<i class="fas fa-home text-2xl mb-2"></i>
<span>Gestisci Unità</span>
</a>
<a href="#" class="netgescon-btn netgescon-btn-outline flex flex-col items-center p-4">
<i class="fas fa-tools text-2xl mb-2"></i>
<span>Manutenzioni</span>
</a>
<a href="#" class="netgescon-btn netgescon-btn-outline flex flex-col items-center p-4">
<i class="fas fa-chart-bar text-2xl mb-2"></i>
<span>Statistiche</span>
</a>
</div>
</div>
</div>
</div>
@endsection