Opa, segui os passos do professor durante o curso, porém ao tentar abrir uma conta, recebi a seguinte exception:
Opa, segui os passos do professor durante o curso, porém ao tentar abrir uma conta, recebi a seguinte exception:
Fala Douglas, de boa ?
Consegue mostrar seu código para gente ? Assim conseguimos ver se teve algum errinho
Opa Matheus, verifiquei se outra pessoa tinha uma dúvida igual a minha aqui no fórum e pelas respostas do post dela, consegui resolver esse problema inicial, porém agora, estou dando de cara com essas exceptions:
Aqui vai o código (Todos os imports estão feitos, só não consigo colocar aqui porque ultrapassa o limite de caracteres):
public class BytebankApplication {
private static ContaService service = new ContaService();
private static Scanner teclado = new Scanner(System.in).useDelimiter("\r\n");
public static void main(String[] args) {
var opcao = exibirMenu();
while (opcao != 7) {
try {
switch (opcao) {
case 1:
listarContas();
break;
case 2:
abrirConta();
break;
case 3:
encerrarConta();
break;
case 4:
consultarSaldo();
break;
case 5:
realizarSaque();
break;
case 6:
realizarDeposito();
break;
}
} catch (RegraDeNegocioException e) {
System.out.println("Erro: " +e.getMessage());
System.out.println("Pressione qualquer tecla e de ENTER para voltar ao menu");
teclado.next();
}
opcao = exibirMenu();
}
System.out.println("Finalizando a aplicação.");
}
private static int exibirMenu() {
System.out.println("""
BYTEBANK - ESCOLHA UMA OPÇÃO:
1 - Listar contas abertas
2 - Abertura de conta
3 - Encerramento de conta
4 - Consultar saldo de uma conta
5 - Realizar saque em uma conta
6 - Realizar depósito em uma conta
7 - Sair
""");
return teclado.nextInt();
}
private static void listarContas() {
System.out.println("Contas cadastradas:");
var contas = service.listarContasAbertas();
contas.stream().forEach(System.out::println);
System.out.println("Pressione qualquer tecla e de ENTER para voltar ao menu principal");
teclado.next();
}
private static void abrirConta() {
System.out.println("Digite o número da conta:");
var numeroDaConta = teclado.nextInt();
System.out.println("Digite o nome do cliente:");
var nome = teclado.next();
System.out.println("Digite o cpf do cliente:");
var cpf = teclado.next();
System.out.println("Digite o email do cliente:");
var email = teclado.next();
service.abrir(new DadosAberturaConta(numeroDaConta, new DadosCadastroCliente(nome, cpf, email)));
System.out.println("Conta aberta com sucesso!");
System.out.println("Pressione qualquer tecla e de ENTER para voltar ao menu principal");
teclado.next();
}
private static void encerrarConta() {
System.out.println("Digite o número da conta:");
var numeroDaConta = teclado.nextInt();
service.encerrar(numeroDaConta);
System.out.println("Conta encerrada com sucesso!");
System.out.println("Pressione qualquer tecla e de ENTER para voltar ao menu principal");
teclado.next();
}
private static void consultarSaldo() {
System.out.println("Digite o número da conta:");
var numeroDaConta = teclado.nextInt();
var saldo = service.consultarSaldo(numeroDaConta);
System.out.println("Saldo da conta: " +saldo);
System.out.println("Pressione qualquer tecla e de ENTER para voltar ao menu principal");
teclado.next();
}
private static void realizarSaque() {
System.out.println("Digite o número da conta:");
var numeroDaConta = teclado.nextInt();
System.out.println("Digite o valor do saque:");
var valor = teclado.nextBigDecimal();
service.realizarSaque(numeroDaConta, valor);
System.out.println("Saque realizado com sucesso!");
System.out.println("Pressione qualquer tecla e de ENTER para voltar ao menu principal");
teclado.next();
}
private static void realizarDeposito() {
System.out.println("Digite o número da conta:");
var numeroDaConta = teclado.nextInt();
System.out.println("Digite o valor do depósito:");
var valor = teclado.nextBigDecimal();
service.realizarDeposito(numeroDaConta, valor);
System.out.println("Depósito realizado com sucesso!");
System.out.println("Pressione qualquer tecla e de ENTER para voltar ao menu principal");
teclado.next();
}
}
COnseuge mostrar pra gente o que faz no método abrir do conta service ?
Acabei de verificar aqui o método e eu percebi que não havia colocado os paramêtros certos, hahaha, ajeitei aqui e consegui arrumar.
Show!