~~ODT~~ echo "
"; echo "Última atualização: "; ver('', false); echo "
";
====== Autorizar Proposto com Diárias Ultrapassadas ====== Esse caso de uso tem o objetivo de autorizar as requisições de diárias dos propostos que ultrapassam quarenta diárias no mesmo ano. Precondição: requisições de diárias no status PENDENTE AUTORIZAÇÃO. ===== Descrição do Caso de Uso ===== Este caso de uso inicia quando o usuário acessa a opção: //SIPAC -> Atendimento de Requisições -> Diárias -> Atendimento -> Autorizar Proposto com Diárias Ultrapassadas//. Ao acessar o caso de uso são listadas todas as requisições no status definido, sendo possível para cada uma delas: * **Visualizar Requisição**: Visualiza os detalhes da requisição. * **Autorizar**: Autoriza a requisição. * **Negar**: Nega a Requisição. Ao final do caso de uso indicar término, sugestão: o caso de uso é finalizado. ===== Principais Regras de Negócio ===== * **RN01** - Após autorização a requisição segue para o status ENVIADA. * **RN02** - Após negada, a requisição é cancelada tendo seus valores contidos estornados. ==== Resoluções/Legislações Associadas ==== Artigo 7º do Decreto nº 7.689 de 2 de março de 2012: http://www.planalto.gov.br/ccivil_03/_Ato2011-2014/2012/Decreto/D7689.htm ===== Classes Persistentes e Tabelas Envolvidas ===== ^ Classe ^ Tabela | | br.ufrn.sipac.requisicoes.diarias.dominio.RequisicaoDiarias | requisicoes.requisicao_diaria | ====== Plano de Teste ====== Sistema: SIPAC Módulo: Atendimento de Requisições Link(s): Diárias -> Atendimento -> Autorizar Proposto com Diárias Ultrapassadas Usuário: Papel que usuário deve ter: SipacPapeis.AUTORIZADOR_DIARIAS_ULTRAPASSADAS ===== Cenários de Teste ===== Cadastrar requisições para um proposto que tenha ultrapassado o limite de 40 req. de diárias enviadas no ano e também para propostos que não ultrapassaram. Comportamento Esperado: Para o proposto que ultrapassou o limite deve aparecer na listagem a requisição. Para o proposto que NÃO ultrapassou o limite NÃO deve aparecer na listagem a requisição. ===== Dados para o Teste ===== -- SCRIPT PARA AUXILIAR NOS TESTES, TRAS TODOS OS PROPOSTOS COM QUANTIDADE ACIMA DO LIMITE NO ANO DE 2016. SELECT COUNT(id_proposto) FROM requisicoes.requisicao_diaria rd INNER JOIN comum.pessoa p ON p.id_pessoa=rd.id_proposto INNER JOIN rh.servidor s ON s.id_pessoa=p.id_pessoa WHERE s.data_desligamento IS NULL rd.ano=2016 AND rd.id_status IN ( 101,104,105,106,108,1011,103,109,715,717,716,702,703,708,718,709,710,711,757,758,760 ) AND GROUP BY id_proposto HAVING COUNT(id_proposto) > 40;