~~ODT~~ echo "
"; echo "Última atualização: "; ver('', false); echo "
";
====== Fluxo de Reservas dos Materiais da Bibliográficos ====== Esta especificação descreve o fluxo completo da parte de reservas de materiais bibliográficos. Foi criada essa especificação em separado porque o fluxo completo envolve várias parte do sistema, não existindo um //link// que seja possível realizá-lo. \\ \\ ** É importante descrevê-lo porque essa parte precisa ser bem entendida e testada** \\ \\ \\ \\ ===== Descrição do Caso de Uso ===== Um reserva do sistema pode passar por 5 status durante o seu ciclo de vida. Os possíveis status estão mostrados no diagrama abaixo. {{:desenvolvimento:especificacoes:sigaa:biblioteca:casos_de_uso:circulacao:status_de_um_reserva.jpg|}} \\ \\ \\ As ações realizada durante o ciclo de vida de uma reservas são mostradas no diagrama de atividades abaixo: {{:desenvolvimento:especificacoes:sigaa:biblioteca:casos_de_uso:circulacao:ações_de_uma_rerva.jpg|}} \\ \\ \\ \\ {{:desenvolvimento:especificacoes:sigaa:biblioteca:casos_de_uso:circulacao:ciclo_de_vidas_de_uma_reserva_no_sistema.zip| Código Fonte da modelagem das reservas }} \\ \\ ===== 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 | | ufrn.sigaa.biblioteca.circulacao.dominio.ReservaMaterialBiblioteca| sigaa.biblioteca.reserva_material_biblioteca| ====== Plano de Teste ====== Sistema: SIGAA Módulo: BIBLIOTECA Link(s): Não se aplica Usuário: Não se aplica Papel que usuário deve ter: Não se aplica Para papeis, links e usuário vide as especificações dos seguintes casos de uso: [[desenvolvimento:especificacoes:sigaa:biblioteca:casos_de_uso:modulo_do_servidor:reservas_de_materiais_bibliograficos:solicitar_nova_reserva | Solicitar nova reserva ]] [[desenvolvimento:especificacoes:sigaa:biblioteca:casos_de_uso:modulo_do_servidor:reservas_de_materiais_bibliograficos::visualizar_minhas_reservas | Visualizar minhas reservas ]] [[desenvolvimento:especificacoes:sigaa:biblioteca:casos_de_uso:circulacao:gerenciamento_de_reservas:visualizar_reservas_de_um_usuario| Visualizar reservas de um Usuário ]] [[desenvolvimento:especificacoes:sigaa:biblioteca:casos_de_uso:circulacao:gerenciamento_de_reservas:visualizar_reservas_de_um_titulo| Visualizar reservas de um Título ]] ===== Cenários de Teste ===== **ANTES DE COMEÇAR A TESTAR, LEMBRE-SE QUE ESSE CASO DE USO NÃO É UTILIZADO NA UFRN, FOI SOLICITADO PELA COOPERAÇÃO, ENTÃO NÃO VAI SER VALIDADO EM PRODUÇÃO ANTES DE IR PARA OUTRAS INSTITUIÇÕES, É MUITO IMPORTANTE TESTAR TODO O FLUXO DESCRITO NO DIAGRAMA DE ATIVIDADES ACIMA ** \\ \\ \\ \\ \\ **Importante:** Apesar do usuário realizar o empréstimo de um material específico da biblioteca, a reserva é feita para o **Título**. \\ \\ \\ Um Título possui vários materiais: "Brasil. Código de processo civil / 1999" * L172780 Livro REGULAR Emprestado * L172782 Livro REGULAR Disponível * L172782A CD-ROM REGULAR Disponível * L172783 Livro NÃO CIRCULA Disponível \\ **Para solicitar a reserva é preciso que os 2 materiais (L172780, L172782) estejam emprestado. Pois nessa contagem não é levado em consideração os anexos nem os materiais que possuem um status que não permite reservas. Aqui na UFRN o status NÃO CIRCULA.** \\ \\ \\ \\ \\ \\ A primeira coisa para começar a testar é escolher 3 ou 4 títulos do acervo e [[ desenvolvimento:especificacoes:sigaa:biblioteca:casos_de_uso:circulacao:modulo_de_circulacao:realizar_emprestimo | realizar empréstimos ]] para todos os seus materiais, porque uma reserva só pode ser solicitada se não tiver material disponível na biblioteca. \\ Logicamente, escolha títulos com 2 ou 3 materiais. Para a quantidade de empréstimos necessários não ficar enorme. Utilize discentes e servidores diversos do sistema para realizar esses empréstimos. \\ Se precisar cadastrar discentes ou servidores para utilizar a biblioteca utilize [[desenvolvimento:especificacoes:sigaa:biblioteca:casos_de_uso:circulacao:gerenciamentos_dos_usuarios_da_biblioteca:cadastrar_alterar_senha| Cadastrar Usuário Biblioteca ]] \\ \\ \\ Pegue um gama nova de usuários (de 5 a 10 ) para realizar as reservas. (Usuários não podem solicitar reservas para materiais que já estão emprestados para eles, por isso precisam ser novos usuários. Pegue pelos menos 1 usuário em comum como o primeiro grupo para testar esse regra) \\ \\ **É MUITO importante ** realizar várias reserva com vários usuários diferentes, para vários títulos do acervo. \\ \\ [[ desenvolvimento:especificacoes:sigaa:biblioteca:casos_de_uso:circulacao:modulo_de_circulacao:devolver_emprestimo | Devolva pelo menos 2 materiais ]] do mesmo Título que possuam reserva. Verificar que as 2 primeiras reservas do Título ficaram EM_ESPERA. Tente fazer um empréstimo para algum desses materiais com algum usuário diferente dos 2 usuários que solicitaram a reserva. O sistema não deve permitir. \\ \\ Realize o empréstimo com um usuário cuja a reserva foi colocada EM_ESPERA. Verifica se a primeira reserva EM_ESPERA do Título fica com o status de CONCRETIZADA. \\ \\ Sempre que um reserva for para EM_ESPERA, verifique se o usuário solicitador da reserva recebeu um aviso. \\ \\ Deixa a outra reserva EM_ESPERA expirar o prazo. Espere ou rode manualmente a rotina que verifica as reservas EM_ESPERA vencidas. SIGAA -> Biblioteca -> Administração -> Executar Verificação Reservas Vencidas. // (é preciso usuário com papel SigaaPapeis. BIBLIOTECA_ADMINISTRADOR_SISTEMA)// \\ \\ Verifique se a reserva EM_ESPERA vencida passou para CANCELADA e próxima reserva do Título foi colocada EM_ESPERA(a próxima considerando a data da solicitação da reserva). \\ \\ \\ ===== Dados para o Teste ===== \\ Para visualizar as reserva de um Título específico do acervo utilize o caso de uso: [[ desenvolvimento:especificacoes:sigaa:biblioteca:casos_de_uso:circulacao:gerenciamento_de_reservas:visualizar_reservas_de_um_titulo | Visualizar Reservas de um Título ]] \\ \\ Para visualizar as reserva de um Usuário em específico utilize o caso de uso: [[ desenvolvimento:especificacoes:sigaa:biblioteca:casos_de_uso:circulacao:gerenciamento_de_reservas:visualizar_reservas_de_um_usuario | Visualizar Reservas de um Usuário ]] \\ Para verificar as reservas ativas no banco utilizar o sql : select * from biblioteca.reserva_material_biblioteca where status in( 0, 1) order by id_titulo_catalografico, data_solicitacao \\ \\ Para verificar as reservas canceladas manualmente no banco utilizar o sql : select * from biblioteca.reserva_material_biblioteca where status in( 3) order by id_titulo_catalografico, data_solicitacao \\ \\ Para mudar o prazo que o usuário tem para concretizar a reserva e força-la a ficar expirada, utilize o sql substituindo xxxxx pelo id da reserva: update biblioteca.reserva_material_biblioteca set prazo_retirada_material= '' where status in(1) and id_reserva_material_biblioteca = xxxxxx