Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package Principal;
- import java.io.BufferedReader;
- import java.io.BufferedWriter;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileNotFoundException;
- import java.io.FileOutputStream;
- import java.io.FileReader;
- import java.io.FileWriter;
- import java.io.IOException;
- import java.io.ObjectInputStream;
- import java.io.ObjectOutputStream;
- import java.io.Serializable;
- import java.io.Writer;
- import java.text.*;
- import java.util.*;
- import cadastro.Cargo;
- import cadastro.Cliente;
- import cadastro.Funcionario;
- import cadastro.Marca;
- import cadastro.Modelo;
- import cadastro.Pessoa;
- public class Main implements Serializable {
- static ArrayList<Cliente> arrayCliente = new ArrayList<Cliente>();
- ArrayList<Marca> arrayMarca = new ArrayList<Marca>();
- ArrayList<Modelo> arrayModelo = new ArrayList<Modelo>();
- ArrayList<Cargo> arrayCargo = new ArrayList<Cargo>();
- ArrayList<Funcionario> arrayFuncionario = new ArrayList<Funcionario>();
- SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
- private int num;
- public int cargos;
- public int marcas;
- public int pegacli;
- public int pegafunc;
- public int pegamar;
- public int pegamod;
- public static void main(String[] args) {
- try {
- Main main = new Main();
- main.leituraDat();
- main.cadastroGerais();
- }
- catch (Exception e) {
- System.out.println("Erro ao tentar iniciar o programa.");
- }
- }
- public boolean temCargos() {
- if (arrayCargo.size() > 0)
- return true;
- System.out.println("Não há cargos cadastrados. Cadastre um cargo primeiro");
- return false;}
- public boolean temMarcas() {
- if (arrayMarca.size() > 0)
- return true;
- System.out.println("Não há marcas cadastradas. Cadastre uma marca primeiro");
- return false;}
- public void cadastroGerais() throws ParseException, FileNotFoundException, IOException {
- int num = 0;
- do {
- System.out.println("Sistema para Cadastros");
- Scanner scanner = new Scanner(System.in);
- System.out.println("\n 1 - Cadastro" + "\n 2 - Pesquisa" + "\n 3 - Remover" + "\n 4 - Exportar" + "\n 5 - Importar" +"\n 6 - Sair");
- num = scanner.nextInt();
- switch (num) {
- case 1: {
- int num1 = 0;
- do {
- System.out.println("\n 1 - Cliente" +
- "\n 2 - Funcionário"+
- "\n 3 - Cargo" +
- "\n 4 - Marca" +
- "\n 5 - Modelo" +
- "\n 6 - Voltar");
- num1 = scanner.nextInt();
- switch (num1) {
- case 1: {
- Cliente cli = new Cliente();
- int cod;
- System.out.println("Código: " + arrayCliente.size());
- cli.setCod(arrayCliente.size());
- System.out.println("Nome");
- cli.setNome(scanner.next());
- System.out.println("Email");
- cli.setEmail(scanner.next());
- System.out.println("Endereço");
- cli.setEndereco(scanner.next());
- Date dt3 = null;
- boolean condicao = true;
- while(condicao) {
- try {
- System.out.println("Data de Nascimento");
- dt3 = sdf.parse(scanner.next());
- cli.setDt_nasc(dt3);
- condicao = false;
- }catch (ParseException e) {
- System.out.println("Data de Nascimento inválida");
- }
- }
- System.out.println("Sexo");
- cli.setSexo(scanner.next());
- System.out.println("CNH");
- cli.setCnh(scanner.nextLong());
- System.out.println("CPF");
- cli.setCpf(scanner.nextInt());
- arrayCliente.add(cli);
- gravarCliente();
- break;
- }
- case 2:{
- if (!temCargos())
- break;
- Funcionario func = new Funcionario();
- int cod;
- System.out.println("Código: " + arrayFuncionario.size());
- System.out.println("Nome");
- func.setNome(scanner.next());
- System.out.println("Email");
- func.setEmail(scanner.next());
- System.out.println("Endereço");
- func.setEndereco(scanner.next());
- Date dt2 = null;
- boolean condicao = true;
- while(condicao) {
- try {
- System.out.println("Data de Nascimento");
- dt2 = sdf.parse(scanner.next());
- func.setDt_nasc(dt2);
- condicao = false;
- }catch (ParseException e) {
- System.out.println("Data de Nascimento inválida");
- }
- }
- System.out.println("Sexo");
- func.setSexo(scanner.next());
- System.out.println("Cargo");
- for (int i = 0; i < arrayCargo.size(); i++) {
- System.out.println(arrayCargo.get(i).getCod()
- + " - " + arrayCargo.get(i).getDescricao());}
- System.out.println("Escolha o cargo e digite apenas o número");
- cargos = scanner.nextInt();
- func.setCargo(arrayCargo.get(cargos));
- System.out.println("Salário");
- func.setSalario(scanner.nextDouble());
- System.out.println("PIS");
- func.setPis(scanner.next());
- System.out.println("CPF");
- func.setCpf(scanner.nextInt());
- arrayFuncionario.add(func);
- gravarFuncionario();
- break;}
- case 3:{
- Cargo car = new Cargo();
- int cod;
- car.setCod(arrayCargo.size());
- System.out.println("Código: " + arrayCargo.size());
- System.out.println("Cargo");
- car.setDescricao(scanner.next());
- car.setCod(arrayCargo.size());
- arrayCargo.add(car);
- gravarCargo();
- break;}
- case 4:{
- Marca marca = new Marca();
- int cod;
- marca.setCod(arrayMarca.size());
- System.out.println("Código: " + arrayMarca.size());
- System.out.println("Marca");
- marca.setNome(scanner.next());
- marca.setCod(arrayMarca.size());
- arrayMarca.add(marca);
- gravarMarca();
- break;}
- case 5:{
- if (arrayMarca.size() > 0) {
- Modelo mod = new Modelo();
- int cod;
- System.out.println("Código: " + arrayModelo.size());
- mod.setCod(arrayModelo.size());
- System.out.println("Marca");
- for (int i = 0; i < arrayMarca.size(); i++) {
- System.out.println(arrayMarca.get(i).getCod() + " - "
- + arrayMarca.get(i).getNome());
- }
- System.out.println("\n Escolha a marca e digite apenas números");
- pegamar = scanner.nextInt();
- mod.setMarca(arrayMarca.get(pegamar));
- System.out.println("Modelo");
- mod.setDescricao(scanner.next());
- System.out.println("Cor");
- mod.setCor(scanner.next());
- System.out.println("Ano");
- mod.setAno(scanner.nextInt());
- System.out.println("Quantidade de Portas");
- mod.setQtdPorta(scanner.nextInt());
- System.out.println("Placa");
- mod.setPlaca(scanner.next());
- arrayModelo.add(mod);
- gravarModelo();
- }else
- System.out.println("\n Não há marcas cadastradas. É necessário o cadastro de uma marca.");
- break;}}
- } while (num1 != 6);
- break;
- }
- case 2: {
- int num2 = 0;
- do {
- System.out.println("\n Menu de Consulta");
- System.out.println("1 - Cliente");
- System.out.println("2 - Funcionário");
- System.out.println("3 - Cargos");
- System.out.println("4 - Marcas");
- System.out.println("5 - Modelo");
- System.out.println("6 - Voltar");
- num2 = scanner.nextInt();
- switch (num2) {
- case 1: {
- if (arrayCliente.size() > 0) {
- for (int i = 0; i < arrayCliente.size(); i++) {
- System.out.println(arrayCliente.get(i).getCod() + " - "
- + arrayCliente.get(i).getNome());
- }
- System.out.println("\n Escolha o cliente e digite apenas números, para ver a descrição");
- pegacli = scanner.nextInt();
- if (pegacli == arrayCliente.get(pegacli).getCod())
- System.out.println(arrayCliente.get(pegacli).toString());
- }
- else
- System.out.println("\n Não há clientes cadastrados.");
- break;}
- case 2: {
- if (arrayFuncionario.size() > 0) {
- for (int i = 0; i < arrayFuncionario.size(); i++) {
- System.out.println(arrayFuncionario.get(i).getCod() + " - "
- + arrayFuncionario.get(i).getNome());
- }
- System.out
- .println("\n Escolha o funcionario e digite apenas números");
- pegafunc = scanner.nextInt();
- if (pegafunc == arrayFuncionario.get(pegafunc).getCod())
- System.out.println(arrayFuncionario.get(pegafunc).toString());
- }
- else
- System.out.println("\n Não há funcionarios cadastrados.");
- break;}
- case 3: {
- if (arrayCargo.size() > 0) {
- for (int i = 0; i < arrayCargo.size(); i++) {
- System.out.println(arrayCargo.get(i).getCod() + " - "
- + arrayCargo.get(i).getDescricao());
- }
- }
- else
- System.out.println("\n Não há cargos cadastrados.");
- break;}
- case 4: {
- if (arrayMarca.size() > 0) {
- for (int i = 0; i < arrayMarca.size(); i++) {
- System.out.println(arrayMarca.get(i).getCod() + " - "
- + arrayMarca.get(i).getNome());
- }
- }
- else
- System.out.println("\n Não há marcas cadastrados.");
- break;}
- case 5: {
- if (arrayMarca.size() > 0) {
- for (int i = 0; i < arrayModelo.size(); i++) {
- System.out.println(arrayModelo.get(i).getCod() + " - "
- + arrayModelo.get(i).getDescricao());
- }
- System.out.println("\n Escolha o modelo e digite apenas números");
- pegamod = scanner.nextInt();
- if (pegamod == arrayModelo.get(pegamod).getCod())
- System.out.println(arrayModelo.get(pegamod).toString());
- }
- }
- break;
- }
- }while (num2 != 6);
- break;
- }
- case 3: {
- int num3 = 0;
- do {
- System.out.println("\n \n Menu para Remoção");
- System.out.println("\n 1 - Clientes");
- System.out.println(" 2 - Funcionarios");
- System.out.println(" 3 - Cargos");
- System.out.println(" 4 - Marcas");
- System.out.println(" 5 - Modelos");
- System.out.println(" 6 - Voltar");
- num3 = scanner.nextInt();
- switch (num3) {
- case 1: {
- if (arrayCliente.size() > 0) {
- for (int i = 0; i < arrayCliente.size(); i++) {
- System.out.println(arrayCliente.get(i).getCod() + " - "
- + arrayCliente.get(i).getNome());
- }
- System.out.println("\n Escolha o cliente e digite apenas números");
- pegacli = scanner.nextInt();
- if (pegacli == arrayCliente.get(pegacli).getCod())
- System.out.println("Você removeu a posição " + arrayCliente.get(pegacli).getCod());
- arrayCliente.remove(pegacli);
- gravarCliente();
- }
- else
- System.out.println("\n Não há clientes cadastrados.");
- break;
- }
- case 2: {
- if (arrayCargo.size() > 0) {
- for (int i = 0; i < arrayFuncionario.size(); i++) {
- System.out.println("\n" + arrayFuncionario.get(i).getCod()
- + " - " + arrayFuncionario.get(i).getNome());
- }
- System.out
- .println("\n Escolha o funcionario e digite apenas números");
- pegafunc = scanner.nextInt();
- if (pegafunc == arrayFuncionario.get(pegafunc).getCod())
- System.out.println("\n Você removeu a posição " + arrayFuncionario.get(pegafunc).getCod());
- arrayFuncionario.remove(pegafunc);
- gravarFuncionario();
- }
- else
- System.out.println("\n Não há funcionários cadastrados");
- break;
- }
- case 3: {
- if (arrayCargo.size() > 0) {
- for (int i = 0; i < arrayCargo.size(); i++) {
- System.out.println("\n" + arrayCargo.get(i).getCod() + " - "
- + arrayCargo.get(i).getDescricao());
- }
- System.out.println("\n Escolha o cargo e digite apenas números");
- cargos = scanner.nextInt();
- if (cargos == arrayCargo.get(cargos).getCod())
- System.out.println("\n Você removeu a posição " + arrayCargo.get(cargos).getCod());
- arrayCargo.remove(cargos);
- gravarCargo();
- }
- else
- System.out.println("\n Não há marcas cadastradas.");
- break;
- }
- case 4: {
- if (arrayMarca.size() > 0) {
- for (int i = 0; i < arrayMarca.size(); i++) {
- System.out.println(" \n" + arrayMarca.get(i).getCod() + " - "
- + arrayMarca.get(i).getNome());
- }
- System.out.println("\n Escolha a marca e digite apenas números");
- marcas = scanner.nextInt();
- if (marcas == arrayMarca.get(marcas).getCod())
- System.out.println("\n Você removeu a posição " + arrayMarca.get(marcas).getCod());
- arrayMarca.remove(marcas);
- gravarMarca();
- }
- else
- System.out.println("\n Não há marcas cadastradas");
- break;
- }
- case 5: {
- if (arrayModelo.size() > 0) {
- for (int i = 0; i < arrayModelo.size(); i++) {
- System.out.println("\n" + arrayModelo.get(i).getCod() + " - "
- + arrayModelo.get(i).getDescricao());
- }
- System.out.println("Escolha o modelo e digite apenas números");
- pegamod = scanner.nextInt();
- if (pegamod == arrayModelo.get(pegamod).getCod()) {
- System.out.println("\n Você removeu a posição "
- + arrayModelo.get(pegamod).getCod());
- arrayModelo.remove(pegamod);
- gravarModelo();
- }
- }
- else
- System.out.println("\n Não há modelos cadastrados.");
- break;
- }
- }
- }
- while (num3 != 6);
- break;
- }
- case 4:{
- int num4 = 0;
- do {
- try{
- BufferedWriter bw = new BufferedWriter(new FileWriter("ArquivoGeral.csv"));
- for(Funcionario func : arrayFuncionario){
- String t = "funcionario;"+func.getCod()+";" +func.getNome()+";"+func.getCpf()+";"+func.getEndereco()+";"+func.getEmail()+";"+
- sdf.format(func.getDt_nasc())+";"+func.getSexo()+";"+func.getCargo().getDescricao()+";"+func.getPis()+";"+func.getSalario()+";";
- bw.write(t);
- bw.newLine();
- }
- for(Cliente cli : arrayCliente){
- String t = "cliente;"+cli.getCod()+";"+cli.getNome()+";"+cli.getCpf()+";"+cli.getEndereco()+";"+cli.getEmail()+";"+cli.getEndereco()+";"+
- sdf.format(cli.getDt_nasc())+";"+cli.getSexo()+";"+cli.getCnh();
- bw.write(t);
- bw.newLine();
- }
- for(Marca mar : arrayMarca){
- String t = "marca;"+mar.getCod()+";"+mar.getNome();
- bw.write(t);
- bw.newLine();
- }
- for(Cargo car : arrayCargo){
- String t = "cargo;"+car.getCod()+";"+car.getDescricao();
- bw.write(t);
- bw.newLine();
- }
- for(Modelo mod : arrayModelo){
- String t = "modelo;"+mod.getCod()+";"+mod.getAno()+";"+mod.getCor()+";"+mod.getQtdPorta()+";"+
- mod.getPlaca()+";"+mod.getDescricao()+";"+mod.getMarca();
- bw.write(t);
- bw.newLine();
- }
- bw.flush();
- bw.close();
- }catch (FileNotFoundException e) {}
- catch (IOException e){
- }
- System.out.println("Arquivo Exportado com Sucesso.");
- break;}
- while (num4 != 2);
- break;
- }
- case 5: {
- System.out.println("Arquivo exportado com sucesso");
- importarMet();
- break;
- }
- }
- }
- while (num != 6);
- System.out.println("\n ACABOOOOOU!!!! ACABOUUUUUU!!!! É TETRAAAAA!!!");
- }
- public void gravarCliente() throws FileNotFoundException, IOException{
- ObjectOutputStream gravaCli = new ObjectOutputStream(new FileOutputStream("cliente.dat"));
- gravaCli.writeObject(arrayCliente);
- gravaCli.flush();
- gravaCli.close();
- }
- public void gravarFuncionario() throws FileNotFoundException, IOException{
- ObjectOutputStream gravaFunc = new ObjectOutputStream(new FileOutputStream("funcionario.dat"));
- gravaFunc.writeObject(arrayFuncionario);
- gravaFunc.close();
- }
- public void gravarCargo() throws FileNotFoundException, IOException{
- ObjectOutputStream gravaCargo = new ObjectOutputStream(new FileOutputStream("cargo.dat"));
- gravaCargo.writeObject(arrayCargo);
- gravaCargo.close();
- }
- public void gravarMarca() throws FileNotFoundException, IOException{
- ObjectOutputStream gravaMarca = new ObjectOutputStream(new FileOutputStream("marca.dat"));
- gravaMarca.writeObject(arrayMarca);
- gravaMarca.close();
- }
- public void gravarModelo() throws FileNotFoundException, IOException{
- ObjectOutputStream gravaModelo = new ObjectOutputStream(new FileOutputStream("modelo.dat"));
- gravaModelo.writeObject(arrayModelo);
- gravaModelo.close();
- }
- public void leituraDat() {
- try {
- ObjectInputStream leModelo = new ObjectInputStream (new FileInputStream("modelo.dat"));
- arrayModelo = (ArrayList<Modelo>) leModelo.readObject();
- leModelo.close();
- }catch (IOException e){
- }catch (ClassNotFoundException e){
- }
- try {
- ObjectInputStream leMarca = new ObjectInputStream (new FileInputStream("marca.dat"));
- arrayMarca = (ArrayList<Marca>) leMarca.readObject();
- leMarca.close();
- }catch (IOException e){
- }catch (ClassNotFoundException e){
- }
- try{
- ObjectInputStream leCargo = new ObjectInputStream (new FileInputStream("cargo.dat"));
- arrayCargo = (ArrayList<Cargo>) leCargo.readObject();
- leCargo.close();
- }catch (IOException e){
- }catch (ClassNotFoundException e){
- }
- try{
- ObjectInputStream leFuncionario = new ObjectInputStream (new FileInputStream("funcionario.dat"));
- arrayFuncionario = (ArrayList<Funcionario>) leFuncionario.readObject();
- leFuncionario.close();
- }catch (IOException e){
- }catch (ClassNotFoundException e){
- }
- try{
- ObjectInputStream leCliente = new ObjectInputStream (new FileInputStream("cliente.dat"));
- arrayCliente = (ArrayList<Cliente>) leCliente.readObject();
- leCliente.close();
- }catch (IOException e){
- }catch (ClassNotFoundException e){
- }
- }
- public void importarMet() {
- try {
- BufferedReader bw = new BufferedReader(new FileReader("Arquivo_Geral2.csv"));
- String linha ;
- while((linha = bw.readLine()) != null){
- String[] lineK = linha.split(";");
- if(lineK[0].equalsIgnoreCase("Cliente")) {
- Cliente cli = new Cliente();
- cli.setCod(Integer.parseInt(lineK[1]));
- cli.setNome(lineK[2]);
- cli.setCpf(Long.parseLong(lineK[3]));
- cli.setEndereco(lineK[4]);
- cli.setEmail(lineK[5]);
- cli.setDt_nasc(sdf.parse(lineK[6]));
- cli.setSexo(lineK[7]);
- cli.setCnh(Long.parseLong(lineK[8]));
- }else if (lineK[0].equalsIgnoreCase("Funcionario")){
- Funcionario func = new Funcionario();
- func.setCod(Integer.parseInt(lineK[1]));
- func.setNome(lineK[2]);
- func.setCpf(Long.parseLong(lineK[3]));
- func.setEndereco(lineK[4]);
- func.setEmail(lineK[5]);
- func.setDt_nasc(sdf.parse(lineK[6]));
- func.setSexo(lineK[7]);
- for(Cargo car : arrayCargo) {
- if (car.getDescricao().equals(lineK[8]))
- func.setCargo(car);
- break;
- }
- func.setPis(lineK[9]);
- func.setSalario(Double.parseDouble(lineK[10]));
- }else if ( lineK[0].equalsIgnoreCase("Cargo")){
- Cargo car = new Cargo();
- car.setCod(Integer.parseInt(lineK[1]));
- car.setDescricao(lineK[2]);
- }else if(lineK[0].equalsIgnoreCase("Modelo")){
- Modelo mod = new Modelo ();
- mod.setCod(Integer.parseInt(lineK[1]));
- for(Marca mar : arrayMarca){
- if(mar.getNome().equalsIgnoreCase(lineK[2])){
- mod.setMarca(mar);
- break;
- }
- mod.setCor(lineK[3]);
- mod.setAno(Integer.parseInt(lineK[4]));
- mod.setPlaca(lineK[5]);
- mod.setDescricao(lineK[6]);
- mod.setQtdPorta(Integer.parseInt(lineK[7]));
- }
- }else if ( lineK[0].equalsIgnoreCase("Marca")){
- Marca mar = new Marca();
- mar.setCod(Integer.parseInt(lineK[1]));
- mar.setNome(lineK[2]);
- }
- }
- }catch (IOException e) {
- } catch(ParseException e){
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment