{{-- ARCHIVO: resources/views/admin/unidades/index.blade.php --}} {{-- VERSIÓN: 1.0 - COMPLETA 100% FUNCIONAL --}} {{-- DESCRIPCIÓN: Lista de unidades del condominio con filtros avanzados --}} {{-- COMPATIBILIDAD: Laravel 11.47 --}} {{-- FECHA: 2024-12-09 --}} @extends('layouts.admin') @section('title', $pageTitle) @section('page-icon', $pageIcon) @section('breadcrumb') @parent @endsection @push('styles') @endpush @section('content') @if(isset($error))
{{ $error }}
@else
{{-- Header --}}

{{ $pageTitle }}

Gestiona las unidades del condominio

Nueva Unidad
{{-- Stats Overview --}}
{{ $stats['total'] ?? 0 }}
Total Unidades
{{ $stats['ocupadas'] ?? 0 }}
Ocupadas
{{ $stats['vacias'] ?? 0 }}
Vacías
{{ $stats['airbnb'] ?? 0 }}
Airbnb
{{ $stats['con_propietario'] ?? 0 }}
Con Propietario
{{ $stats['con_pagos_pendientes'] ?? 0 }}
Con Deuda
{{-- Filtros Avanzados --}}
Filtros Avanzados
{{-- Búsqueda general --}}
{{-- Filtro por bloque --}}
{{-- Filtro por estado --}}
{{-- Filtro por tipo --}}
{{-- Filtro por propietario --}}
{{-- Botones de acción --}}
@if(request()->hasAny(['search', 'bloque_id', 'estado', 'tipo', 'propietario_id', 'sort_by', 'sort_order'])) Limpiar @endif
{{-- Lista de Unidades --}}
@if($unidades->isEmpty())
No se encontraron unidades

No hay unidades que coincidan con los filtros aplicados.

Ver todas las unidades
@else
@foreach($unidades as $unidad) @endforeach
Código Descripción Bloque Tipo Estado Propietario Área (m²) Pagos Pendientes Acciones
{{ $unidad->codigo }}
@if($unidad->tipo == 'departamento') @elseif($unidad->tipo == 'cochera') @elseif($unidad->tipo == 'deposito') @else @endif
{{ Str::limit($unidad->descripcion, 30) ?: 'Sin descripción' }}
@if($unidad->habitaciones) {{ $unidad->habitaciones }} hab. @endif
@if($unidad->bloque) {{ $unidad->bloque->nombre }} @else Sin bloque @endif @php $tipoColors = [ 'departamento' => 'primary', 'cochera' => 'info', 'deposito' => 'warning', 'combinado' => 'success' ]; @endphp {{ ucfirst($unidad->tipo) }} @php $estadoColors = [ 'ocupado' => 'success', 'vacio' => 'secondary', 'airbnb' => 'info' ]; @endphp {{ ucfirst($unidad->estado) }} @if($unidad->propietario)
{{ $unidad->propietario->name }}
{{ $unidad->propietario->email }}
@else Sin propietario @endif
{{ $unidad->area ?? '0' }}
@if($unidad->area_cochera || $unidad->area_terraza || $unidad->area_jardin || $unidad->area_deposito) @endif
@if($unidad->pagos_pendientes_count > 0)
{{ $unidad->pagos_pendientes_count }} Pendiente
@else Al día @endif
{{-- Paginación --}} @if($unidades->hasPages()) @endif @endif
@endif @endsection @push('scripts') @endpush