~~ODT~~

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

Listar Memorandos Enviados

Este caso de uso possibilita o acompanhamento dos Memorandos Eletrônicos enviados ou autenticados pelo usuário e que já foram enviados ao seu destino. Nesse caso de uso também é permitido o cancelamento dos mesmos. Os chefes, vice-chefes, gerentes e secretários também poderão visualizar os memorandos originários da sua unidade.

Todos os servidores ativos da instituição que possuem acesso ao módulo de protocolo podem acessar esta funcionalidade.

Este caso de uso inicia quando o usuário acessa a opção: SIPAC → Protocolo → Memorandos → Consultas → Listar Enviados.

O caso de uso inicia exibindo uma série de opções para filtrar as buscas pelos processos enviados.

Os seguintes filtros podem ser utilizados:

  • Número/Ano: Tipo NUMÉRICO, formato: …9/AAAA.
  • Ano: Tipo NUMÉRICO, formato: AAAA.
  • Identificador: Tipo NUMÉRICO.
  • Assunto (Título): Tipo TEXTO.
  • Unidade de Origem: Tipo AUTOCOMPLETE, formato: DENOMINAÇÃO UNIDADE (CÓDIGO UNIDADE), entrada de dados: DENOMINAÇÃO ou CÓDIGO.
  • Cadastrado por: Tipo AUTOCOMPLETE, formato: NOME USUÁRIO (LOGIN), entrada de dados: NOME ou LOGIN.
  • Servidor de Assinatura: Tipo AUTOCOMPLETE, formato: NOME USUÁRIO (LOGIN), entrada de dados: NOME ou LOGIN.
  • Unidade de Destino:Tipo AUTOCOMPLETE, formato: DENOMINAÇÃO UNIDADE (CÓDIGO UNIDADE), entrada de dados: DENOMINAÇÃO ou CÓDIGO.
  • Tipo: Tipo TEXTO. São exibidas as opções de: Todos, Memorando Eletrônico ou Memorando Circular.
  • Data de Cadastro: Formato - DD/MM/AAAA a DD/MM/AAAA. Tipo - DATA.
  • Todos os Memorandos: Tipo LÓGICO.

É exibida uma lista com os memorandos enviados.

São exibidas as seguintes informações sobre os memorandos:

  • Documento: Tipo TEXTO, formato: …9/AAAA - SIGLA UNIDADE.
  • Identificador: Tipo NUMÉRICO.
  • Enviado Em: Tipo DATA.
  • Assunto: Tipo TEXTO.
  • Leituras: Tipo - NUMÉRICO.
  • Destino: Tipo TEXTO, formato: UNIDADE (CÓDIGO DA UNIDADE) ou SERVIDOR (MATRÍCULA DO SERVIDOR).

E para cada memorando as seguintes opções:

    • Ao ser selecionada, essa opção permite a leitura do memorando pelo usuário.
    • Ao ser selecionada, são disponibilizadas informações detalhadas acerca desse documento.
    • Opção utilizada para cancelar o memorando em questão
    • Ao ser selecionada, é exibida uma lista com todos os usuários que leram o memorando em questão.
  • Exportar Memorando para .doc:
    • Exporta o memorando para um arquivo .doc.
  • RN01 - Serão exibidos apenas o memorandos enviados:
    1. Cadastrados pelo usuário
    2. Assinados pelo usuário, ou seja, autenticados por eles.
    3. Encaminhados pelo usuário
    4. Originários da unidade de responsabilidade do usuário, ou seja, caso o usuário seja chefe, vice-chefe, gerente ou secretário da unidade de origem do memorando.
  • RN02 - Um memorando não poderá ser removido caso o usuário não seja seu criador ou autenticador.
  • RN03 - Um memorando não poderá ser removido caso esteja adicionado a algum processo.
  • RN04 - Caso o parâmetro LISTAR_TODOS_MEMORANDOS_UNIDADE esteja habilitado, serão listados todos os memorandos enviados pela unidade do usuário logado.

Resoluções/Legislações Associadas

Não se Aplica.

Classe Tabela
br.ufrn.sipac.protocolo.dominio.Documento administrativo.protocolo.documento
br.ufrn.sipac.protocolo.dominio.TipoDocumentoProtocolo administrativo.protocolo.tipoDocumento
br.ufrn.sipac.protocolo.dominio.LeituraDocumento administrativo.protocolo.leitura_documento
br.ufrn.sipac.protocolo.dominio.AutenticadorDocumento administrativo.protocolo.autenticador_documento

Plano de Teste

Sistema: SIPAC

Módulo: Protocolo

Link(s): Memorandos → Consultas → Listar Enviados

Usuário: marcilia, jbb, paulinho.

Papel que usuário deve ter: Sem checagem de papéis.

- Ao enviar um memorando deve-se verificar se este está visível na listagem de memorandos enviados pelo usuário.

- Os servidores de assinatura também deverão visualizar o memorando em sua listagem de memorandos enviados.

- Os chefes, vice-chefes, gerentes e secretários, da unidade de origem do memorando, também deverão visualizar o memorando em sua listagem de memorandos enviados.

  • Para obter o identificador de uma unidade podemos usar a seguinte consulta:
