~~ODT~~
Bolsista Carente
Esse caso de uso gera o relatório dos bolsistas carentes com bolsas ativas ou não.
O relatório de bolsas por curso pode ser visualizado pelos usuários responsáveis da Pró-Reitoria de Administração - PROAD, mais especificamente da Seção de Bolsas, além dos gestores de bolsas dos centros.
Descrição do Caso de Uso
Esse caso de uso é acessado através do link: SIPAC → Bolsas → Módulos → Bolsas → Operações → Relatórios → Bolsista Carente.
O caso de uso se inicia com uma consulta das bolsas. Os filtros para a consulta são:
- Com Bolsa Ativa?: Tipo - LÓGICO.
- Tipo da Bolsa: Formato - DENOMINAÇÃO DO TIPO DE BOLSA - (UNIDADE PAGADORA DO TIPO DE BOLSA), Tipo - TEXTO.
Ao realizar a consulta o sistema exibe os dados dos bolsistas por tipo de bolsa, conforme modelo:
Relatório Bolsista Carente
- Com Bolsa Ativa?: Tipo - LÓGICO.
- Tipo da Bolsa: Formato - DENOMINAÇÃO DO TIPO DE BOLSA - (UNIDADE PAGADORA DO TIPO DE BOLSA), Tipo - TEXTO.
DENOMINAÇÃO DO TIPO DE BOLSA | ||||
---|---|---|---|---|
MATRÍCULA | Nome | CPF | Curso | Telefone |
99999999999 | NOME DO ESTUDANTE | 999999999999 | DENOMINAÇÃO DO NOME DO CURSO | 99999999 |
99999999999 | NOME DO ESTUDANTE | 999999999999 | DENOMINAÇÃO DO NOME DO CURSO | 99999999 |
Total de Bolsistas: 999 |
Principais Regras de Negócio
Não se aplica.
Resoluções/Legislações Associadas
Não se Aplica.
Classes Persistentes e Tabelas Envolvidas
Classe | Tabela |
---|---|
br.ufrn.sipac.bolsas.dominio.Bolsa | administrativo.bolsas.bolsa |
br.ufrn.sipac.bolsas.dominio.Bolsista | administrativo.bolsas.bolsista |
Plano de Teste
Sistema: SIPAC
Módulo: Bolsas
Link(s): Módulos → Bolsas → Operações → Relatórios → Bolsista Carente
Usuário: rcn(GESTOR_BOLSAS_GLOBAL), mvoc(GESTOR_BOLSAS_CENTRO)
Papel que usuário deve ter:
- SipacPapeis.GESTOR_BOLSAS_GLOBAL
- SipacPapeis.GESTOR_BOLSAS_CENTRO
Cenários de Teste
Não se aplica.
Dados para o Teste
Para procurar por uma bolsa ativa de um tipo específico. Para buscar todos basta apagar a ultima linha “and tipo.id = 60”
SELECT DISTINCT ON(b.id_bolsista,tipo.id) b.id_bolsista AS id, tipo.id, bolsista.matricula AS matricula,a.nome AS nome,p.cpf_cnpj AS cpf, c.denominacao AS denominacao, p.telefone AS telefone, tipo.denominacao AS denominTipo FROM bolsas.bolsa b INNER JOIN bolsas.bolsista bolsista ON b.id_bolsista=bolsista.id INNER JOIN academico.aluno a ON a.id_aluno=bolsista.id_aluno INNER JOIN bolsas.tipo_bolsa tipo ON tipo.id=b.id_tipo_bolsa INNER JOIN academico.curso c ON c.id_curso=bolsista.id_curso INNER JOIN comum.pessoa p ON p.id_pessoa=bolsista.id_pessoa WHERE bolsista.aluno_carente IS TRUE AND a.id_status IS NOT NULL AND a.id_status IN(1,8,9) AND b.data_finalizacao IS NULL AND b.fim>'dataAtual' AND tipo.id = 60
Para buscar bolsas inativas:
SELECT DISTINCT ON(b.id_bolsista,tipo.id) b.id_bolsista AS id, tipo.id, bolsista.matricula AS matricula,a.nome AS nome,p.cpf_cnpj AS cpf, c.denominacao AS denominacao, p.telefone AS telefone, tipo.denominacao AS denominTipo FROM bolsas.bolsa b INNER JOIN bolsas.bolsista bolsista ON b.id_bolsista=bolsista.id INNER JOIN academico.aluno a ON a.id_aluno=bolsista.id_aluno INNER JOIN bolsas.tipo_bolsa tipo ON tipo.id=b.id_tipo_bolsa INNER JOIN academico.curso c ON c.id_curso=bolsista.id_curso INNER JOIN comum.pessoa p ON p.id_pessoa=bolsista.id_pessoa WHERE bolsista.aluno_carente IS TRUE AND a.id_status IS NOT NULL AND a.id_status IN(1,8,9) AND (b.fim<'dataAtual' OR b.data_finalizacao IS NOT NULL)