~~ODT~~ echo "
"; echo "Última atualização: "; ver('', false); echo "
";
====== Relatório de Usuários com Multas ====== Esse relatório é utilizado pelos bibliotecários na seção de controle estatístico das bibliotecas. Neste relatório é possível consultar os usuários que estão multados atualmente no sistema. ===== Descrição do Caso de Uso ===== Este caso de uso inicia quando o usuário acessa a opção: //SIGAA -> Biblioteca -> Relatórios -> Circulação -> Usuários -> Usuários com Multas//. Ao acessar o caso de uso o sistema fornece as seguintes opções de busca: * **Bibliotecas**: Tipo - TEXTO. O sistema lista para seleção as bibliotecas, ao selecionar nenhuma o filtro automaticamente assume ''TODAS'' * **Categorias de Usuário***: Tipo - TEXTO. Opções: ''TODAS'', ''ALUNO DE GRADUAÇÃO'', ''DOCENTE'' e etc * **Incluir multas manuais**: Tipo - LÓGICO. O sistema lista os usuários multados conforme os critérios selecionados pelo usuário, no seguinte modelo: * Relatório de Usuários Multados * **__Bibliotecas__**: Tipo - TEXTO. * **__Categoria de Usuário__**: Tipo - TEXTO. * **__Incluir multas manuais__**: Formato - SIM/NÃO, Tipo - TEXTO. * **__Categoria__**: Tipo - TEXTO. * **__Biblioteca__**: Tipo - TEXTO. * **__Nome__**: Tipo - TEXTO. * **__CPF__**: Formato - 999.999.999-99, Tipo - NUMÉRICO. * **__Cód. Barras__**: Tipo - TEXTO e NUMÉRICO. * **__Material__**: Tipo - TEXTO. * **__Data do Empréstimo__**: Formato - DD/MM/AAAA, Tipo - DATA. * **__Prazo__**: Formato - DD/MM/AAAA HH:MM:SS, Tipo - DATA e NUMÉRICO. * **__Data de Devolução__**: Formato - DD/MM/AAAA HH:MM:SS, Tipo - DATA e NUMÉRICO. * **__Valor da Multa__**: Formato - R$ 9,99, Tipo - TEXTO e NUMÉRICO. * **__Total(POR CATEGORIAS DE USUÁRIO e BIBLIOTECAS)__**: Formato - 99.. usuários / 99.. empréstimos, Tipo - TEXTO e NUMÉRICO. * **__Total(POR CATEGORIA DE USUÁRIO)__**: Formato - 99... usuários / 99... empréstimos, Tipo - TEXTO e NUMÉRICO. * **__Total Geral__**: Formato - 99... usuários / 99... empréstimos, Tipo - TEXTO e NUMÉRICO. O caso de uso é finalizado. ===== 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.sigaa.biblioteca.circulacao.dominio.MultaUsuarioBiblioteca | sigaa.biblioteca.multa_usuario_biblioteca | | br.ufrn.sigaa.biblioteca.circulacao.dominio.Emprestimo | sigaa.biblioteca.emprestimo | | br.ufrn.sigaa.biblioteca.circulacao.dominio.UsuarioBiblioteca | sigaa.biblioteca.usuario_biblioteca | | br.ufrn.sigaa.pessoa.dominio.Pessoa | sigaa.comum.pessoa | | br.ufrn.sigaa.biblioteca.dominio.Biblioteca | sigaa.biblioteca.biblioteca | | br.ufrn.sigaa.biblioteca.processos_tecnicos.dominio.MaterialInformacional | sigaa.biblioteca.material_informacional | | br.ufrn.sigaa.biblioteca.processos_tecnicos.dominio.Exemplar | sigaa.biblioteca.exemplar | | br.ufrn.sigaa.biblioteca.processos_tecnicos.dominio.Fasciculo | sigaa.biblioteca.fasciculo | | br.ufrn.sigaa.biblioteca.processos_tecnicos.dominio.Assinatura | sigaa.biblioteca.assinatura | | br.ufrn.sigaa.biblioteca.processos_tecnicos.dominio.CacheEntidadesMarc| sigaa.biblioteca.cache_entidades_marc | | br.ufrn.sigaa.comum.Usuario | sigaa.comum.usuario | ====== Plano de Teste ====== Sistema: SIGAA Módulo: Biblioteca Link(s): Menu Biblioteca -> Relatórios -> Circulação -> Usuários -> Usuários com Multas Usuário: clediane, angelike, regina Papel que usuário deve ter: SigaaPapeis.BIBLIOTECA_SETOR_CONTROLE_ESTATISTICO ===== Cenários de Teste ===== Não se aplica. ===== Dados para o Teste ===== -- Recupera ids da bibliotecas do sistema para usar na busca SELECT id_biblioteca FROM biblioteca.biblioteca --- recupera as multas ativas dos sistema SELECT usub.vinculo, bibl.descricao, empr.data_emprestimo, empr.prazo, empr.data_devolucao, multa.valor, COALESCE(pessoa.nome, biblU.descricao) AS nome, usub.id_usuario_biblioteca, pesresp.nome AS nome_responsavel, multa.motivo_cadastro, matr.codigo_barras, cache.titulo, cache.autor, pessoa.cpf_cnpj, multa.id_usuario_cadastro, multa.id_multa_usuario_biblioteca FROM biblioteca.multa_usuario_biblioteca AS multa LEFT JOIN biblioteca.emprestimo AS empr ON multa.id_emprestimo = empr.id_emprestimo INNER JOIN biblioteca.usuario_biblioteca AS usub ON usub.id_usuario_biblioteca = COALESCE(multa.id_usuario_biblioteca, empr.id_usuario_biblioteca) LEFT JOIN comum.pessoa AS pessoa ON usub.id_pessoa = pessoa.id_pessoa LEFT JOIN biblioteca.biblioteca AS biblU ON biblU.id_biblioteca = usub.id_usuario_biblioteca LEFT JOIN biblioteca.material_informacional AS matr ON matr.id_material_informacional = empr.id_material LEFT JOIN biblioteca.exemplar AS exem ON exem.id_exemplar = matr.id_material_informacional LEFT JOIN biblioteca.fasciculo AS fasc ON fasc.id_fasciculo = matr.id_material_informacional LEFT JOIN biblioteca.assinatura AS ass ON ass.id_assinatura = fasc.id_assinatura LEFT JOIN biblioteca.cache_entidades_marc AS cache ON cache.id_titulo_catalografico = exem.id_titulo_catalografico OR cache.id_titulo_catalografico = ass.id_titulo_catalografico LEFT JOIN biblioteca.biblioteca AS bibl ON bibl.id_biblioteca = matr.id_biblioteca LEFT JOIN comum.usuario AS usuresp ON usuresp.id_usuario = multa.id_usuario_cadastro LEFT JOIN comum.pessoa AS pesresp ON pesresp.id_pessoa = usuresp.id_pessoa WHERE multa.ativo = trueValue() -- não estornada AND multa.status = 0 -- EM_ABERTO AND ( multa.data_cadastro BETWEEN 'xx/xx/xxxx XX:xx' and 'xx/xx/xxxx XX:xx' ) -- em uma data específica AND ( matr.id_biblioteca IN ( 'colocar ids de bibliotecas ' ) ) -- de uma biblioteca específica