Skip to main content

Adequação Page

Serve como base para todas as páginas do aplicativo que envolvem a aplicação de alguma técnica de adequação de dados.

Índice

  1. Visão Geral
  2. Adequação Page

Visão geral

A classe AdequacaoPage atua como uma abstração fundamental para páginas de adequação, garantindo consistência e reusabilidade de código. Suas principais funcionalidades incluem:

  • Gerenciamento de Adequações: Fornece métodos padronizados para adicionar, salvar e descartar adequações feitas pelo usuário.
  • Integração Bokeh: Utiliza componentes Bokeh para a criação de gráficos interativos e widgets de entrada, como seletores de data e botões.
  • Flexibilidade de Visualização: Permite a criação de gráficos com diferentes séries de dados (07h e 17h, medidas e estimadas) e a visualização de inconsistências.
  • Diálogos de Confirmação: Implementa diálogos para confirmar ações críticas como salvar ou descartar alterações.
  • Customização de Dados: Facilita o ajuste de datas e a manipulação de DataFrames para exibir dados relevantes.

AdequacaoPage

Classe abstrata que contém abstrações para as páginas que envolvem alguma técnica de adequação. Define métodos para salvar e descartar adequações, além de criação de widgets.

Init

Inicializa uma nova instância da AdequacaoPage.

Parâmetros: doc (Document): O documento Bokeh ao qual os elementos serão adicionados. token_manager (TokenManager): O gerenciador de tokens para autenticação. data_provider (DataProvider): O provedor de dados, inicialmente None. date (date | None): A data de referência, inicialmente None. date_picker (DatePicker | None): O datepicker associado à página, inicialmente None.

Create widgets

Cria os widgets básicos para salvar e descartar adequações.

Append changes

Adiciona os dados das cotas adequadas à lista de mudanças realizadas pelo usuário durante a sessão.

Parâmetros: row (pd.Series): Uma linha de dados (Series) contendo a cota que sofreu alteração.

Set dates

Ajusta a data inicial de acordo com o estado de self.date e restringe-a dentro dos limites do data_provider.

Save changes

Guarda as mudanças realizadas pelo analista e oferece um diálogo de confirmação antes de enviá-las.

Discard changes

Oferece um diálogo para descarte de todas as mudanças realizadas na sessão atual.

Discard

Descarta as mudanças realizadas, revertendo as cotas adequadas para seus valores originais no data_provider e limpando a lista de adequações.

Enviar adequações

Envia as adequações para serem persistidas no banco de dados. Deve ser implementado pelas subclasses.

Parâmetros: changes_df (pd.DataFrame): O DataFrame contendo as mudanças a serem registradas.

Create hour select

Cria um widget Select para a seleção de horário (07h ou 17h).

Retorno: Select: O widget de seleção de hora.

On hour select change

Método vazio para ser sobrescrito por subclasses, que será chamado quando a seleção de hora mudar.

Create adequação widgets

Cria os componentes comuns para uma página de adequação, incluindo alertas, inputs de delta de dias e o gráfico principal.

Toggle legend

Ativa ou desativa a exibição da legenda no gráfico.

Parâmetros: plot (figure): O objeto do gráfico Bokeh.

Create widgets 07h

Cria os widgets e glyphs específicos para os dados das 07h no gráfico.

Parâmetros: estimate_label (str): O rótulo para a cota adequada/estimada. Padrão é 'cota_sipam'.

Create widgets 17h

Cria os widgets e glyphs específicos para os dados das 17h no gráfico.

Parâmetros: estimate_label (str): O rótulo para a cota adequada/estimada. Padrão é 'cota_sipam'.

Get plot

Cria um gráfico de adequações pendentes, similar ao gráfico da supervisão. Método abstrato a ser implementado por subclasses.