Esta caso de uso é responsável por enviar uma notificação aos coordenadores de ações de extensão que serão finalizadas no período de 30 dias, informando a necessidade do envio do relatório final para análise.
O timer verifica as ações de extensão que estão vigentes e que faltam 1 mês para o prazo de fim de preenchimento dos relatórios finais.
Serão notificados o seguintes envolvidos no estágio:
- Coordenador da Ação de Extensão
O Email deve seguir o seguinte modelo:
Mensagem Gerada pelo ##siglaSistema## - ##nomeSistema##
Caro(a) Coordenador(a) ##nomeCoordenador##
A ação de Extensão: ##codigoTituloAtividade##
será finalizada em menos de 30 dias. Não esqueça de cadastrar os relatórios parciais e/ou finais desta ação.
Classe | Tabela |
---|---|
br.ufrn.sigaa.pessoa.dominio.Projeto | projetos.projeto |
br.ufrn.sigaa.pessoa.dominio.Pessoa | sigaa.comum.pessoa |
br.ufrn.sigaa.dominio.Usuario | sigaa.comum.usuario |
br.ufrn.sigaa.estagio.dominio.MembroProjeto | projetos.membro_projeto |
br.ufrn.sigaa.estagio.dominio.AtividadeExtensao | extensao.atividade |
br.ufrn.sigaa.estagio.dominio.RelatorioAcaoExtensao | extensao.relatorio_acao_extensao |
Sistema: SIGAA
Módulo: -
Link(s): -
Usuário: -
Papel que usuário deve ter: -
Primeira Alternativa
Segunda Alternativa
--Consultar os projetos que estão pendentes de relatório SELECT a.id_atividade, a.sequencia, a.id_tipo_atividade_extensao, projeto.titulo, projeto.ano, usuario.email AS emailCoordenador, pessoa.nome AS nomeCoordenador FROM extensao.atividade a INNER JOIN projetos.projeto projeto ON a.id_atividade = projeto.id_projeto INNER JOIN projetos.membro_projeto coordenador ON coordenador.id_membro_projeto = projeto.id_coordenador INNER JOIN comum.pessoa pessoa ON pessoa.id_pessoa = coordenador.id_pessoa INNER JOIN comum.usuario usuario ON usuario.id_pessoa = pessoa.id_pessoa WHERE projeto.data_fim > now() AND ( ( projeto.data_fim - now() ) <= CAST('30 day' AS INTERVAL) ) AND a.id_atividade NOT IN ( SELECT id_atividade FROM extensao.relatorio_acao_extensao WHERE id_atividade = a.id_atividade AND id_tipo_relatorio = 2 AND ativo ) AND usuario.inativo = falseValue()