~~ODT~~

Última atualização: 2017/04/03 18:19 (edição externa)

Timer de Notificação de Designações com Término Determinado

O Objetivo deste timer, é avisar com antecedência ao servidor responsável do Departamento de Administração de Pessoal e aos servidores designados, a proximidade do fim das designações cadastradas.

Este caso de uso não é acessível através de links. É executado uma vez por dia, e trabalha da seguinte forma:

São localizados as designações com término determinado que faltam a quantidade de dias definida no Parâmetro para o fim, com base na data atual, então é enviado um email para os servidor responsáveis do Departamento de Pessoal no seguinte formato:

Assunto: Aviso de notificação a servidores com término de designação próximo

Caro(a) <<NOME_CHEFE>>,
  
Os seguintes servidores foram notificados em relação a proximidade do fim de suas designações:
  
<<SERVIDORES_NOTIFICADOS>>
 
  
Esta mensagem é automática e não deve ser respondida

E um e-mail para cada servidor que tenha a designação com fim retornado na consulta.

Assunto: Notificação de designação com término próximo

Prezado Dirigente,

Informamos que o mandato de <<NOME_SERVIDOR>> do(a) <<NOME_UNIDADE>> encerra-se no dia <<DATA_FIM_DESIGNACAO>>. 
Solicitamos que sejam tomadas as providências necessárias à eleição do novo dirigente para a unidade, lembrando que o 
acesso às funcionalidades de chefia será encerrado na data acima mencionada.

Estamos à disposição para qualquer esclarecimento.

Atenciosamente,
<<NOME_RESPONSAVEL_DAP>>
Chefia/Diretoria do(a)  <<NOME_UNIDADE_DAP>>
 
Esta mensagem foi gerada automaticamente pelo sistema e não deve ser respondida.

o caso de uso é finalizado.

  • RN01 - O Parâmetro localizado em ParametrosGerais.PERIODO_PROXIMO_VIGENCIA indica a quantidade de dias de antecedência para o fim da designação do servidor. Caso seja encontrado algum servidor nessa situação, os e-mails são enviados.

Resoluções/Legislações Associadas

Não se Aplica.

Classe Tabela
br.ufrn.sigrh.funcional.timer.DesignacoesTerminoDeterminadoTimer Comum.infra.registro_timer
br.ufrn.sigrh.funcional.dominio.Designacao Administrativo.rh.designacao

Plano de Teste

Sistema: SIGPRH

Módulo: -

Link(s): -

Usuário: -

Para testar este timer, ajuste os parâmetros em comum.infra.registros_timer, para a execução deste timer e acompanhe se os emails para os servidores e para os responsáveis do DAP são enviados.

  • Caso a consulta por designações não retorne valores, realize o cadastro de uma nova designação, com fim compatível com a quantidade de dias presentes no parâmetro utilizado.

Cadastrar Designação

  • A consulta SQL abaixo retorna o responsável da unidade com base no id da unidade e no nível de responsabilidade.

<codesql> SELECT RU.*, U.NOME AS NOME_UNIDADE,

S.SIAPE AS MATRICULA,P.NOME AS NOME_SERVIDOR, 
P.ID_PESSOA, P.EMAIL AS EMAIL_PESSOA, 
LOT.ID_UNIDADE AS ID_UNIDADE_LOTACAO, 
LOT.NOME AS NOME_UNIDADE_LOTACAO 

FROM COMUM.RESPONSAVEL_UNIDADE RU

JOIN COMUM.UNIDADE U ON U.ID_UNIDADE = RU.ID_UNIDADE
JOIN RH.SERVIDOR S ON S.ID_SERVIDOR = RU.ID_SERVIDOR
JOIN COMUM.PESSOA P ON S.ID_PESSOA = P.ID_PESSOA
JOIN COMUM.UNIDADE LOT ON S.ID_UNIDADE = LOT.ID_UNIDADE 	

WHERE RU.ID_UNIDADE = ?

AND RU.ID_REGISTRO_ENTRADA_EXCLUSAO IS NULL 
AND RU.NIVEL_RESPONSABILIDADE = '?' 
AND RU.DATA_INICIO <= CURRENT_DATE 
AND (RU.DATA_FIM IS NULL OR RU.DATA_FIM >= CURRENT_DATE) 
AND RU.ID_UNIDADE = LOT.ID_UNIDADE 

ORDER BY RU.DATA_CADASTRO DESC </code>

  • A consulta abaixo, retorna as designações com término de terminado que se encerram na data informada.

<codesql> SELECT d.inicio as inicio, d.fim as fim, p.nome as nomePessoa, p.email as emailpessoa, a.descricao as descatividade,

      u.nome as nomeunidade, r.nivel_responsabilidade as nivelresponsa, CAST(n.nivel AS VARCHAR) as nivel, gd.descricao as descgrupoivel 

FROM rh.designacao d

 left  join funcional.nivel_designacao n on (d.id_nivel_designacao = n.id_nivel_designacao) 
 left  join funcional.grupo_nivel_designacao gd on (n.id_grupo_nivel_designacao = gd.id_grupo_nivel_designacao) 
 inner join rh.atividade a on (d.id_atividade = a.id_atividade) 
 inner join comum.unidade u on (d.id_unidade = u.id_unidade) 
 inner join rh.servidor s on (d.id_servidor = s.id_servidor) 
 inner join comum.pessoa p on (s.id_pessoa = p.id_pessoa) 
 left join comum.responsavel_unidade r on (d.id_responsavel_unidade = r.id OR r.id_designacao = d.id_designacao )
 WHERE 1=1 
  AND d.fim IS NOT NULL 
  AND d.fim = '?'

</code>

  • desenvolvimento/especificacoes/sigrh/timers/designacoesterminodeterminadotimer.txt
  • Última modificação: 2017/04/03 18:19
  • (edição externa)