Skip to content

feat: automatizar mudança de steps

Geovane Freitas requested to merge 298AutomatizarSteps into main

Descrição do Merge Request

Este merge request implementa o gerenciamento automatizado de etapas de processos participativos no Decidim. Atualmente, a ativação e desativação das etapas precisam ser feitas manualmente pelos administradores. Com as alterações propostas, esse processo será automatizado através de um cronjob.

Problema inicial

Administradores precisavam atualizar manualmente o status das etapas de processos participativos conforme as datas mudavam. Isso era um processo tedioso e propenso a erros. #298

Solução

A solução implementada automatiza completamente o gerenciamento das etapas ativas de um processo participativo:

  • Adicionada a classe ChangeActiveStepJob que é executada periodicamente para verificar quais etapas devem estar ativas com base na data atual.
  • Implementada lógica na classe ParticipatoryProcessStep para definir automaticamente a posição da etapa dentro do processo.
  • Adicionados métodos para enfileirar e limpar tarefas agendadas no sidekiq relacionadas à mudança de etapas ativas.

Núcleo da implementação

  1. Classe ChangeActiveStepJob
    • Principal responsável por verificar e atualizar quais etapas devem estar ativas em cada processo participativo.
  2. Classe ParticipatoryProcessStep
    • Implementa lógica para definir automaticamente a posição da etapa.
    • Adiciona métodos para enfileirar e limpar tarefas agendadas relacionadas à mudança de etapas ativas.

Também foi trazido de volta codigo relacionado a exportação de cpf nas enquetes, código que acabou faltando após uma refatoração anterior

Issue referenciada

Closes #298 #285

Edited by Geovane Freitas

Merge request reports

Loading