Tabela de conteúdos

~~ODT~~

Última atualização: 2017/04/03 18:21 (edição externa)

Saldo do Cartão do Restaurante

Esse caso de uso é utilizado por qualquer usuário do sistema com a finalidade de verificar o saldo e o extrato das últimas operações do seu cartão do restaurante.

Descrição do Caso de Uso

O caso de uso inicia quando o usuário acessa a opção SIPAC → Portal Admin. → Outros → Saldo do Cartão do Restaurante.

Se o usuário tem um cartão associado a ele, os seguintes dados são mostrados:

Também é mostrada, em forma de listagem, as últimas operações realizadas relativas ao cartão, com os seguintes dados:

Então 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.sipac.restaurante.dominio.CartaoPagamentoPessoa restaurante.cartao_pagamento_pessoa
br.ufrn.sipac.restaurante.dominio.CartaoPagamento restaurante.cartao_pagamento

Plano de Teste

Sistema: SIPAC

Módulo: Portal Administrativo

Link(s): Outros → Saldo do Cartão do Restaurante

Usuário: adelardo, kmbso. Buscar usuário usando a Consulta de Cartões.

Papel que usuário deve ter: Não se aplica.

Cenários de Teste

Dados para o Teste

BEGIN TRANSACTION;
 
INSERT INTO restaurante.compra_credito
(id_compra_credito, id_cartao_pagamento_pessoa, quantidade_refeicoes, valor_refeicao,
 total, qtd_antes, qtd_depois, ativo, numero, DATA, id_registro_entrada)
VALUES (
	(SELECT NEXTVAL('restaurante.compra_credito_seq')),
	(
		SELECT id_cartao_pagamento_pessoa
		FROM
			restaurante.cartao_pagamento_pessoa
			NATURAL JOIN restaurante.cartao_pagamento 
		WHERE
			ativo = TRUE
			AND codigo = 1
	),
	1, 3.00, 3.00,
	(
		SELECT credito_refeicoes
		FROM
			restaurante.cartao_pagamento_pessoa
			NATURAL JOIN restaurante.cartao_pagamento 
		WHERE
			ativo = TRUE
			AND codigo = 1
	),
	(
		SELECT credito_refeicoes + 1
		FROM
			restaurante.cartao_pagamento_pessoa
			NATURAL JOIN restaurante.cartao_pagamento 
		WHERE
			ativo = TRUE
			AND codigo = 1
	),
	TRUE,
	(SELECT COALESCE(MAX(numero) + 1, 1) FROM restaurante.compra_credito),
	now(),
	1
);
 
UPDATE restaurante.cartao_pagamento_pessoa
SET credito_refeicoes = credito_refeicoes + 1
WHERE
	id_cartao_pagamento = (SELECT id_cartao_pagamento FROM restaurante.cartao_pagamento WHERE codigo = 1);
 
END TRANSACTION;