~~ODT~~
Total de servidores aposentados e pensionistas X ativos
Esse caso de uso tem por finalidade gerar um relatório com a quantidade total de aposentados da UFRN e dos hospitais. Esse relatório é gerado utilizando uma consulta por período e é utilizado por qualquer usuário do sistema.
Descrição do Caso de Uso
Este caso de uso inicia quando o usuário acessa a opção: SIGRH → Portal Público → Relatórios Estatísticos → Entrar na página de Relatórios Estatísticos → Total de servidores aposentados e pensionistas X ativos.
Para realizar uma consulta, deve-se entrar com os seguintes dados:
- Ano: Formato - AAAA. Tipo - NUMÉRICO.
Então o sistema exibe um relatório.
- Modelo do relatório.
TOTAL DE APOSENTADOS - UFRN e HOSPITAIS
MESES | |||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Servidores | Jan | Fev | Mar | Abr | Mai | Jun | Jul | Ago | Set | Out | Nov | Dez | |||||||||||||||||||||
UFRN | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 | |||||||||||||||||||||
Hospitais | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 | |||||||||||||||||||||
TOTAL | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 | 999 |
O gráfico deve seguir o seguinte modelo:
O caso de uso é finalizado.
Principais Regras de Negócio
Não se aplica.
Classes Persistentes e Tabelas Envolvidas
Classe | Tabela |
---|---|
br.ufrn.rh.dominio.Servidor | administrativo.rh.servidor |
br.ufrn.sigrh.dominio.Unidade | administrativo.comum.unidade |
Plano de Teste
Sistema: SIGRH
Módulo: Portal Público
Link(s): Este caso de uso inicia quando o usuário acessa a opção: SIGRH → Portal Público → Relatórios Estatísticos → Entrar na página de Relatórios Estatísticos → Total de servidores aposentados e pensionistas X ativos.
Cenários de Teste
http://homologacao.info.ufrn.br/sigrh/public/home.jsf
http://testes.info.ufrn.br/sigrh/public/home.jsf
http://www.sigrh.ufrn.br/sigrh/public/home.jsf
Realizar as consultas no banco de dados e comparar com os resultados mostrados no relatório.
Dados para o Teste
Script para consultar os aposentados:
SELECT 'UFRN' AS DENOMINACAO, 1 AS ORDEM, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-01-31') THEN 1 ELSE NULL END) AS JANEIRO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-02-28') THEN 1 ELSE NULL END) AS FEVEREIRO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-03-31') THEN 1 ELSE NULL END) AS MARCO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-04-30') THEN 1 ELSE NULL END) AS ABRIL, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-05-31') THEN 1 ELSE NULL END) AS MAIO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-06-30') THEN 1 ELSE NULL END) AS JUNHO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-07-31') THEN 1 ELSE NULL END) AS JULHO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-08-31') THEN 1 ELSE NULL END) AS AGOSTO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-09-30') THEN 1 ELSE NULL END) AS SETEMBRO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-10-31') THEN 1 ELSE NULL END) AS OUTUBRO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-11-30') THEN 1 ELSE NULL END) AS NOVEMBRO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-12-31') THEN 1 ELSE NULL END) AS DEZEMBRO FROM RH.servidor AS rs INNER JOIN COMUM.unidade AS cu ON cu.id_unidade = rs.id_unidade WHERE rs.id_categoria IN (1,2) AND rs.id_situacao = 2 AND (cu.id_classificacao_unidade IS NULL OR cu.id_classificacao_unidade != 2) UNION SELECT 'Hospitais' AS DENOMINACAO, 2 AS ORDEM, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-01-31') THEN 1 ELSE NULL END) AS JANEIRO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-02-28') THEN 1 ELSE NULL END) AS FEVEREIRO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-03-31') THEN 1 ELSE NULL END) AS MARCO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-04-30') THEN 1 ELSE NULL END) AS ABRIL, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-05-31') THEN 1 ELSE NULL END) AS MAIO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-06-30') THEN 1 ELSE NULL END) AS JUNHO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-07-31') THEN 1 ELSE NULL END) AS JULHO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-08-31') THEN 1 ELSE NULL END) AS AGOSTO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-09-30') THEN 1 ELSE NULL END) AS SETEMBRO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-10-31') THEN 1 ELSE NULL END) AS OUTUBRO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-11-30') THEN 1 ELSE NULL END) AS NOVEMBRO, COUNT(CASE WHEN (rs.data_desligamento IS NULL OR rs.data_desligamento >= '2010-12-31') THEN 1 ELSE NULL END) AS DEZEMBRO FROM RH.servidor AS rs INNER JOIN COMUM.unidade AS cu ON cu.id_unidade = rs.id_unidade WHERE rs.id_categoria IN (1,2) AND rs.id_situacao = 2 AND cu.id_classificacao_unidade = 2 ORDER BY ORDEM