@extends('layouts.app') @section('title', 'Barragens') @section('content')
Gerir todas as barragens do sistema hidrológico
{{ $estacaoAtual['label'] }} • {{ $progresso }}% completo
| Barragem & Bacia | Localização & Coordenadas | Capacidade & Características | Monitoramento Atual | Estado & Alertas | Ações & Relatórios |
|---|---|---|---|---|---|
|
{{ $barragem->codigo }}
@if($barragem->bacia_hidrografica)
{{ $barragem->bacia_hidrografica->nome }}
@endif
|
{{ $barragem->provincia ?? 'N/A' }}
{{ $barragem->distrito ?? 'N/A' }}
@if($barragem->latitude && $barragem->longitude)
{{ number_format($barragem->latitude, 4) }}°, {{ number_format($barragem->longitude, 4) }}°
@endif
@if($barragem->ano_construcao)
{{ $barragem->ano_construcao }}
@endif
|
@if($barragem->volume_maximo)
{{ number_format($barragem->volume_maximo, 1) }} Mm³
Cap. Total
{{ number_format($barragem->volume_morto, 1) }} Mm³
Vol. Morto
@if($barragem->cota_maxima)
@if($barragem->nivel_alerta || $barragem->nivel_emergencia)
{{ number_format($barragem->cota_maxima, 1) }}m
@endif
@if($barragem->cota_minima)
Máx
{{ number_format($barragem->cota_minima, 1) }}m
@endif
Min
@if($barragem->nivel_alerta)
@endif
@if($barragem->area_bacia_hidraulica)
Alerta: {{ number_format($barragem->nivel_alerta, 1) }}m
@endif
@if($barragem->nivel_emergencia)
Emerg.: {{ number_format($barragem->nivel_emergencia, 1) }}m
@endif
Bacia: {{ number_format($barragem->area_bacia_hidraulica, 1) }} km²
@endif
|
@if($barragem->ultima_leitura)
{{ $barragem->ultima_leitura->data_leitura->format('d/m/Y') }}
{{ $barragem->ultima_leitura->hora_leitura ?? '06:00' }}
{{ number_format($barragem->ultima_leitura->cota_actual, 2) }}m
@if($barragem->cota_maxima)
/{{ number_format($barragem->cota_maxima, 1) }}m
@endif
Cota Atual
{{ number_format($percentage, 1) }}%
Enchimento
{{ number_format($barragem->ultima_leitura->volume_actual, 2) }} Mm³
atual
@endif
@if($barragem->ultima_leitura->caudal_afluente || $barragem->ultima_leitura->caudal_efluente)
@if($barragem->ultima_leitura->caudal_afluente)
@endif
{{ number_format($barragem->ultima_leitura->caudal_afluente, 1) }}
Afluente
{{ number_format($barragem->ultima_leitura->caudal_efluente, 1) }}
Efluente
{{ ucfirst($barragem->ultima_leitura->metodo_leitura ?? 'Manual') }}
@if($barragem->ultima_leitura->validado)
@else
@endif
Sem dados
Nenhuma leitura registada
|
@php
$estadoConfig = [
'activa' => [
'class' => 'bg-green-100 text-green-800 border-green-200',
'icon' => 'fas fa-circle-check',
'text' => 'Ativa'
],
'inactiva' => [
'class' => 'bg-red-100 text-red-800 border-red-200',
'icon' => 'fas fa-circle-xmark',
'text' => 'Inativa'
],
'manutencao' => [
'class' => 'bg-yellow-100 text-yellow-800 border-yellow-200',
'icon' => 'fas fa-screwdriver-wrench',
'text' => 'Manutenção'
]
];
$config = $estadoConfig[$barragem->estado] ?? [
'class' => 'bg-gray-100 text-gray-800 border-gray-200',
'icon' => 'fas fa-question-circle',
'text' => ucfirst($barragem->estado)
];
@endphp
{{ $config['text'] }}
@if($barragem->ultima_leitura && $barragem->nivel_alerta && $barragem->ultima_leitura->cota_actual >= $barragem->nivel_alerta)
@if($barragem->nivel_emergencia && $barragem->ultima_leitura->cota_actual >= $barragem->nivel_emergencia)
EMERGÊNCIA
@else
ALERTA
@endif
@endif
|
@if($barragem->ultima_leitura)
@php
$ultimaAtualizacao = $barragem->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 }}d)
@endif
@else
Sem dados
@endif
|
@if(request()->filled('search') || request()->filled('estado') || request()->filled('provincia')) Nenhuma barragem corresponde aos filtros aplicados. Tente ajustar os critérios de busca. @else Comece adicionando sua primeira barragem ao sistema para começar o monitoramento hidrológico. @endif