@extends('layouts.app') @section('title', 'Estações') @section('content')
Gerir todas as estações do sistema hidrológico
| 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)
@endif
@if($estacao->ultima_leitura->nivel_6h || $estacao->ultima_leitura->nivel_12h || $estacao->ultima_leitura->nivel_18h)
{{ 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
@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
Sem dados
Nenhuma leitura registrada
|
@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)
@else
({{ $diasSemAtualizacao }} dias)
@endif
Sem dados
@endif
|
@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