Autor
Editora
Livro
Biblioteca
public class Autor {
//----------------------------------------------------------------------------ATRIBUTOS
private int codigo;
private String nome;
private String email;
//----------------------------------------------------------------------------CONSTRUCTOR
public Autor(int codigo, String nome, String email) {
this.codigo = codigo;
this.nome = nome;
this.email = email;
}
//----------------------------------------------------------------------------GETTERS & SETTERS
public int getCodigo() {
return codigo;
}
public void setCodigo(int codigo) {
this.codigo = codigo;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
Editora
public class Editora {
//----------------------------------------------------------------------------ATRIBUTOS
private int codigo;
private String fantasia;
private String r_social;
private int cnpj;
//----------------------------------------------------------------------------CONSTRUCTOR
public Editora(int codigo, String fantasia, String r_social, int cnpj) {
this.codigo = codigo;
this.fantasia = fantasia;
this.r_social = r_social;
this.cnpj = cnpj;
}
//----------------------------------------------------------------------------GETTER & SETTERS
public int getCodigo() {
return codigo;
}
public void setCodigo(int codigo) {
this.codigo = codigo;
}
public String getFantasia() {
return fantasia;
}
public void setFantasia(String fantasia) {
this.fantasia = fantasia;
}
public String getR_social() {
return r_social;
}
public void setR_social(String r_social) {
this.r_social = r_social;
}
public int getCnpj() {
return cnpj;
}
public void setCnpj(int cnpj) {
this.cnpj = cnpj;
}
}
Livro
public class Livro {
//----------------------------------------------------------------------------ATRIBUTOS
private int codigo;
private String titulo;
private int ano;
private int paginas;
private int autor;
private int editora;
//----------------------------------------------------------------------------CONSTRUCTOR
public Livro(int codigo, String titulo, int ano, int paginas, int autor,
int editora) {
this.codigo = codigo;
this.titulo = titulo;
this.ano = ano;
this.paginas = paginas;
this.autor = autor;
this.editora = editora;
}
//----------------------------------------------------------------------------SETTER & GETTERS
public int getCodigo() {
return codigo;
}
public void setCodigo(int codigo) {
this.codigo = codigo;
}
public String getTitulo() {
return titulo;
}
public void setTitulo(String titulo) {
this.titulo = titulo;
}
public int getAno() {
return ano;
}
public void setAno(int ano) {
this.ano = ano;
}
public int getPaginas() {
return paginas;
}
public void setPaginas(int paginas) {
this.paginas = paginas;
}
public int getAutor() {
return autor;
}
public void setAutor(int autor) {
this.autor = autor;
}
public int getEditora() {
return editora;
}
public void setEditora(int editora) {
this.editora = editora;
}
}
Biblioteca
import java.util.ArrayList;
import javax.swing.JOptionPane;
public class Biblioteca {
String resultado = "";
String achado = "";
//----------------------------------------------------------------------------ARRAY LIST
private ArrayList autores = new ArrayList();
private ArrayList editora = new ArrayList();
private ArrayList livro = new ArrayList();
//----------------------------------------------------------------------------MENU
public int menu(int menu){
int option = Integer.parseInt(JOptionPane.showInputDialog( "-======MENU======-\n\n" +
"1. Cadastrar\n" +
"2. Editar\n" +
"3. Pesquisar\n" +
"4. Listar\n" +
"5. Excluir\n" +
"6. Excluir tudo\n" +
"7. Sair"));
return option;
}
public int menuCadastrar(int menu){
int option = Integer.parseInt(JOptionPane.showInputDialog( "-======MENU======-\n\n" +
"1) Cadastrar autor\n" +
"2) Cadastrar editora\n" +
"3) Cadastra livro\n" +
"4) Voltar\n" +
"5) Sair"));
return option;
}
//----------------------------------------------------------------------------AUTORES
public void cadastrarAutor(Autor autor){
this.autores.add(autor);
}
public String listarAutores(){
resultado = "";
for (int i = 0; i < autores.size(); i++) {
resultado +="Codigo: "+autores.get(i).getCodigo()+
"\nNome: "+autores.get(i).getNome()+
"\nEmail: "+autores.get(i).getEmail()+"\n\n\n";
}
return resultado;
}
public Autor pesquicarAutor(int codigo){
for (int i = 0; i < autores.size(); i++) {
if (autores.get(i).getCodigo() == codigo) {
return autores.get(i);
}
}
return null;
}
public void removerAutorAnterior(Autor codigo){
autores.remove(codigo);
}
public void removerTodosAutor(){
autores.clear();
}
//----------------------------------------------------------------------------EDITORA
public void cadastrarEditora(Editora editora){
this.editora.add(editora);
}
public String listarEditora(){
for (int i = 0; i < editora.size(); i++) {
Editora temp = editora.get(i);
resultado += "\n Codigo: "+temp.getCodigo()+
"\n Fantasia: "+temp.getFantasia() +
"\n Razão social: "+temp.getR_social()+
"\n CNPJ: " +temp.getCnpj()+"\n\n\n";
}
return resultado;
}
public Editora pesquicarEditora(int codigo){
for (int i = 0; i < editora.size(); i++) {
if (editora.get(i).getCodigo() == codigo) {
return editora.get(i);
}
}
return null;
}
public void removerEditoraAnterior(Editora codigo){
editora.remove(codigo);
}
public void removerTodosEditoras(){
editora.clear();
}
//----------------------------------------------------------------------------LIVRO
public void cadastrarLivro(Livro livro){
this.livro.add(livro);
}
public String listarLivro(){
for (int i = 0; i < livro.size(); i++) {
Livro temp = livro.get(i);
resultado += "\n Codigo: "+temp.getCodigo()+
"\n Titulo: "+temp.getTitulo() +
"\n Ano: "+temp.getAno()+
"\n Pagina: " +temp.getPaginas()+
"\n Editor: "+temp.getEditora()+
"\n Autor: "+temp.getAutor()+"\n\n\n";
}
return resultado;
}
public boolean autorExiste(int codAutor){
for (int i = 0; i < autores.size(); i++) {
if (codAutor == autores.get(i).getCodigo()) {
return true;
}
}
return false;
}
public boolean editoraExiste(int codEditora){
for (int i = 0; i < autores.size(); i++) {
if (codEditora == autores.get(i).getCodigo()) {
return true;
}
}
return false;
}
public Livro pesquicarLivro(int codigo){
for (int i = 0; i < livro.size(); i++) {
if (livro.get(i).getCodigo() == codigo) {
return livro.get(i);
}
}
return null;
}
public void removerLivroAnterior(Livro codigo){
livro.remove(codigo);
}
public void removerTodosLivros(){
livro.clear();
}
}
Principal
import javax.swing.JOptionPane;
public class Principal {
public static void main(String args[]){
//----------------------------------------------------------------------------ESCOLHA DO SWITCH
int option = 0;
//----------------------------------------------------------------------------NOVA BIBLIOTECA
Biblioteca biblioteca = new Biblioteca();
//----------------------------------------------------------------------------MENU
while (true) {
try {
option = biblioteca.menu(option);
} catch (Exception e) {
// TODO: handle exception
JOptionPane.showMessageDialog(null, "Só pode digitar numeros ;)");
}
//----------------------------------------------------------------------------SWITCH
switch (option) {
//----------------------------------------------------------------------------CADASTRAR
case 1:
try{
option = biblioteca.menuCadastrar(option);
if (option < 1 || option > 5) {
JOptionPane.showMessageDialog(null, "Só pode digitar numeros do 1 ao 5, obrigado");
option = 4;
}
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Só pode digitar numeros, obrigado");
option = 4;
}
switch (option) {
//----------------------------------------------------------------------------CADASTRAR AUTOR
case 1:
try{
Autor autor = new Autor(Integer.parseInt(JOptionPane.showInputDialog( "ID do autor: "))
,JOptionPane.showInputDialog( "Nome do autor: ")
,JOptionPane.showInputDialog( "Email do autor "));
biblioteca.cadastrarAutor(autor);
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digitou algum dado errado");
}
break;
//----------------------------------------------------------------------------CADASTRAR EDITORA
case 2:
try{
Editora editora = new Editora(Integer.parseInt(JOptionPane.showInputDialog( "ID da editora: "))
,JOptionPane.showInputDialog( "Nome da editora: ")
,JOptionPane.showInputDialog( "Email da editora: ")
,Integer.parseInt(JOptionPane.showInputDialog( "CNPJ da editora: ")));
biblioteca.cadastrarEditora(editora);
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digitou algum dado errado");
}
break;
//----------------------------------------------------------------------------CADASTRAR LIVRO
case 3:
try{
int codAutor = (Integer.parseInt(JOptionPane.showInputDialog("Por favor, digite o ID do autor do livro que quer cadastrar: ")));
if(biblioteca.autorExiste(codAutor)){
int tempEditora = (Integer.parseInt(JOptionPane.showInputDialog(null, "Por favor, digite o ID da editora do livro que quer cadastrar: ")));
if (biblioteca.editoraExiste(tempEditora)) {
JOptionPane.showMessageDialog(null, ":( --- Editora não encontrado --- :(");
}else{
Livro livro = new Livro(Integer.parseInt(JOptionPane.showInputDialog( "ID do livro: ")),
JOptionPane.showInputDialog( "Titulo do livro: "),
Integer.parseInt(JOptionPane.showInputDialog( "Ano do livro: ")),
Integer.parseInt(JOptionPane.showInputDialog( "Paginas do livro: ")),
codAutor, tempEditora);
biblioteca.cadastrarLivro(livro);
}
}else{
JOptionPane.showMessageDialog(null, ":( --- Autor não encontrado --- :(");
}
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digitou algum dado errado");
}
break;
//----------------------------------------------------------------------------VOLTAR AO MENU
case 4:
break;
//----------------------------------------------------------------------------SAIR
case 5:
System.exit(0);
break;
default:
break;
}
break;
//----------------------------------------------------------------------------FIM DA OPÇÃO CADASTRAR
case 2:
//----------------------------------------------------------------------------EDITAR
option = Integer.parseInt(JOptionPane.showInputDialog( "-======MENU======-\n\n"+
"1) Editar autor\n" +
"2) Editar editora\n" +
"3) Editar livro\n" +
"4) Voltar\n" +
"5) Sair"));
switch (option) {
//----------------------------------------------------------------------------EDITAR AUTOR
case 1:
Autor temp = biblioteca.pesquicarAutor(Integer.parseInt(JOptionPane.showInputDialog(null, "ID do autor a editar: ")));
if (temp == null) {
JOptionPane.showMessageDialog(null, ":( --- Autor não encontrado --- :(");
}else{
JOptionPane.showMessageDialog(null, "Autor achado: "+temp.getNome());
Autor temp2 = new Autor(Integer.parseInt(JOptionPane.showInputDialog( "Novo ID para o autor "+temp.getNome()))
,JOptionPane.showInputDialog( "Novo nome: ")
,JOptionPane.showInputDialog( "Novo e-mail: "));
biblioteca.removerAutorAnterior(temp);
biblioteca.cadastrarAutor(temp2);
}
break;
//----------------------------------------------------------------------------EDITAR EDITORA
case 2:
Editora tempEditora = biblioteca.pesquicarEditora(Integer.parseInt(JOptionPane.showInputDialog(null, "ID da editora a editar: ")));
if (tempEditora == null) {
JOptionPane.showMessageDialog(null, ":( --- Editora não encontrada --- :(");
}else{
JOptionPane.showMessageDialog(null, "Editora achada: "+tempEditora.getFantasia());
Editora temp2 = new Editora(Integer.parseInt(JOptionPane.showInputDialog( "Novo ID para a editora "+tempEditora.getFantasia()))
,JOptionPane.showInputDialog( "Novo nome: ")
,JOptionPane.showInputDialog( "Novo e-mail: ")
,Integer.parseInt(JOptionPane.showInputDialog( "Novo CPF: ")));
biblioteca.removerEditoraAnterior(tempEditora);
biblioteca.cadastrarEditora(temp2);
}
break;
case 3:
//----------------------------------------------------------------------------EDITAR LIVRO
Livro tempLivro = biblioteca.pesquicarLivro(Integer.parseInt(JOptionPane.showInputDialog(null, "ID do livro a editar: ")));
if (tempLivro == null) {
JOptionPane.showMessageDialog(null, ":( --- Livro não encontrado --- :(");
}else{
JOptionPane.showMessageDialog(null, "Livro achado: "+tempLivro.getTitulo());
Livro temp2 = new Livro(Integer.parseInt(JOptionPane.showInputDialog( "Novo ID para o livro "+tempLivro.getTitulo()))
,JOptionPane.showInputDialog( "Novo titulo: ")
,Integer.parseInt(JOptionPane.showInputDialog( "Novo ano: "))
,Integer.parseInt(JOptionPane.showInputDialog( "Novo numero de paginas: "))
,Integer.parseInt(JOptionPane.showInputDialog( "Novo ID do autor: "))
,Integer.parseInt(JOptionPane.showInputDialog( "Novo ID da editora: ")));
biblioteca.removerLivroAnterior(tempLivro);
biblioteca.cadastrarLivro(temp2);
}
break;
//--------------------------------------------------------VOLTAR AO MENU
case 4:
break;
//--------------------------------------------------------SAIR
case 5:
System.exit(0);
break;
default:
break;
}
break;
//--------------------------------------------------------PESQUISAR
case 3:
option = Integer.parseInt(JOptionPane.showInputDialog( "-======MENU======-\n\n" +
"1) Pesquiçar autor\n" +
"2) Pesquiçar editora\n" +
"3) Pesquiçar livro\n" +
"4) Voltar\n" +
"5) Sair"));
switch (option) {
//--------------------------------------------------------PESQUISAR AUTOR
case 1:
Autor temp = biblioteca.pesquicarAutor(Integer.parseInt(JOptionPane.showInputDialog(null, "ID autor do livro: ")));
if (temp == null) {
JOptionPane.showMessageDialog(null, ":( --- Autor não encontrado --- :(");
}else{
JOptionPane.showMessageDialog(null, "Autor encontrado: "+temp.getNome());
}
break;
//--------------------------------------------------------PESQUISAR EDITORA
case 2:
Editora tempEditora = biblioteca.pesquicarEditora(Integer.parseInt(JOptionPane.showInputDialog(null, "ID da editora: ")));
if (tempEditora == null) {
JOptionPane.showMessageDialog(null, ":( --- Editora não encontrada --- :(");
}else{
JOptionPane.showMessageDialog(null, "Editora encontrada: "+tempEditora.getFantasia());
}
break;
//--------------------------------------------------------PESQUISAR LIVRO
case 3:
Livro tempLivro = biblioteca.pesquicarLivro(Integer.parseInt(JOptionPane.showInputDialog(null, "ID do livro: ")));
if (tempLivro == null) {
JOptionPane.showMessageDialog(null, ":( --- Livro não encontrado --- :(");
}else{
JOptionPane.showMessageDialog(null, "Livro encontrado: "+tempLivro.getTitulo());
}
break;
//--------------------------------------------------------VOLTAR AO MENU
case 4:
break;
//--------------------------------------------------------SAIR
case 5:
System.exit(0);
break;
default:
break;
}
break;
//--------------------------------------------------------LISTAR
case 4:
option = Integer.parseInt(JOptionPane.showInputDialog( "-======MENU======-\n\n" +
"1) Listar autores\n" +
"2) Listar editoras\n" +
"3) Listar livros\n" +
"4) Voltar\n" +
"5) Sair"));
switch (option) {
case 1:
JOptionPane.showMessageDialog(null, biblioteca.listarAutores());
biblioteca.resultado = "";
break;
case 2:
JOptionPane.showMessageDialog(null, biblioteca.listarEditora());
biblioteca.resultado = "";
break;
case 3:
JOptionPane.showMessageDialog(null, biblioteca.listarLivro());
biblioteca.resultado = "";
break;
//--------------------------------------------------------VOLTAR AO MENU
case 4:
break;
//--------------------------------------------------------SAIR
case 5:
System.exit(0);
break;
default:
break;
}
break;
//--------------------------------------------------------EXCLUIR
case 5:
option = Integer.parseInt(JOptionPane.showInputDialog( "-======MENU======-\n\n" +
"1) Excluir autor\n" +
"2) Excluir editor\n" +
"3) Excluir livro\n" +
"4) Voltar\n" +
"5) Sair"));
switch (option) {
//--------------------------------------------------------EXCLUIR AUTOR
case 1:
Autor temp = biblioteca.pesquicarAutor(Integer.parseInt(JOptionPane.showInputDialog("ID do autor: ")));
if (temp == null){
JOptionPane.showMessageDialog(null, ":( --- Autor não encontrado --- :(");
}else{
String tempNomeAutor = temp.getNome();
biblioteca.removerAutorAnterior(temp);
JOptionPane.showMessageDialog(null, "Autor com nome "+tempNomeAutor+" foi deletado com éxito ;)");
}
break;
//--------------------------------------------------------EXCLUIR EDITORA
case 2:
Editora tempEditora = biblioteca.pesquicarEditora(Integer.parseInt(JOptionPane.showInputDialog("ID da editora: ")));
if (tempEditora == null){
JOptionPane.showMessageDialog(null, ":( --- Editora não encontrado --- :(");
}else{
String tempFantasiaEditora = tempEditora.getFantasia();
biblioteca.removerEditoraAnterior(tempEditora);
JOptionPane.showMessageDialog(null, "Editora com fantasia "+tempFantasiaEditora+" foi deletado com éxito ;)");
}
break;
//--------------------------------------------------------EXCLUIR LIVRO
case 3:
Livro tempLivro = biblioteca.pesquicarLivro(Integer.parseInt(JOptionPane.showInputDialog("ID do livro: ")));
if (tempLivro == null){
JOptionPane.showMessageDialog(null, ":( --- Livro não encontrado --- :(");
}else{
String tempTituloLivro = tempLivro.getTitulo();
biblioteca.removerLivroAnterior(tempLivro);
JOptionPane.showMessageDialog(null, "Livro com titulo "+tempTituloLivro+" foi deletado com éxito ;)");
}
break;
//--------------------------------------------------------VOLTAR AO MENU
case 4:
break;
//--------------------------------------------------------SAIR
case 5:
System.exit(0);
break;
default:
break;
}
break;
//--------------------------------------------------------EXCLUIR TODO
case 6:
option = Integer.parseInt(JOptionPane.showInputDialog( "-======MENU======-\n\n" +
"1) Excluir todos os autores\n" +
"2) Excluir todos os editores\n" +
"3) Excluir todos os livros\n" +
"4) Voltar\n" +
"5) Sair"));
switch (option) {
//--------------------------------------------------------EXCLUIR TODOS AUTORES
case 1:
biblioteca.removerTodosAutor();
JOptionPane.showMessageDialog(null, "Todos os autores forem excluidos");
break;
//--------------------------------------------------------EXCLUIR TODAS EDITORAS
case 2:
biblioteca.removerTodosEditoras();
JOptionPane.showMessageDialog(null, "Todas as editoras forem excluidas");
break;
//--------------------------------------------------------EXCLUIR TODOS LIVROS
case 3:
biblioteca.removerTodosLivros();
JOptionPane.showMessageDialog(null, "Todos os livros forem excluidos");
break;
//--------------------------------------------------------VOLTAR AO MENU
case 4:
break;
//--------------------------------------------------------SAIR
case 5:
System.exit(0);
break;
default:
break;
}
break;
case 7:
JOptionPane.showMessageDialog(null, "Até mais ;)");
System.exit(0);
break;
default:
break;
}
}
}
}
0 comentarios:
Postar um comentário