~~ODT~~ echo "
"; echo "Última atualização: "; ver('', false); echo "
";
====== Consultar Afastamentos ====== Trata da consulta de afastamentos solicitados. A partir dele é possível acompanhar o status das solicitações do afastamento e realizar alterações. A consulta é utilizada pelos servidores. O servidor deverá ter algum afastamento para realizar a busca. ===== Descrição do Caso de Uso ===== Este caso de uso inicia-se quando o usuário acessa //SIGRH -> Portal do Servidor -> Solicitações -> Afastamentos -> Consultar Afastamento// Serão mostradas as seguintes opções de busca: O usuário poderá informar os seguintes critérios de busca ([[#Principais_Regras_de_Negocio|RN01]]): * **Status Afastamento**: Tipo - TEXTO. São apresentadas opções: ''Cancelada, Dispensa Homologação, Homologada, Negada, Não Enviada, Pendente de Autorização, Retornada''. * **Período de Cadastro**: Formato - DD/MM/AAAA, Tipo - DATA. * **Período de Solicitação**: Formato - DD/MM/AAAA, Tipo - DATA. * **Motivo**:Tipo - TEXTO. São apresentadas opções: ''Para Participação em Competição Desportiva no País'' , ''Para desenvolver projetos de cooperação científica cultural ou tecnológica no país'' , ''Para participar de eventos no país, Para participar de órgãos de deliberação coletiva no país'' , ''Para participação em Banca'' , ''Para prestar colaboração temporária a instituições públicas de ensino e pesquisa'' , ''Viagem a serviço no pais'' * **Descrição do Motivo**: Tipo - TEXTO. Ao realizar a busca, são exibidas as seguintes informações: * **__Início__**: Formato - DD/MM/AAAA, Tipo - DATA. * **__Término__**:Formato - DD/MM/AAAA, Tipo - DATA. * **__Quant. dias__**: Tipo - Numérico * **__Motivo do afastamento__**: Tipo - TEXTO * **__Descrição detalhada do motivo__**: Tipo - TEXTO * **__Status__**: Tipo - TEXTO Para cada item da lista o sistema pode disponibilizar as opções de //[[desenvolvimento:especificacoes:sigrh:portal_do_servidor:casos_de_uso:consultas:ausencias|visualizar]]//, //alterar// ([[#Principais_Regras_de_Negocio|RN02]]), //enviar//, //remover// a solicitação ([[#Principais_Regras_de_Negocio|RN04]]) e Gerar Comprovante. O caso de uso é finalizado. ===== Principais Regras de Negócio ===== * **RN01** - Não será necessário informar nenhuma restrição para a busca. * **RN02** - O usuário só poderá realizar a alteração da solicitação se a mesma estiver como ''Não enviada'' ou ''Retornada''. * **RN03** - Só deverão ser mostrados os afastamentos ativos do servidor. * **RN04** - O usuário só poderá remover uma solicitação se a mesma estiver como ''Não enviada'' ou ''Pendente de autorização''. ==== Resoluções/Legislações Associadas ==== Não se aplica ===== Classes Persistentes e Tabelas Envolvidas ===== ^ Classe ^ Tabela | |br.ufrn.sigrh.funcional.dominio.Ausencia |administrativo.funcional.ausencia | |br.ufrn.sigrh.funcional.dominio.AusenciaAfastamento |administrativo.funcional.ausencia_afastamento | |br.ufrn.sigrh.funcional.dominio.StatusAusencia |administrativo.funcional.status_ausencia | |br.ufrn.sigrh.funcional.dominio.Servidor |administrativo.rh.servidor | ====== Plano de Teste ====== Sistema: SIGRH Módulo: Portal do Servidor Link(s): Solicitações -> Afastamentos -> Consultar Afastamento Usuário: pablo, alc, dalton Papel que usuário deve ter: SigrhPapeis.Servidor ===== Cenários de Teste ===== * Verificar se as restrições da busca, referentes a status, datas de solicitação, datas de cadastramento e motivo, estão sendo aplicadas de forma correta. * Verificar se a alteração pode ser realizada apenas por solicitações ''Retornada'' ou ''Não enviada''. * Verificar se todas as solicitações de afastamento listadas são ativas. ===== Dados para o Teste ===== * É possível realizar a solicitação dos afastamentos do servidor através do caso de uso [[solicitar_afastamento|Solicitar Afastamento]] onde a mesma deverá ser exibida na consulta. * Também pode ser usado o código SQL para mostrar todos os afastamentos do servidor (O "?" deverá ser substituido pelo id_servidor do servidor) SELECT * FROM funcional.ausencia INNER JOIN funcional.ausencia_afastamento afastamento using(id_ausencia_afastamento) INNER JOIN funcional.status_ausencia status using(id_status_ausencia) INNER JOIN rh.servidor servidor using(id_servidor) WHERE servidor.id_servidor = ?