SELECT u.id_unidade, u.sigla, u.codigo_unidade, u.nome 
FROM comum.unidade u
WHERE 1 = 1
AND u.id_unidade =           -- (Opcional)
AND u.sigla = ''             -- (Opcional)
AND u.codigo_unidade =       -- (Opcional)
AND u.nome LIKE ''           -- (Opcional)
  • A partir do identificador da unidade podemos adquirir os dados do servidor, usuário e pessoa, responsáveis da unidade, com a seguinte consulta:
SELECT r.id_servidor, us.id_usuario, us.login, p.id_pessoa, p.nome, r.id_unidade, u.nome   
FROM comum.responsavel_unidade r  
     INNER JOIN rh.servidor s ON s.id_servidor = r.id_servidor
     INNER JOIN comum.pessoa p ON p.id_pessoa = s.id_pessoa	
     INNER JOIN comum.unidade u ON u.id_unidade = r.id_unidade
     INNER JOIN comum.usuario us ON us.id_pessoa = p.id_pessoa   	
WHERE r.id_unidade = <IDENTIFICADOR DA UNIDADE> 
AND (r.data_fim >= CURRENT_TIMESTAMP OR r.data_fim IS NULL)  
AND r.nivel_responsabilidade IN  ( 'C','V','G','S' )     

Com os dados dos identificadores do usuário e do servidor, podemos consultar os dados do memorando a partir do seguintes códigos:

  • Usando como base a consulta:
SELECT DISTINCT doc.iddocumento, doc.identificacao, doc.ano, unidade.sigla
FROM protocolo.documento doc 
     INNER JOIN protocolo.autenticador_documento aut ON doc.iddocumento = aut.id_documento
     INNER JOIN comum.unidade unidade ON doc.idunidade = unidade.id_unidade
     LEFT JOIN (SELECT COUNT(*) > 0 AS encaminhado, iddocumento, idusuarioorigem 
		FROM protocolo.movimento_documento m 
		WHERE encaminhamento = TRUE 
		AND idusuarioorigem = <IDENTIFICADOR DO USUÁRIO>
		GROUP BY iddocumento, idusuarioorigem) AS movimento ON (movimento.iddocumento = doc.iddocumento) 
     LEFT JOIN (SELECT COUNT(r.id_unidade) > 0 AS responsavel, r.id_unidade   
		FROM comum.responsavel_unidade r   	
		WHERE r.id_servidor = <IDENTIFICADOR DO SERVIDOR>
		AND (r.data_fim >= CURRENT_TIMESTAMP OR r.data_fim IS NULL)  
		AND r.nivel_responsabilidade IN  ( 'C','V','G','S' )     
		GROUP BY r.id_unidade) AS usuario_unidade ON (usuario_unidade.id_unidade = doc.idunidade)  
WHERE doc.idtipodocumento IN ( 976,980 ) 
AND doc.status IN  ( 1,2,4,5,6,7,8,9 ) 
AND doc.iddocumento_principal IS NULL 
ORDER BY doc.iddocumento DESC         

Usar:

  • Para TODOS os memorandos que poderão ser vistos pelo usuário:
AND ( doc.id_usuario = <IDENTIFICADOR DO USUÁRIO>
      OR (aut.id_autenticador = <IDENTIFICADOR DO SERVIDOR> AND aut.id_registro_inativacao IS NULL)
      OR movimento.encaminhado = TRUE 	    	   
      OR usuario_unidade.responsavel = TRUE)  	    	
  • Apenas para os memorandos cadastrados pelo usuário:
AND doc.id_usuario = <IDENTIFICADOR DO USUÁRIO>
  • Apenas para os memorandos autenticados pelo usuário:
AND aut.id_autenticador = <IDENTIFICADOR DO SERVIDOR> 
AND aut.id_registro_inativacao IS NULL
  • Apenas para os memorandos encaminhados pelo usuário:
AND movimento.encaminhado = TRUE 	    	
  • Para restringir apenas aos memorandos vistos pelos responsáveis, caso não seja quem cadastrou/autenticou/encaminhou, podemos usar a seguinte cláusula:
AND (doc.id_usuario != <IDENTIFICADOR DO USUÁRIO>                                                       --Não sendo o usuário que cadastrou
     AND (aut.id_autenticador != <IDENTIFICADOR DO SERVIDOR> OR aut.id_registro_inativacao IS NOT NULL) --Nem um dos autenticadores do memorando
     AND (movimento.encaminhado IS NULL OR movimento.encaminhado = FALSE)	                        --Nem o usuário que o encaminhou
     AND (usuario_unidade.responsavel = TRUE)                                                           --E sendo responsável pela unidade 
) IS TRUE  -- (FALSE para obter apenas os cadastrados/autenticados/encaminhados)			
  • desenvolvimento/especificacoes/sipac/protocolo/casos_de_uso/memorandos/consultas/listar_enviados.txt
  • Última modificação: 2017/04/03 18:22
  • (edição externa)