~~ODT~~ echo "
"; echo "Última atualização: ";ver('', false);echo "
";
====== Relatório de Empréstimos por Unidade ====== Neste caso de uso, os bibliotecários podem verificar a distribuição dos empréstimos e renovações dentro das unidades da instituição. ===== Descrição do Caso de Uso ===== Este caso de uso é iniciado quando o usuário acessa //SIGAA -> Biblioteca -> Link(s): Relatórios -> Circulação -> Empréstimos -> Empréstimos por Unidade//. São disponibilizados os seguintes filtros para o usuário: * **Bibliotecas** * - o usuário deve escolher uma ou mais bibliotecas. Somente empréstimos feitos nessas bibliotecas serão considerados. * **Categoria de Usuário** - o tipo de usuário da biblioteca: //Aluno de Graduação//, //Docente//, //Docente Externo//, etc. * **Tipo de Material** - //Livro//, //Mapa//, //CD-ROM//, etc. * **Tipo de Empréstimo** - //Normal//, //Especial//, //Fotocópia//, etc. * **Período** * - Somente empréstimos e renovações feitas nesse período serão levados em conta. Ao escolher a opção //Gerar Relatório//, o sistema apresenta ao usuário um relatório com o seguinte modelo: ^Unidade ^ Empréstimos ^ Renovações ^ Empréstimos + Renovações ^ |Departamento de Matemática | 123| 100| 223| |Superintendência de Infra-Estrutura | 40| 50| 90| |Centro de Tecnologia | 9| 10| 19| ===== Principais Regras de Negócio ===== * **RN01** - //Observação:// após uma alteração na arquitetura do Módulo Biblioteca, as informações de vínculo do usuário utilizado no empréstimo não estão disponíveis para os empréstimos feitos antes de maio de 2010. Antes disso, as informações eram mostradas, mas frequentemente estavam erradas, por conta dos vários vínculos que um usuário podia ter. Assim, não é possível ligar um usuário à sua unidade para esses empréstimos. ==== Resoluções/Legislações Associadas ==== Não se aplica. ===== Classes Persistentes e Tabelas Envolvidas ===== ^ Classe ^ Tabela | | br.ufrn.sigaa.biblioteca.circulacao.dominio.Emprestimo | sigaa.biblioteca.emprestimo | | br.ufrn.sigaa.biblioteca.circulacao.dominio.ProrrogacaoEmprestimo | sigaa.biblioteca.prorrogacao_emprestimo | | br.ufrn.sigaa.dominio.Unidade | sigaa.comum.Unidade | ====== Plano de Teste ====== Sistema: SIGAA Módulo: Biblioteca Link(s): Relatórios -> Circulação -> Empréstimos -> Empréstimos por Unidade Usuário: angelike, edila, ekanzaki Papel que usuário deve ter: SigaaPapeis.BIBLIOTECA_SETOR_CONTROLE_ESTATISTICO ===== Cenários de Teste ===== * Testar os vários filtros * Realizar / cancelar empréstimos e verificar se o relatório reflete as mudanças. ===== Dados para o Teste ===== --------- --------- Total Emprétimos para servidores na BCZM entre '01/08/2009' '01/09/2011' --------- --------- OS NÚMEROS TOTAIS DO RELATÓRIO DEVEM BATER COM OS NÚMEROS DESSA CONSULTA ( escolhendo-se a mesma biblioteca e período ) --------- SELECT count(distinct e.id_emprestimo) from biblioteca.emprestimo e INNER JOIN biblioteca.material_informacional m on m.id_material_informacional = e.id_material INNER JOIN biblioteca.usuario_biblioteca ub ON ub.id_usuario_biblioteca = e.id_usuario_biblioteca INNER JOIN rh.servidor sv ON ub.identificacao_vinculo = sv.id_servidor INNER JOIN comum.unidade unidade ON unidade.id_unidade = sv.id_unidade WHERE e.data_emprestimo between '01/08/2009 00:00:00.000' and '01/09/2011 23:59:59.000' AND e.ativo = true AND m.id_biblioteca = 661399 AND ub.vinculo IN (3,4) --- vinculos de alunos ; --------- --------- Renovações para servidores na BCZM entre '01/08/2009' '01/09/2011' --------- --------- OS NÚMEROS TOTAIS DO RELATÓRIO DEVEM BATER COM OS NÚMEROS DESSA CONSULTA ( escolhendo-se a mesma biblioteca e período ) --------- SELECT count(distinct p.id_prorrogacao_emprestimo) from biblioteca.emprestimo e INNER JOIN biblioteca.prorrogacao_emprestimo p on p.id_emprestimo = e.id_emprestimo INNER JOIN biblioteca.material_informacional m on m.id_material_informacional = e.id_material INNER JOIN biblioteca.usuario_biblioteca ub ON ub.id_usuario_biblioteca = e.id_usuario_biblioteca INNER JOIN rh.servidor sv ON ub.identificacao_vinculo = sv.id_servidor INNER JOIN comum.unidade unidade ON unidade.id_unidade = sv.id_unidade WEHRE p.data_cadastro between '01/08/2009 00:00:00.000' and '01/09/2011 23:59:59.000' AND e.ativo = true AND m.id_biblioteca = 661399 and p.tipo = 5 AND ub.vinculo IN (3,4) --- vinculos de alunos ;