~~ODT~~
Gerenciar Grupos de Destinatários
Grupos de destinatários são grupos formados por usuários dos sistemas para os quais é possível enviar notificações, exibir telas de aviso no logon, enviar memorandos eletrônicos, etc. Eles são criados a partir de uma consulta SQL que retorna os identificadores dos usuários que devem fazer parte do grupo, bem como os seus endereços de e-mail.
Através deste caso é uso é possível cadastrar criar grupos de destinatários.
Descrição do Caso de Uso
Este caso de uso inicia quando o usuário acessa a opção SIGAdmin → Portal da Admin → Comunicação → Comunicação em Grupo → Gerência de Grupos → Gerenciar Grupos.
Ao acessar o caso de uso, é possívela cadastrar um novo grupo de destinatário:
- Descrição*: Tipo TEXTO. O texto que deverá representar a descrição do aviso.
- Sistema*: Tipo TEXTO. Apresenta as opções de sistemas
AMBIENTES, COMUM, INSTITUCIONAL, IPROJECT, PORTAIS, SIGAA…
. - Memorando Circular: Tipo LÓGICO. Marcar se o grupo puder ser usado para envio de memorandos circulares.
- Tela de Aviso no Logon: Tipo LÓGICO. Marcar se o grupo puder ser usado para mostrar telas de aviso na hora do logon.
- Comunidade Virtual: Tipo LÓGICO. O grupo vai ingressar em uma Comunidade Virtual.
- Consulta dos Destinatários*: Tipo TEXTO. Utilize o formulário abaixo para informar a consulta SQL que deverá ser executada para recuperar os destinatários.
- Parâmetros da Consulta
- Nome*: Tipo TEXTO.
- Tipo*: Tipo TEXTO. São apresentadas as opções
BIGINT, BOOLEAN, CHAR, DATE, DECIMAL, DOUBLE, FLOAT, INTERGER, SMALLINT, TIMESTAMP, VARCHAR
. - Consulta para preenchimento do combo de parâmetros*: Tipo TEXTO.
- Obrigatório*: Tipo TEXTO. São apresentadas as opções
SIM/NÃO
. - Valor padrão*: Tipo TEXTO.
- Possui restrição de usuários?*: Tipo TEXTO. São apresentadas as opções
SIM/NÃO
.
O sistema apresenta a lista de grupos de destinatários cadastrados, separados por sistemas, contendo as seguintes informações:
- Sistema
- Descrição: Tipo TEXTO. Descrição do grupo de destinatários.
- Consulta: Tipo TEXTO. Consulta SQL.
Para cada item da lista é possível listar destinatários, alterar ou remover.
Listar destinatários
- Descrição: Formato NOME DA CONSULTA(QUANTIDADE DE RESULTADOS). Tipo TEXTO.
- Nome: Tipo TEXTO.
- Unidade: Tipo TEXTO.
Alterar O sistema apresenta as informações do grupo para edição.
Remover O grupo é inativado.
O caso de uso é finalizado.
Principais Regras de Negócio
- RN01: Caso a consulta do grupo de destinatários tenha parâmetros, os parâmetros devem ser declarados com uma interrogação (?) na consulta.
- RN02: As interrogações serão substituídas pelos parâmetros na ordem em que elas aparecem na consulta e na ordem em que os parâmetros foram declarados.
- RN03: Se o parâmetro tiver restrição de usuário, deve-se verificar se o usuário está no grupo em que os usuários têm acesso irrestrito.
- RN04: Se o usuário tiver acesso irrestrito, deve-se usar para ele a consulta
Select Combo
. Se não possuir, deve-se usar a consulta Select Combo Restrito. - RN05: A consulta
Select Restrição Combo
e a consultaSelect Combo Restrito
devem receber um parâmetro, representado pela interrogação (?) que será substituído pelo id do usuário logado. - RN06: A consulta
Select Restrição Combo
deve retornar o id do usuário. - RN07: As consultas
Select Combo
eSelect Combo Restrito
devem retornar o id do objeto que será o valor do parâmetro e o nome que será exibido na combo box do parâmetro. - RN08: Não deve ser possível deixar parâmetros obrigatórios em branco.
Resoluções/Legislações Associadas
Não se Aplica.
Classes Persistentes e Tabelas Envolvidas
Classe | Tabela |
---|---|
br.ufrn.comum.dominio.notificacoes.GrupoDestinatarios | sistemas_comum.public.grupo_destinatarios |
br.ufrn.comum.dominio.notificacoes.ParametroGrupo | sistemas_comum.public.parametro_grupo |
Plano de Teste
Sistema: SIGAdmin
Módulo: Portal da Administração
Link(s): Comunicação → Comunicação em Grupo → Gerência de Grupos → Gerenciar Grupos
Usuários: gleydson
Papel que usuário deve ter: AdminPapeis.ADMINISTRADOR_SIGADMIN, AdminPapeis.GESTOR_DE_QUESTIONÁRIO_DE_AVALIAÇÃO
Cenários de Teste
Não se aplica.
Dados para o Teste
A definição dos parâmetros exige que o usuário informe o nome do parâmetro, o seu tipo no banco de dados (necessário para distinguir campos do tipo String de campos de outros tipos), a consulta SQL utilizada para preencher o combobox com os possíveis valores do parâmetro, uma consulta SQL que define as restrições dos usuários para os valores dos parâmetros, se o parâmetro é obrigatório ou não e o valor default, usado quando o parâmetro não é obrigatório e o usuário não o informa.
TODOS OS SERVIDORES ATIVOS
SELECT DISTINCT u.id_usuario, u.email FROM comum.usuario u INNER JOIN comum.pessoa p USING(id_pessoa) INNER JOIN rh.servidor s USING(id_pessoa) WHERE ( (u.inativo IS NULL OR u.inativo = FALSE) AND s.data_desligamento IS NULL)
TODOS DOCENTES
SELECT id_usuario, email FROM comum.usuario WHERE ( inativo IS NULL OR inativo = FALSE ) AND ( id_pessoa IN ( SELECT id_pessoa FROM rh.servidor WHERE id_categoria = 1 AND id_ativo = 1) OR id_usuario IN ( SELECT id_usuario FROM comum.permissao WHERE id_papel = 26001) )
ALUNOS DE GRADUAÇÃO PRESENCIAL
SELECT id_usuario, email FROM comum.usuario WHERE id_pessoa IN ( SELECT id_pessoa FROM discente WHERE nivel = 'G' AND STATUS IN (1,8) AND id_curso IN ( SELECT id_curso FROM curso WHERE id_modalidade_educacao = 1 ) ) AND email IS NOT NULL