~~ODT~~ echo "
"; echo "Última atualização: "; ver('', false); echo "
";
====== 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)