@extends('layouts.app') @section('title', 'Estações') @section('content')

Estações de Monitoramento

Gerir todas as estações do sistema hidrológico

Lista de Estações ({{ $estacoes->total() }})

@if($estacoes->count() > 0)
@foreach($estacoes as $estacao) @endforeach
Estação & Características Tipo & Equipamento Localização & Coordenadas Última Leitura & Dados Estado & Status Ações
@if($estacao->tipo == 'hidrometrica') @elseif($estacao->tipo == 'pluviometrica') @elseif($estacao->tipo == 'meteorologica') @else @endif
{{ $estacao->codigo }}
@if($estacao->rio)
Rio {{ $estacao->rio }}
@endif @if($estacao->altitude)
{{ number_format($estacao->altitude, 0) }}m altitude
@endif @if($estacao->data_instalacao)
Instalada em {{ $estacao->data_instalacao->format('Y') }}
@endif
@php $tipoConfig = [ 'hidrometrica' => ['class' => 'bg-blue-100 text-blue-800', 'icon' => 'fas fa-tint', 'text' => 'Hidrométrica'], 'pluviometrica' => ['class' => 'bg-green-100 text-green-800', 'icon' => 'fas fa-cloud-rain', 'text' => 'Pluviométrica'], 'meteorologica' => ['class' => 'bg-purple-100 text-purple-800', 'icon' => 'fas fa-cloud-sun', 'text' => 'Meteorológica'], 'climatologica' => ['class' => 'bg-orange-100 text-orange-800', 'icon' => 'fas fa-thermometer-half', 'text' => 'Climatológica'] ]; $config = $tipoConfig[$estacao->tipo] ?? ['class' => 'bg-gray-100 text-gray-800', 'icon' => 'fas fa-satellite-dish', 'text' => ucfirst($estacao->tipo)]; @endphp
{{ $config['text'] }} @if($estacao->equipamento)
{{ $estacao->equipamento }}
@endif @if($estacao->sistema_automatizado)
Sistema Automatizado
@endif @if($estacao->telemetria)
Telemetria Ativa
@endif @if($estacao->frequencia_monitoramento)
{{ ucfirst($estacao->frequencia_monitoramento) }}
@endif
{{ $estacao->provincia ?? 'N/A' }}
{{ $estacao->distrito ?? 'N/A' }}
@if($estacao->posto_administrativo)
{{ $estacao->posto_administrativo }}
@endif @if($estacao->latitude && $estacao->longitude)
{{ number_format($estacao->latitude, 4) }}°, {{ number_format($estacao->longitude, 4) }}°
@endif @if($estacao->bacia_hidrografica)
{{ $estacao->bacia_hidrografica->nome }}
@endif
@if($estacao->ultima_leitura)
{{ $estacao->ultima_leitura->data_leitura->format('d/m/Y') }} @if($estacao->ultima_leitura->hora_leitura) {{ $estacao->ultima_leitura->hora_leitura }} @endif
@if($estacao->ultima_leitura->precipitacao_mm)
{{ number_format($estacao->ultima_leitura->precipitacao_mm, 1) }}mm chuva
@endif @if($estacao->ultima_leitura->temperatura_max || $estacao->ultima_leitura->temperatura_min)
@if($estacao->ultima_leitura->temperatura_max)
{{ number_format($estacao->ultima_leitura->temperatura_max, 1) }}°C máx
@endif @if($estacao->ultima_leitura->temperatura_min)
{{ number_format($estacao->ultima_leitura->temperatura_min, 1) }}°C mín
@endif
@endif @if($estacao->ultima_leitura->nivel_6h || $estacao->ultima_leitura->nivel_12h || $estacao->ultima_leitura->nivel_18h)
@if($estacao->ultima_leitura->nivel_6h) 6h: {{ number_format($estacao->ultima_leitura->nivel_6h, 2) }}m @endif @if($estacao->ultima_leitura->nivel_12h) 12h: {{ number_format($estacao->ultima_leitura->nivel_12h, 2) }}m @endif @if($estacao->ultima_leitura->nivel_18h) 18h: {{ number_format($estacao->ultima_leitura->nivel_18h, 2) }}m @endif
@endif @if($estacao->ultima_leitura->humidade_relativa)
{{ number_format($estacao->ultima_leitura->humidade_relativa, 0) }}% humidade
@endif
{{ ucfirst($estacao->ultima_leitura->metodo_leitura ?? 'Manual') }} @if($estacao->ultima_leitura->validado) @else @endif
@else
Sem dados
Nenhuma leitura registrada
@endif
@php $estadoConfig = [ 'activa' => ['class' => 'bg-green-100 text-green-800', 'icon' => 'fas fa-circle-check', 'text' => 'Ativa'], 'inactiva' => ['class' => 'bg-red-100 text-red-800', 'icon' => 'fas fa-circle-xmark', 'text' => 'Inativa'], 'manutencao' => ['class' => 'bg-yellow-100 text-yellow-800', 'icon' => 'fas fa-screwdriver-wrench', 'text' => 'Manutenção'] ]; $estadoConf = $estadoConfig[$estacao->estado] ?? ['class' => 'bg-gray-100 text-gray-800', 'icon' => 'fas fa-question-circle', 'text' => ucfirst($estacao->estado)]; @endphp
{{ $estadoConf['text'] }} @if($estacao->nivel_alerta && $estacao->ultima_leitura) @php $alerta = false; if(($estacao->ultima_leitura->nivel_6h && $estacao->ultima_leitura->nivel_6h >= $estacao->nivel_alerta) || ($estacao->ultima_leitura->nivel_12h && $estacao->ultima_leitura->nivel_12h >= $estacao->nivel_alerta) || ($estacao->ultima_leitura->nivel_18h && $estacao->ultima_leitura->nivel_18h >= $estacao->nivel_alerta)) { $alerta = true; } @endphp @if($alerta)
NÍVEL DE ALERTA
@endif @endif @if($estacao->ultima_leitura) @php $ultimaAtualizacao = $estacao->ultima_leitura->data_leitura; $diasSemAtualizacao = $ultimaAtualizacao->diffInDays(now()); $statusClass = 'bg-green-100 text-green-800'; $statusIcon = 'fas fa-check-circle'; $statusText = 'Atualizado'; if ($diasSemAtualizacao > 7) { $statusClass = 'bg-red-100 text-red-800'; $statusIcon = 'fas fa-exclamation-circle'; $statusText = 'Desatualizado'; } elseif ($diasSemAtualizacao > 3) { $statusClass = 'bg-yellow-100 text-yellow-800'; $statusIcon = 'fas fa-clock'; $statusText = 'Atrasado'; } @endphp
{{ $statusText }} @if($diasSemAtualizacao > 0)
({{ $diasSemAtualizacao }} dias)
@endif
@else
Sem dados
@endif
@if($estacoes->hasPages())
{{ $estacoes->withQueryString()->links() }}
@endif @else

Nenhuma estação encontrada

@if(request()->filled('search') || request()->filled('tipo') || request()->filled('estado')) Nenhuma estação corresponde aos filtros aplicados. Tente ajustar os critérios de busca. @else Comece adicionando sua primeira estação ao sistema para começar o monitoramento hidrológico. @endif

@if(request()->filled('search') || request()->filled('tipo') || request()->filled('estado')) Limpar Filtros @endif Adicionar Estação
@endif
@endsection