~~ODT~~
Última atualização: 2017/04/03 18:21 (edição externa)
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. (
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. (
RN08).
-
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.
Resoluções/Legislações Associadas
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=<id_pessoa>
UPDATE restaurante.cartao_pagamento_pessoa SET credito_refeicoes=0,credito_refeicoes_almoco=0 WHERE id_pessoa=<id_pessoa> AND ativo=TRUE