1
I’m working on an online movie rental code, simple code to deliver to my science school teacher and I’m having the following mistake: When I register a film and I will list the film appears the registered movies and customers want to know how I can leave in my method film only appear the movies and client only customers. Below is my code and its respective classes including the main method.
Class: Customer
import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Cliente {
private String nome;
private String endereco;
private String telefone;
private String rua;
private String complemento;
private String cidade;
private String estado;
private String cep;
private int codigo;
private int numero;
private int dia;
private int mes;
private int ano;
private int mescadastro;
private int diacadastro;
private int anocadastro;
public void setDiac(int dayc) {
diacadastro = dayc;
}
public void setMesc(int mc) {
mescadastro = mc;
}
public void setAnoc(int yearc) {
anocadastro = yearc;
}
public void setDia(int day) {
dia = day;
}
public void setMes(int m) {
mes = m;
}
public void setAno(int year) {
ano = year;
}
public void setRua(String n) {
rua = n;
}
public void setNumero(int casan) {
numero = casan;
}
public void setComplemento(String com) {
complemento = com;
}
public void setCidade(String city) {
cidade = city;
}
public void setEstado(String state) {
estado = state;
}
public void setCep(String ddd) {
cep = ddd;
}
public void setCodigo(int c) {
codigo = c;
}
public void setNome(String name) {
this.nome = name;
}
public void setTelefone(String tel) {
telefone = tel;
}
public int getCodigo() {
return codigo;
}
public String getNome() {
return nome;
}
}
Class: Film
import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Filme {
private String titulo;
private String genero;
private int Anodelancamento;
private int Duracao;
private int codigo;
void setCodigo(int c){
codigo = c;
}
int getCodigo(){
return codigo;
}
void setTitulo(String t) {
titulo = t;
}
String getTitulo(){
return titulo;
}
void setGenero(String g) {
genero = g;
}
void setAnodelancamento(int an) {
Anodelancamento = an;
}
void setDuracao(int d) {
Duracao = d;
}
}
Class: Clientedao
import java.util.Random;
import javax.swing.JOptionPane;
public class ClienteDao {
/*
DESENVOLVIDO BY: "Igor Team"
*/
int codc;
int tamanhoDoVetor;
Cliente[] clienteArray;
Filme[] filmeArray;
public ClienteDao(int tamanhoDoVetor) {
this.tamanhoDoVetor = tamanhoDoVetor;
clienteArray = new Cliente[tamanhoDoVetor];
filmeArray = new Filme[tamanhoDoVetor];
}
int aux;
public void cadastroCliente(int n) {
// Se eu ja cadastrei n numero e quero cadastrar mais n
aux = n + aux;
for (int ig = 0; ig < aux; ig++) {
if (clienteArray[ig] == null) {
clienteArray[ig] = new Cliente();
clienteArray[ig].setCodigo(ig);
clienteArray[ig].setNome(JOptionPane.showInputDialog((ig + 1) + "º Cliente\nNome: "));
/* clienteArray[ig].setRua(JOptionPane.showInputDialog("Rua: "));
clienteArray[ig].setNumero(Integer.parseInt(JOptionPane.showInputDialog("Nº: ")));
clienteArray[ig].setComplemento(JOptionPane.showInputDialog("Complemento: "));
clienteArray[ig].setCidade(JOptionPane.showInputDialog("Cidade: "));
clienteArray[ig].setEstado(JOptionPane.showInputDialog("Estado: "));
clienteArray[ig].setCep(JOptionPane.showInputDialog("CEP: "));
clienteArray[ig].setTelefone(JOptionPane.showInputDialog("Telefone: "));
clienteArray[ig].setDiac(Integer.parseInt(JOptionPane.showInputDialog("Cadastro" + "\nDia: ")));
clienteArray[ig].setMesc(Integer.parseInt(JOptionPane.showInputDialog("Mês: ")));
clienteArray[ig].setAnoc(Integer.parseInt(JOptionPane.showInputDialog("Ano: ")));
clienteArray[ig].setDia(Integer.parseInt(JOptionPane.showInputDialog("Nascimento" + "\nDia: ")));
clienteArray[ig].setMes(Integer.parseInt(JOptionPane.showInputDialog("Mês: ")));
clienteArray[ig].setAno(Integer.parseInt(JOptionPane.showInputDialog("Ano: "))); */
}
}
}
public void consultarPorNome() {
String nome = JOptionPane.showInputDialog(null, "Nome do cliente");
for (Cliente c : clienteArray) {
if (c != null) {
if (c.getNome().equals(nome)) {
JOptionPane.showMessageDialog(null, "Codigo: "
+ (c.getCodigo() + 1) + "\nNome: " + c.getNome());
return;
}
}
}
JOptionPane.showMessageDialog(null, "Nenhum cliente com o nome " + nome
+ " encontrado");
}
public void mostrarClientes() {
for (Cliente c : clienteArray) {
if (c != null) {
if (c.getCodigo() != -1) {
JOptionPane.showMessageDialog(null, "Codigo: " + (c.getCodigo() + 1) + "\nNome: " + c.getNome());
return;
}
}
}
JOptionPane.showMessageDialog(null, "Nenhum cliente cadastrado");
}
public void apagarCliente() {
int senhac2 = (Integer.parseInt(JOptionPane.showInputDialog(
"DIGITE SUA SENHA DE ADMINISTRADOR")));
if (senhac2 == 12345) {
int codigo = (Integer.parseInt(JOptionPane.showInputDialog(
"Digite o código do cliente desejado: ")) - 1);
if (procurarCliente(codigo) != true) {
JOptionPane.showMessageDialog(null, "Cliente inexistente!");
} else {
//adicionei parenteses ao pegar o código para que ele incremente
//1 apos pegar o código do cliente
JOptionPane.showMessageDialog(null, "Código: " + ((clienteArray[codigo].getCodigo()) + 1)
+ "\nNome: " + clienteArray[codigo].getNome());
clienteArray[codigo] = null;
JOptionPane.showMessageDialog(null,
"Exclusão concluida com SUCESSO");
}
} else {
JOptionPane.showMessageDialog(null,
"SENHA INCORRETA DE ADMINISTRADOR");
}
}
public boolean procurarCliente(int n) {
for(int i = 0; i < clienteArray.length; i++) {
if (clienteArray[i] != null) {
if (clienteArray[i].getCodigo() == n) {
return true;
}
}
}
return false;
}
//FILMES
char auxf = '0';
int auxf2 = 0;
int quantidadeFinal;
public void cadastrarFilmes(int qtdfilme) {
int senhac = (Integer.parseInt(JOptionPane.showInputDialog("DIGITE SUA SENHA DE ADMINISTRADOR")));
if (senhac == 12345) {
auxf2 = qtdfilme + auxf2;
for (int fi = 0; fi < auxf2; fi++) {
if (filmeArray[fi] == null) {
filmeArray[fi] = new Filme();
filmeArray[fi].setCodigo(fi);
filmeArray[fi].setTitulo(JOptionPane.showInputDialog("Titulo " + (fi + 1) + "º: "));
auxf = JOptionPane.showInputDialog("Gênero do filme\n1-AÇÃO\n2-COMÉDIA\n3-SUSPENSE\n4-DRAMA").charAt(0);
switch (auxf) {
case '1':
// filmeArray[fi].setGenero("AÇAO");
// filmeArray[fi].setAnodelancamento(Integer.parseInt(JOptionPane.showInputDialog("Ano de Lançamento: ")));
// filmeArray[fi].setDuracao(Integer.parseInt(JOptionPane.showInputDialog("Duração do filme em minutos: ")));
// JOptionPane.showMessageDialog(null, "Filme: " + filmeArray[fi].getTitulo() + " CADASTRADO!!!");
break;
case '2':
filmeArray[fi].setGenero("COMEDIA");
filmeArray[fi].setAnodelancamento(Integer.parseInt(JOptionPane.showInputDialog("Ano de Lançamento: ")));
filmeArray[fi].setDuracao(Integer.parseInt(JOptionPane.showInputDialog("Duração do filme em minutos: ")));
JOptionPane.showMessageDialog(null, "Filme: " + filmeArray[fi].getTitulo() + " CADASTRADO!!!");
break;
case '3':
filmeArray[fi].setGenero("SUSPENSE");
filmeArray[fi].setAnodelancamento(Integer.parseInt(JOptionPane.showInputDialog("Ano de Lançamento: ")));
filmeArray[fi].setDuracao(Integer.parseInt(JOptionPane.showInputDialog("Duração do filme em minutos: ")));
JOptionPane.showMessageDialog(null, "Filme: " + filmeArray[fi].getTitulo() + " CADASTRADO!!!");
break;
case '4':
filmeArray[fi].setGenero("DRAMA");
filmeArray[fi].setAnodelancamento(Integer.parseInt(JOptionPane.showInputDialog("Ano de Lançamento: ")));
filmeArray[fi].setDuracao(Integer.parseInt(JOptionPane.showInputDialog("Duração do filme em minutos: ")));
JOptionPane.showMessageDialog(null, "Filme: " + filmeArray[fi].getTitulo() + " CADASTRADO!!!");
break;
default:
JOptionPane.showMessageDialog(null, "Opção inválida! ou Gênero do filme não cadastro no sistema! ");
}
}
}
} else {
JOptionPane.showMessageDialog(null, "SENHA DO ADMINISTRADOR INVALIDA");
}
}
public void listaFilmes() {
for (Filme gi : filmeArray) {
if (gi != null) {
if (gi.getCodigo() != -1) {
JOptionPane.showMessageDialog(null, "Codigo: " + (gi.getCodigo() + 1) + "\nNome: " + gi.getTitulo());
return;
}
}
}
JOptionPane.showMessageDialog(null, "Não existe filmes registrados!");
}
public void removerFilmes() {
int senhacd = (Integer.parseInt(JOptionPane.showInputDialog(
"DIGITE SUA SENHA DE ADMINISTRADOR")));
if (senhacd == 12345) {
int codfi = (Integer.parseInt(JOptionPane.showInputDialog(
"Digite o código do filme: ")));
codfi -= 1;
if (codfi < 0 || codfi > tamanhoDoVetor) {
JOptionPane.showMessageDialog(null, "Código inválido");
} else {
if (filmeArray[codfi] != null) {
JOptionPane.showMessageDialog(null, "Código: " +
((filmeArray[codfi].getCodigo())+1)
+ "\nTitulo: " + filmeArray[codfi].getTitulo());
filmeArray[codfi].setCodigo(0);
filmeArray[codfi].setAnodelancamento(0);
filmeArray[codfi].setDuracao(0);
filmeArray[codfi].setGenero("");
filmeArray[codfi].setTitulo("");
JOptionPane.showMessageDialog(null,
"Exclusão concluida com SUCESSO");
} else {
JOptionPane.showMessageDialog(null,
"Filme inexistente!");
}
}
} else {
JOptionPane.showMessageDialog(null,
"SENHA DO ADMINISTRADOR INVALIDA");
}
}
//LOCAÇÕES
public void alugarFilme() {
String nomeCliente = JOptionPane.showInputDialog(null,
"Ola, Cliente! \n" + "Digite o seu nome: ");
for (Cliente d : clienteArray) {
if (d != null) {
if (d.getNome().equals(nomeCliente)) {
JOptionPane.showMessageDialog(null, "Codigo: "
+ (d.getCodigo() + 1) + "\nNome: " + d.getNome());
String NomeFilme = JOptionPane.showInputDialog(null,
"Qual filme você procura?");
for (Filme c : filmeArray) {
if (c != null) {
if (c.getTitulo().equals(NomeFilme)) {
JOptionPane.showMessageDialog(null, "Codigo: "
+ (c.getCodigo() + 1) + "\nNome: " + c.getTitulo());
String x11 = JOptionPane.showInputDialog("escolha a melhor forma de pagamneto ^^ \n 1. Cartão\n2. Boleto\n3. À Vista");
switch (x11) {
case "1": {
String cod = JOptionPane.showInputDialog("Digite o número do seu cartão");
if (cod.equals("0000000000000000") || cod.equals("1111111111111111") || cod.equals("2222222222222222")
|| cod.equals("3333333333333333") || cod.equals("4444444444444444") || cod.equals("5555555555555555")
|| cod.equals("6666666666666666") || cod.equals("7777777777777777") || cod.equals("8888888888888888")
|| cod.equals("9999999999999999") || (cod.length() != 16)) {
JOptionPane.showMessageDialog(null, "Numero do cartao invalido");
} else {
int nParcelas = (Integer.parseInt(JOptionPane.showInputDialog("Digite o numero de parcelas ate 4x: ")));
if (nParcelas >= 1 && nParcelas <= 4) {
JOptionPane.showMessageDialog(null, "Filme alugado");
JOptionPane.showMessageDialog(null, "o link para você assistir o filme esta desponivel por ate 24hr! ");
Random gerador = new Random();
int RA = (gerador.nextInt(90000));
JOptionPane.showInputDialog(null, "HTTPS://www.locadoraMorenos.com.br/" + d.getNome() + "/" + RA, "HTTPS://www.locadoraMorenos.com.br/" + d.getNome() + "/" + RA);
JOptionPane.showMessageDialog(null, "Obrigado pela preferencia ^^");
} else {
JOptionPane.showMessageDialog(null, "ERRO");
}
}
break;
}
case "2": {
JOptionPane.showMessageDialog(null, "Filme alugado");
Random gerador = new Random();
int RA2 = (gerador.nextInt(90000));
JOptionPane.showInputDialog(null, "HTTPS://www.locadoraMorenos.com.br/boletobrasil/" + RA2);
JOptionPane.showMessageDialog(null, "Apos o pagamento você recebera um e-mail com o link do filme");
JOptionPane.showMessageDialog(null, "Obrigado pela preferencia ^^");
break;
}
default: {
JOptionPane.showMessageDialog(null, "Não trabalhamos com esta forma de pagamento");
}
}
}
}
}
}
}
}
}
}
Class: Menu
import javax.swing.JOptionPane;
public class Menu {
ClienteDao dao;
int opcao;
private final int CLIENTE = 1;
private final int ADMIN = 2;
private final int SAIR = 0;
private final int CADASTRAR = 1;
private final int CLI_LISTAR_FILMES = 2;
private final int CLI_ALUGAR_FILME = 3;
private final int CONSULTAR_POR_NOME = 2;
private final int MOSTRAR_TODOS = 3;
private final int EXCLUIR = 4;
private final int CADASTRARFILME = 5;
private final int LISTAR_FILMES = 6;
private final int REMOVER_FILME = 7;
private final int ALUGAR_FILME = 8;
private final String MENU_PRINCIPAL = "Menu de opções\n1 - CLIENTE\n2 - "
+ "ADMINISTRADOR\n0 - SAIR";
private final String MENU_CLIENTE = "Menu de operaçoes\n1 - Novo "
+ "cadastro\n2 - Mostrar Filmes\n3 - Alugar filme\n0 - Sair ";
private final String MENU_ADMIN = "Menu de opções\n1 - cria conta de "
+ "cliente\n2 - consultar por nome\n3 - mostrar todos clientes\n4"
+ " - excluir\n5 - adicionar filme\n6 - listar filmes\n7 - "
+ "remover filmes\n8 - alugar filmes\n0 - sair";
private final String BEMVINDO_CLIENTE = "BEM VINDO A CENTRAL DE "
+ "CADASTRAMENTO DIGITE 1 PARA CONTINUAR";
private final String BEMVINDO_ADMIN = "BEM VINDO A CENTRAL DE "
+ "CADASTRAMENTO DIGITE 1 PARA CONTINUAR";
public void menuPrincipal() {
{
int qtd = 100;
dao = new ClienteDao(qtd);
while (true) {
opcao = Integer.parseInt(JOptionPane
.showInputDialog(MENU_PRINCIPAL));
switch (opcao) {
case CLIENTE: {
this.menuCliente();
break;
}
case ADMIN: {
this.menuAdministrador();
break;
}
case SAIR: {
System.exit(0);
break;
}
default: {
JOptionPane.showMessageDialog(null, "Opção inválida");
}
}
dao.mostrarClientes();
}
}
}
private void menuCliente() {
opcao = Integer.parseInt(JOptionPane.showInputDialog(MENU_CLIENTE));
switch (opcao) {
case CADASTRAR: {
int qtdcliente = Integer.parseInt(JOptionPane
.showInputDialog(BEMVINDO_CLIENTE, null));
if (qtdcliente == 1) {
dao.cadastroCliente(qtdcliente);
} else {
JOptionPane.showMessageDialog(null, "Desculpe mas "
+ "parece que você não digitou 1");
}
break;
}
case CLI_LISTAR_FILMES: {
dao.listaFilmes();
break;
}
case CLI_ALUGAR_FILME: {
dao.alugarFilme();
break;
}
case SAIR: {
System.exit(0);
break;
}
}
}
private void menuAdministrador() {
int senha = Integer.parseInt(JOptionPane
.showInputDialog("DIGITE SUA SENHA ADMINISTRADOR: "));
if (senha == 12345) {
opcao = Integer
.parseInt(JOptionPane.showInputDialog(MENU_ADMIN));
switch (opcao) {
case CADASTRAR: {
int qtdcliente = Integer
.parseInt(JOptionPane
.showInputDialog(BEMVINDO_ADMIN, null));
if (qtdcliente == 1) {
dao.cadastroCliente(qtdcliente);
} else {
JOptionPane.showMessageDialog(null,
"Desculpe mas parece que você não digitou 1");
}
break;
}
case CONSULTAR_POR_NOME: {
dao.consultarPorNome();
break;
}
case MOSTRAR_TODOS: {
dao.mostrarClientes();
break;
}
case EXCLUIR: {
dao.apagarCliente();
break;
}
case CADASTRARFILME: {
int qtdfilme = Integer.parseInt(JOptionPane.showInputDialog(
"Digite a quantidade de filme para cadastrar: ",
null));
dao.cadastrarFilmes(qtdfilme);
break;
}
case LISTAR_FILMES: {
dao.listaFilmes();
break;
}
case REMOVER_FILME: {
dao.removerFilmes();
break;
}
case ALUGAR_FILME: {
dao.alugarFilme();
break;
}
case SAIR: {
System.exit(0);
break;
}
}
}
}
}
Class: Program (containing the main method)
public class Programa {
public static void main(String[] args) {
Menu teste = new Menu();
teste.menuPrincipal();
}
}
I don’t understand. What’s the mistake?
– Renan Gomes
if (senha == 12345)
- Ugh...– Victor Stafusa