====== Alterar/Remover Despacho ====== Este caso de uso possibilita alterar e remover despachos eletrônicos realizados em [[desenvolvimento:especificacoes:sipac:protocolo:casos_de_uso:processos:cadastro:cadastrar_despacho|processos]] ou [[desenvolvimento:especificacoes:sipac:protocolo:casos_de_uso:documentos:cadastro:cadastrar_despacho|documentos]]. Para realizar essas operações em um despacho é necessário que o usuário tenha sido designado como responsável pelo despacho ou seja o usuário que realizou o cadastro do despacho, independente que o despacho tenha sido autenticado ou não. ===== Descrição do Caso de Uso ===== Este caso de uso inicia quando o usuário acessa a opção: //SIPAC -> Protocolo -> Processos -> Despachos Eletrônicos -> Alterar/Remover Despacho// === Passo 1 === Inicialmente são exibidos os despachos cujo o usuário é responsável ou tenha cadastrado (tanto os em processos quanto os em documentos). Os despachos exibidos são todos os despachos associados a um documento ou processo que ainda esteja na unidade do usuário. São informados os seguintes campos: ([[#Principais_Regras_de_Negócio|RN01]]) ***__Despachos em Processos__**: ***__Cadastrado em__**: Formato: dd/MM/aaaa, Tipo - DATA. ***__Processo__**: Formato: RADICAL.NÚMERO/ANO-DÍGITOS VERIFICADORES[99999.999999/AAAA-99] ou 'NÃO PROTOCOLADO', Tipo - NUMÉRICO ou TEXTO. * Esse campo é um link, para mais detalhes visualize a especificação: //[[desenvolvimento:especificacoes:sipac:portal_administrativo:casos_de_uso:protocolo:consultas:processo_detalhado|Processo Detalhado]]//, onde podemos visualizar todos os detalhes do processo. ***__Assunto__**: Tipo - TEXTO. ***__Tipo do Despacho__**: Formato - DENOMINAÇÃO DO TIPO, Tipo - TEXTO. ***__Cadastrado por__**: Tipo - TEXTO. ***__Origem__**: Formato - NOME DA UNIDADE (CÓDIGO DA UNIDADE), Tipo - TEXTO. ***__Despachos em Documentos__**: ***__Cadastrado em__**: Formato: dd/MM/aaaa, Tipo - TEXTO. ***__Documento__**: Formato: RADICAL.NÚMERO/ANO-DÍGITOS VERIFICADORES[99999.999999/AAAA-99], Tipo - NUMÉRICO. * Esse campo é um link, para mais detalhes visualize a especificação: //[[desenvolvimento:especificacoes:sipac:protocolo:casos_de_uso:consultas_relatorios:consultas:documentos|Consulta de Documentos]]//, onde podemos visualizar todos os detalhes do documento. ***__Tipo do Despacho__**: Formato - DENOMINAÇÃO DO TIPO, Tipo - TEXTO. ***__Cadastrado por__**: Tipo - TEXTO. ***__Origem__**: Formato - NOME DA UNIDADE (CÓDIGO DA UNIDADE), Tipo - TEXTO. * Para cada despacho, de processo ou documento, temos as seguintes opções: * //Visualizar Despacho//: Uma nova janela com o despacho é mostrada ou o download do arquivo do despacho é exibido. * //Alterar Despacho//: Segue para a página de cadastro de despachos, de [[desenvolvimento:especificacoes:sipac:protocolo:casos_de_uso:processos:cadastro:cadastrar_despacho|processos]] ou de [[desenvolvimento:especificacoes:sipac:protocolo:casos_de_uso:documentos:cadastro:cadastrar_despacho|documentos]], com as informações do despacho mostradas para a alteração. * //Remover Despacho//: Opção que remover o despacho deixando-o inativo. Caso o despacho seja para validar uma juntada de processos, ao ser cancelado, a juntada é negada. ([[#Principais_Regras_de_Negócio|RN02]]) O caso de uso é finalizado. ===== Principais Regras de Negócio ===== * **RN01** - São mostrados todos os despachos em processos e documentos que o usuário é o reponsável ou tenha cadastrado o despacho. * **RN02** - O despacho não pode ser visível nas consultas quando o mesmo tenha sido removido. * **RN03** - Caso o despacho seja Alterado, seu documento associado também será. * **RN04** - Caso o despacho seja Excluído, seu documento associado será CANCELADO. * **RN05** - Não é permitido alterar despachos já autenticados. ===== Classes Persistentes e Tabelas Envolvidas ===== ^ Classe ^ Tabela | | br.ufrn.sipac.protocolo.dominio.Despacho | administrativo.protocolo.despacho | | br.ufrn.sipac.protocolo.dominio.Processo | administrativo.protocolo.processo | | br.ufrn.sipac.protocolo.dominio.Movimento | administrativo.protocolo.movimento | | br.ufrn.sipac.protocolo.dominio.Documento | administrativo.protocolo.documento | | br.ufrn.sipac.protocolo.dominio.MovimentoDocumento | administrativo.protocolo.movimento_documento | ====== Plano de Teste ====== Sistema: SIPAC Módulo: Protocolo Link(s): Processos -> Despachos Eletrônicos -> Alterar/Remover Despacho Usuário: paulinho. Papel que usuário deve ter: Nenhum papel é necessário. ===== Cenários de Teste ===== - [[desenvolvimento:especificacoes:sipac:protocolo:casos_de_uso:processos:cadastro:cadastrar_despacho|Cadastrar Despacho de Processos]] e [[desenvolvimento:especificacoes:sipac:protocolo:casos_de_uso:documentos:cadastro:cadastrar_despacho|Cadastrar Despacho de Documentos]] Com o usuário laenilson, informando como Servidor Responsável pelo Despacho o usuário PAULO JOSE PEREIRA. Após acesse o sistema pelo usuário de PAULO JOSE PEREIRA, login paulinho, e realizar alterações e remoções. ===== Dados para o Teste ===== * Para encontrar usuários com a permissão de enviar protocolo e que apresentam mais de uma unidade, usamos : SELECT pa.nome, u.login FROM comum.usuario_unidade uu JOIN comum.usuario u ON u.id_usuario = uu.id_usuario JOIN comum.pessoa p ON p.id_pessoa = u.id_pessoa JOIN comum.unidade un ON un.id_unidade = uu.id_unidade JOIN comum.permissao pe ON pe.id_usuario = u.id_usuario JOIN comum.papel pa ON pa.id = pe.id_papel WHERE pe.id_papel = 6 GROUP BY pe.id_unidade_papel, pa.nome, u.login, uu.id_usuario ORDER BY u.login * Para saber quais das unidades o usuário tem permissão de enviar protocolo, usamos: SELECT pa.nome, u.login, un.codigo_unidade, un.nome FROM comum.usuario u JOIN comum.permissao pe ON pe.id_usuario = u.id_usuario JOIN comum.papel pa ON pa.id = pe.id_papel JOIN comum.unidade un ON un.id_unidade = pe.id_unidade_papel WHERE u.login like '' AND pe.id_papel = 6