Engenharia-de-Software-UFRPE / lanterna-verde

Lanterna verde é um sistema de avaliação do nível de práticas de greenwashing de uma organização ou produto.
2 stars 5 forks source link

[Feature] Objeto de Notificação para Administradores #70

Closed Ant4r3z closed 2 years ago

Ant4r3z commented 2 years ago

Nessa Pull Request implementamos a Criação do modelo Notificicação e suas funcionalidades.

Problema

O problema em questão é tanto a criação do objeto da notificação em models e a criação da função que dispara essa notificação aos destinatários responsáveis.

Implementação

A implementação foi realizada criando uma class em models para Notificação chamada NotificacaoAdm implementando os atributos titulo contendo o texto da notificação, data a data em que ela foi gerada, has_been_seen se ela foi lida, report e request para ela armazenar a informação relacionada a solicitação de analise ou a Analise quando finalizada e por ultimo mas não menos importante o Receiver que é o recebedor da notificação, como cada ADM recebe sua propria solicitação na função onde a mesma é disparada existe um FOR enviando a notificação para todos os ADM's e quem os recebe é esse atributo.

As função criadas estão na pasta "notificacaoAdm.py" se resumem a criar a notificação com a função criar_notificacaoAdm_relatorio e criar_notificacaoAdm_solicitacao que faz a criação da notificação disparando as mensagens de cada evento diferente sendo ele a criação do relatorio com a finalização das analises como de uma solicitação nova de analise. As outras duas funções criadas foram pra uso do front. Sendo elas listar_notificacoesAdm que lista as solicitações do usuário ADM logado e notificacao_lida que quando passada uma notificação altera o atributo has_been_seen para true (Quando ela for lida).

Como Testar

O teste pode ser realizado solicitando uma analise onde é disparada a primeira notificação e a segunda é feita quando um relatório é gerado ou seja uma análise é finalizada! Em ambas as ocasiões a notificação é gerada e atribuída aos ADM's imediatamente! :)

Notas do desenvolvedor

Objetivos

Enviar a notificação a todos os ADM's logados nas situações em questão!

lucas9henrique commented 2 years ago

Mudanças realizadas ! :) @SteffanoP

Ant4r3z commented 2 years ago

Listar_notificacoes foi alterado para pegar as notificações do usuário.