Supervisão
Responsável por criar uma interface interativa para a supervisão de adequações (ajustes) em dados hidrológicos.
Índice
- Visão Geral
- Supervisao
- Init
- Create widgets
- Update autocomplete
- Add plot
- Load data
- Process data
- Update ui
- Update tabs
- Create color map
- Clear filters
- Calculate RN
- Draw RN
- Show RN
- Filter RN
- Update data
- Change tab
- Navegar
- Navegar adequação
- Navegar RN
- Revisar adequações
- Revisar adequação
- Enviar supervisão
- Revisar mudanca RN
- Enviar supervisão RN
- Check RN overlap
- Revisar tudo
Visão Geral
A classe Supervisao fornece uma interface para a supervisão e revisão de adequações (ajustes) em dados hidrológicos.
- Visualização Interativa: Utiliza gráficos Bokeh para exibir dados de cotas e adequações.
- Filtragem Avançada: Permite filtrar adequações por ID, período e usuário.
- Navegação: Facilita a navegação entre diferentes adequações e mudanças de RN.
- Integração com Backend: Interage com APIs para buscar dados e enviar decisões de supervisão.
- Suporte a Mudanças de RN: Inclui funcionalidades específicas para lidar com mudanças na Referência de Nível.
Supervisao
Classe principal para a ferramenta de supervisão de adequações.
Init
Inicializa uma nova instância da classe Supervisao.
Parâmetros:
doc (Document): O documento Bokeh ao qual os elementos da interface serão adicionados.
tipo_estacao (StationType): O tipo da estação (e.g., "regua", "pcd").
token_manager (TokenManager): O gerenciador de tokens para autenticação.
Create widgets
Cria os widgets da interface, incluindo inputs, tabelas e o gráfico principal.
Update autocomplete
Atualiza as opções do AutocompleteInput com as estações disponíveis para revisão.
Add plot
Adiciona o gráfico à página.
Parâmetros:
codigo (str): O código da estação selecionada.
Load data
Carrega os dados necessários para a visualização, incluindo adequações pendentes, mudanças de RN e cotas horárias.
Parâmetros:
codigo (int): O código da estação.
Process data
Realiza o pré-processamento dos dados carregados, formatando-os para uso nos widgets Bokeh.
Parâmetros:
data_provider (DataProvider): O provedor de dados.
Update ui
Atualiza a interface com os dados carregados, incluindo a tabela de adequações e o gráfico.
Update tabs
Atualiza os títulos das abas da tabela, exibindo a contagem de adequações e mudanças de RN pendentes.
Create color map
Cria um mapeamento de cores para as adequações pendentes, usado para diferenciá-las no gráfico.
Clear filters
Limpa todos os filtros aplicados, removendo os dados exibidos e desabilitando os widgets.
Calculate RN
Calcula os ajustes de cota devido às mudanças de RN pendentes.
Draw RN
Adiciona as linhas representando as mudanças de RN ao gráfico.
Show RN
Controla a visibilidade das linhas de mudança de RN no gráfico, com base nas seleções do usuário na tabela de mudanças de RN.
Filter RN
Filtra os dados das mudanças de RN exibidas no gráfico com base na data selecionada.
Parâmetros:
hide (bool): Se True, oculta as linhas de mudança de RN. Se False, aplica o filtro.
Update data
Atualiza os dados exibidos na tabela e no gráfico com base nos filtros aplicados.
Change tab
Lida com a mudança de aba na tabela, atualizando os dados exibidos e a visibilidade dos elementos do gráfico.
Navegar
Navega entre diferentes adequações ou mudanças de RN, dependendo da aba selecionada.
Parâmetros:
direction (str): A direção da navegação ("next" ou "prev").
Navegar adequacao
Navega entre as adequações pendentes.
Parâmetros:
direction (str): A direção da navegação ("next" ou "prev").
Navegar RN
Navega entre as mudanças de RN pendentes.
Parâmetros:
direction (str): A direção da navegação ("next" ou "prev").
Revisar adequações
Inicia o processo de revisão (aceitar ou rejeitar) de um lote de adequações.
Parâmetros:
decisao (str): A decisão do supervisor ("Aceita" ou "Recusado").
Revisar adequação
Inicia o processo de revisão (aceitar ou rejeitar) de uma adequação específica.
Parâmetros:
decisao (str): A decisão do supervisor ("Aceita" ou "Recusado").
Enviar supervisão
Envia a decisão de supervisão (aceitar ou rejeitar) para a API.
Parâmetros:
ids_adequacao (list[int]): Uma lista com os IDs das adequações a serem revisadas.
decisao (str): A decisão do supervisor ("Aceita" ou "Recusado").
Revisar mudança RN
Inicia o processo de revisão (aceitar ou rejeitar) de mudanças de RN selecionadas.
Parâmetros:
decisao (str): A decisão do supervisor ("Aceita" ou "Recusado").
Enviar supervisão RN
Envia a decisão de supervisão (aceitar ou rejeitar) para a API para as mudanças de RN.
Parâmetros:
decisao (str): A decisão do supervisor ("Aceita" ou "Recusado").
indices (list[int]): Os índices das mudanças de RN selecionadas na tabela.
Check RN overlap
Verifica se as mudanças de RN selecionadas se sobrepõem com alguma adequação existente.
Parâmetros:
selected_indices: Índices das mudanças de RN selecionadas.
Returns:
bool: True se houver sobreposição, False caso contrário.
Revisar tudo
Inicia o processo de revisão (aceitar ou rejeitar) de todas as adequações ou mudanças de RN, dependendo da aba selecionada.
Parâmetros:
decisao (str): A decisão do supervisor ("Aceita" ou "Recusado").
Revisar tudo adequação
Inicia o processo de revisão (aceitar ou rejeitar) de todas as adequações.
Parâmetros:
decisao (str): A decisão do supervisor ("Aceita" ou "Recusado").
Revisar tudo mudança RN
Inicia o processo de revisão (aceitar ou rejeitar) de todas as mudanças de RN.
Parâmetros:
decisao (str): A decisão do supervisor ("Aceita" ou "Recusado").
Data not loaded
Propriedade que indica se os dados já foram carregados.
Returns:
bool: True se os dados não foram carregados, False caso contrário.
Create layout
Define o layout da página, organizando os widgets em linhas e colunas.
Returns:
layout: O layout da página.