~~ODT~~ echo "
"; echo "Última atualização: "; ver('', false); echo "
";
====== Compra de Créditos ====== Este caso de uso tem a finalidade de realizar compras de créditos no restaurante universitário. Essa funcionalidade é acessada pelos discentes e servidores da instituições. ===== Descrição do Caso de Uso ===== Este caso de uso inicia quando o usuário acessa a opção: //SIPAC -> Portal Administrativo → Outros → Compra de Créditos//. Ao acessar o caso de uso são solicitadas informações para adição de créditos e geração da GRU para pagamento. * **Quantidade de Créditos***: Tipo - Numérico. Número de créditos para abastecimento do cartão. ([[#principais_regras_de_negócio|RN01]]). Após a confirmação é gerada uma GRU com o valor correspondente aos créditos selecionados. Na mesma tela é exibido um histórico das GRU emitidas, com informação de pagamento confirmado ou não, exibindo os dados abaixo: * **__Data de Geração da GRU__**: Data em que a GRU foi gerada pelo usuário. * **__Valor da GRU__**: Valor total da GRU gerada. * **__Quantidade de Créditos__**: Quantidade de créditos totais da GRU gerada. * **__Créditos adiantados__**: Exibe a quantidade de créditos adiantados com a geração da GRU. * **__Data do pagamento da GRU__**: Data em que a GRU foi paga. * **__Data do processamento da GRU__**: Data em que a GRU foi processada. * **__Situação__**: Situação da GRU. Pode ser 'Paga', 'Pendente' ou 'Estornada'. * Paga: GRU que teve o pagamento compensado (mesmo que tenha sido estornada no sistema). * Pendente: GRU com pagamento ainda não compensado. * Estornada: GRU estornada pelo usuário. A situação estornada é seguida pelo usuário de quem realizou a operação, exemplo: 'Estornada' (nomedousuário). * **Reimprimir GRU**: Botão para reimprimir alguma GRU pendente. ([[#principais_regras_de_negócio|RN08]]). * **Estornar GRU**: Botão para estornar uma GRU gerada e ainda não paga. ([[#principais_regras_de_negócio|RN011, RN12, RN13, RN14 e RN16]]). O caso de uso é finalizado. ===== Principais Regras de Negócio ===== * **RN01** - A quantidade máxima de créditos deve ser respeitada. * **RN02** - O valor da refeição (almoço ou janta) é de 3 reais para aluno e 4,50 para servidor. * **RN03** - Poderão ser geradas GRUs sem precisar de pagamento da anterior até um limite máximo de X créditos. Então poderão ser geradas até X GRUs de 1 crédito cada sem precisar pagar a anterior. * **RN04** - A compensação da GRU será de 0 créditos para GRUs de até X créditos. * **RN05** - Para valores acima de X refeições o número de refeições creditadas será o número de refeições da GRU menos X. * **RN06** - Após gerar até X créditos sem compensação bancária, não poderá ser gerada uma próxima GRU. * **RN07** - Após ter compensação bancária qualquer GRU pendente, é possível gerar uma nova GRU (até completar o valor de X refeições não pagas) * **RN08** - Opção habilitada para GRUs com situação "pendente". * **RN09** - Não é permitido a compra de créditos com usuários bolsistas. * **RN10** - Depois do vencimento da GRU, diariamente avisar aos alunos que ultrapassaram esse limite que seu cartão será bloqueado em 10 dias corridos. Após esse tempo, bloquear cartão. O cartão será desbloqueado com o pagamento da GRU em atraso. * **RN11** - Somente será possível estornar GRU com situação ''PENDENTE''. * **RN12** - Não é possível estornar uma GRU com situação ''PAGA''. * **RN13** - Não é possível estornar uma GRU ''PENDENTE'' cujo algum bônus tenha sido consumido. * **RN14** - Caso estorne alguma GRU antes da compensação, os créditos entram e status muda para ''PAGA''. * **RN15** - GRUs estornadas continuam na listagem. * **RN16** - Somente gestores do restaurante podem utilizar a operação de estorno de GRU. * X = valor parametrizado ==== Resoluções/Legislações Associadas ==== Não se aplica. ===== Classes Persistentes e Tabelas Envolvidas ===== ^ Classe ^ Tabela | | br.ufrn.sipac.contratos.dominio.GuiaRecolhimentoUniao | contratos.guia_recolhimento_uniao | ====== Plano de Teste ====== Sistema: SIPAC Módulo: Portal Administrativo Link(s): Outros → Compra de Créditos Usuário: qualquer usuário que possua cartão de acesso ao Restaurante Universitário Papel que usuário deve ter: Não é necessário papel. ===== Cenários de Teste ===== Acessar o caso de uso e informar uma quantidade de créditos qualquer. ===== Dados para o Teste ===== Executar o select abaixo no banco de dados COMUM e verificar se a GRU foi criada para o usuário. select * from gru.guia_recolhimento_uniao order by id_gru desc limit 10 Selects auxiliares p/ visualizar/alterar os créditos respectivamente (BD Administrativo): select credito_refeicoes,credito_refeicoes_almoco from restaurante.cartao_pagamento_pessoa where id_pessoa= update restaurante.cartao_pagamento_pessoa set credito_refeicoes=0,credito_refeicoes_almoco=0 where id_pessoa= and ativo=true