Advertisement
Guest User

GestorV0.5

a guest
Jan 20th, 2016
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5 25.33 KB | None | 0 0
  1. package menuGestor;
  2.  
  3. import java.io.BufferedWriter;
  4. import java.io.File;
  5.  
  6. import java.io.FileNotFoundException;
  7. import java.io.FileWriter;
  8. import java.io.IOException;
  9.  
  10. import java.io.UnsupportedEncodingException;
  11. import java.util.Arrays;
  12. import java.util.Formatter;
  13. import java.util.Scanner;
  14.  
  15. import javax.swing.JOptionPane;
  16.  
  17. public class MenuPrincipal {
  18.  
  19.     static Scanner teclado = new Scanner(System.in);
  20.     static String utilizador;
  21.  
  22.     // Declaração e definição de vetores
  23.     static String categorias[] = new String[5];
  24.     static String clientes[] = new String[5];
  25.     static String utilizadores[] = new String[5];
  26.     static String tabelaProjetos[][] = new String[6][5];
  27.     static String colunas[] = { "Utilizador", "Nome do Projeto", "Categoria", "Cliente", "Data", "Localização" };
  28.     static String datas[] = { "2013", "2014", "2015", "2016", "2017" };
  29.  
  30.     public static void main(String[] args) {
  31.  
  32.         menuPrincipal();
  33.     }
  34.  
  35.     // logins
  36.     public static void loginAdministrador() {
  37.         System.out.println(" ______________________________________________ ");
  38.         System.out.println("|                                              |");
  39.         System.out.print("| Insira o username de administrador:");
  40.         String user = teclado.nextLine();
  41.         System.out.println("|______________________________________________|");
  42.  
  43.         System.out.println(" ______________________________________________ ");
  44.         System.out.println("|                                              |");
  45.         System.out.print("| Insira a password de administrador:");
  46.         String password = teclado.nextLine();
  47.         System.out.println("|______________________________________________|");
  48.         if (password.equals("1337") && user.equals("admin")) {
  49.             System.out.println(" ___________________ ");
  50.             System.out.println("|                   |");
  51.             System.out.println("|Login bem sucedido.|");
  52.             System.out.println("|___________________| ");
  53.             administracao();
  54.         }
  55.  
  56.         else {
  57.             System.out.println("Informações incorretas.");
  58.             menuPrincipal();
  59.         }
  60.  
  61.     }
  62.  
  63.     public static void loginUtilizador() {
  64.         do {
  65.             System.out.println(" ______________________________________________ ");
  66.             System.out.println("|                                              |");
  67.             System.out.print("| Insira o username de administrador:");
  68.             utilizador = teclado.nextLine();
  69.             System.out.println("|______________________________________________|");
  70.         } while (Arrays.asList(utilizadores).contains(utilizador));
  71.         menuUtilizador();
  72.     }
  73.  
  74.     // menus
  75.     public static void menuPrincipal() {
  76.         System.out.println(" ______________________________ ");
  77.         System.out.println("|                              |");
  78.         System.out.println("|        Menu Principal        |");
  79.         System.out.println("|______________________________|");
  80.         System.out.println("|                              |");
  81.         System.out.println("| 1 - Administração.           |");
  82.         System.out.println("| 2 - Meu Utilizador.          |");
  83.         System.out.println("| 0 - Sair.                    |");
  84.         System.out.println("|______________________________|");
  85.         System.out.println();
  86.         processarOpcao1(lerOpcao1());
  87.     }
  88.  
  89.     public static void administracao() {
  90.         System.out.println(" ______________________________ ");
  91.         System.out.println("|                              |");
  92.         System.out.println("|     Menu Administrativo      |");
  93.         System.out.println("|______________________________|");
  94.         System.out.println("|                              |");
  95.         System.out.println("|1 - Categorias.               |");
  96.         System.out.println("|2 - Utilizadores.             |");
  97.         System.out.println("|3 - Clientes.                 |");
  98.         System.out.println("|4 - Listar Projetos.          |");
  99.         System.out.println("|0 - Sair.                     |");
  100.         System.out.println("|______________________________|");
  101.         System.out.println();
  102.         processarOpcao2(lerOpcao2());
  103.     }
  104.  
  105.     public static void administrarCategorias() {
  106.         try {
  107.             System.arraycopy(preencherVetor("categorias.txt"), 0, categorias, 0, categorias.length);
  108.         } catch (FileNotFoundException e) {
  109.             JOptionPane.showMessageDialog(null, "Alert", "Ficheiro não Encontrado", JOptionPane.ERROR_MESSAGE);
  110.             e.printStackTrace();
  111.         }
  112.         System.out.println(" ______________________________ ");
  113.         System.out.println("|                              |");
  114.         System.out.println("|     Gestão de Categorias     |");
  115.         System.out.println("|______________________________|");
  116.         System.out.println("|                              |");
  117.         System.out.println("|1 - Inserir.                  |");
  118.         System.out.println("|2 - Remover.                  |");
  119.         System.out.println("|3 - Alterar.                  |");
  120.         System.out.println("|4 - Listar.                   |");
  121.         System.out.println("|0 - Sair.                     |");
  122.         System.out.println("|______________________________|");
  123.         System.out.println();
  124.         processarOpcao3(lerOpcao3());
  125.     }
  126.  
  127.     public static void administrarUtilizadores() {
  128.         try {
  129.             System.arraycopy(preencherVetor("utilizadores.txt"), 0, utilizadores, 0, utilizadores.length);
  130.         } catch (FileNotFoundException e) {
  131.             JOptionPane.showMessageDialog(null, "Alert", "Ficheiro não Encontrado", JOptionPane.ERROR_MESSAGE);
  132.             e.printStackTrace();
  133.         }
  134.         System.out.println(" ______________________________ ");
  135.         System.out.println("|                              |");
  136.         System.out.println("|    Gestãdo de Utilizadores    |");
  137.         System.out.println("|______________________________|");
  138.         System.out.println("|                              |");
  139.         System.out.println("|1 - Registar Utilizadores.    |");
  140.         System.out.println("|2 - Consulta Utilizadores.    |");
  141.         System.out.println("|3 - Listar Utilizadores.      |");
  142.         System.out.println("|0 - Sair.                     |");
  143.         System.out.println("|______________________________|");
  144.         System.out.println();
  145.         processarOpcao4(lerOpcao4());
  146.     }
  147.  
  148.     public static void administrarClientes() {
  149.         try {
  150.             System.arraycopy(preencherVetor("clientes.txt"), 0, clientes, 0, clientes.length);
  151.         } catch (FileNotFoundException e) {
  152.             JOptionPane.showMessageDialog(null, "Alert", "Ficheiro não Encontrado", JOptionPane.ERROR_MESSAGE);
  153.             e.printStackTrace();
  154.         }
  155.         System.out.println(" ______________________________ ");
  156.         System.out.println("|                              |");
  157.         System.out.println("|      Gestão de Clientes      |");
  158.         System.out.println("|______________________________|");
  159.         System.out.println("|                              |");
  160.         System.out.println("|1 - Registar Clientes.        |");
  161.         System.out.println("|2 - Consultar Clientes.       |");
  162.         System.out.println("|3 - Listar Clientes.          |");
  163.         System.out.println("|0 - Sair.                     |");
  164.         System.out.println("|______________________________|");
  165.         System.out.println();
  166.         processarOpcao5(lerOpcao5());
  167.     }
  168.  
  169.     public static void menuUtilizador() {
  170.         System.out.println(" ____________________________");
  171.         System.out.println("|                            |");
  172.         System.out.println("|    Menu do Utilizador      |");
  173.         System.out.println("|____________________________|");
  174.         System.out.println("| 1 - Registar Projecto      |");
  175.         System.out.println("| 2 - Consultar Projectos    |");
  176.         System.out.println("| 3 - Listar Projectos       |");
  177.         System.out.println("| 0 - Sair                   |");
  178.         System.out.println("|____________________________|");
  179.  
  180.         processarOpcao6(lerOpcao7());
  181.     }
  182.  
  183.     // métodos de administração de dados
  184.     public static void inserirCategorias() throws IOException {
  185.         System.out.println(" ______________________________ ");
  186.         System.out.println("|                              |");
  187.         System.out.println("|      Inserir Categorias      |");
  188.         System.out.println("|______________________________|");
  189.         // pede categoria e introduz na ultima linha
  190.         FileWriter writer = new FileWriter(new File("categorias.txt"), true);
  191.         System.out.print("Introduza categoria a inserir: ");
  192.         String categoria = teclado.nextLine();
  193.         System.out.println();
  194.         try {
  195.             writer.write("\n" + categoria);
  196.             writer.close();
  197.         } catch (IOException e) {
  198.             JOptionPane.showMessageDialog(null, "Alert", "Erro de input.", JOptionPane.ERROR_MESSAGE);
  199.             e.printStackTrace();
  200.         }
  201.         // não atualiza o array porque este não tem dimensão para o suportar
  202.         administrarCategorias();
  203.     }
  204.  
  205.     public static void removerCategorias() {
  206.         System.out.println(" ______________________________ ");
  207.         System.out.println("|                              |");
  208.         System.out.println("|      Remover Categorias      |");
  209.         System.out.println("|______________________________|");
  210.         // pede codigo de categoria e iguala no array a ""
  211.         int i;
  212.         do {
  213.             System.out.print("Introduza o código da categoria a remover:");
  214.             i = teclado.nextInt();
  215.             System.out.println();
  216.         } while (i <= 0 || i > categorias.length);
  217.         categorias[i] = "";
  218.         // reescreve o ficheiro com o array atualizado
  219.         try {
  220.             reescreverFicheiro("categorias.txt", categorias);
  221.         } catch (FileNotFoundException e) {
  222.             JOptionPane.showMessageDialog(null, "Alert", "Ficheiro não encontrado.", JOptionPane.ERROR_MESSAGE);
  223.             e.printStackTrace();
  224.         } catch (UnsupportedEncodingException e) {
  225.             JOptionPane.showMessageDialog(null, "Alert", "Codificação não suportada.", JOptionPane.ERROR_MESSAGE);
  226.             e.printStackTrace();
  227.         }
  228.         administrarCategorias();
  229.     }
  230.  
  231.     public static void alterarCategorias() {
  232.         System.out.println(" ______________________________ ");
  233.         System.out.println("|                              |");
  234.         System.out.println("|      Alterar Categorias      |");
  235.         System.out.println("|______________________________|");
  236.         // pede código da categoria e nome da categoria
  237.         int i;
  238.         String categoria;
  239.         do {
  240.             System.out.print("Introduzir código de categoria a alterar: ");
  241.             i = teclado.nextInt();
  242.             System.out.println();
  243.         } while (i <= 0 || i > categorias.length);
  244.         categoria = teclado.nextLine();
  245.         categorias[i] = categoria;
  246.         // reescreve o ficheiro com o array atualizado
  247.         try {
  248.             reescreverFicheiro("categorias.txt", categorias);
  249.         } catch (FileNotFoundException e) {
  250.             JOptionPane.showMessageDialog(null, "Alert", "Ficheiro não encontrado.", JOptionPane.ERROR_MESSAGE);
  251.             e.printStackTrace();
  252.         } catch (UnsupportedEncodingException e) {
  253.             JOptionPane.showMessageDialog(null, "Alert", "Codificação não suportada.", JOptionPane.ERROR_MESSAGE);
  254.             e.printStackTrace();
  255.         }
  256.         administrarCategorias();
  257.     }
  258.  
  259.     public static void listarCategorias() {
  260.         System.out.println(" ______________________________ ");
  261.         System.out.println("|                              |");
  262.         System.out.println("|       Listar Categorias      |");
  263.         System.out.println("|______________________________|");
  264.         for (int i = 0; i < categorias.length; i++)
  265.             System.out.println(i + " - " + categorias[i]);
  266.         System.out.println();
  267.         administrarCategorias();
  268.     }
  269.  
  270.     public static void registarUtilizadores() throws IOException {
  271.         System.out.println(" ______________________________ ");
  272.         System.out.println("|                              |");
  273.         System.out.println("|    Registar Utilizadores     |");
  274.         System.out.println("|______________________________|");
  275.         // pede categoria e introduz na ultima linha
  276.         FileWriter writer = new FileWriter(new File("utilizadores.txt"), true);
  277.         System.out.print("Introduza o utilizador a registar: ");
  278.         String categoria = teclado.nextLine();
  279.         System.out.println();
  280.         try {
  281.             writer.write("\n" + categoria);
  282.             writer.close();
  283.         } catch (IOException e) {
  284.             JOptionPane.showMessageDialog(null, "Alert", "Erro de input.", JOptionPane.ERROR_MESSAGE);
  285.             e.printStackTrace();
  286.         }
  287.         // não atualiza o array porque este não tem dimensão para o suportar
  288.         administrarUtilizadores();
  289.     }
  290.  
  291.     public static void consultarUtilizadores() {
  292.         System.out.println(" ______________________________ ");
  293.         System.out.println("|                              |");
  294.         System.out.println("|    Consultar Utilizadores    |");
  295.         System.out.println("|______________________________|");
  296.  
  297.     }
  298.  
  299.     public static void listarUtilizadores() {
  300.         System.out.println(" ______________________________ ");
  301.         System.out.println("|                              |");
  302.         System.out.println("|    Listar Utilizadores:      |");
  303.         System.out.println("|______________________________|");
  304.  
  305.     }
  306.  
  307.     public static void registarClientes() {
  308.         System.out.println(" ______________________________ ");
  309.         System.out.println("|                              |");
  310.         System.out.println("|      Registar Clientes       |");
  311.         System.out.println("|______________________________|");
  312.  
  313.     }
  314.  
  315.     public static void consultarClientes() {
  316.         System.out.println(" ______________________________ ");
  317.         System.out.println("|                              |");
  318.         System.out.println("|      Consultar Clientes      |");
  319.         System.out.println("|______________________________|");
  320.  
  321.     }
  322.  
  323.     public static void listarClientes() {
  324.         System.out.println(" ______________________________ ");
  325.         System.out.println("|                              |");
  326.         System.out.println("|       Listar Clientes        |");
  327.         System.out.println("|______________________________|");
  328.  
  329.     }
  330.  
  331.     public static String[] preencherVetor(String pathFicheiro) throws FileNotFoundException {
  332.         // abre o ficheiro pedido e guarda cada linha dentro de um vetor
  333.         Scanner ficheiro = new Scanner(new File(pathFicheiro), "UTF-8");
  334.         String vetor[] = new String[5];
  335.         int i = 0;
  336.         String linha;
  337.         while (ficheiro.hasNextLine()) {
  338.             linha = ficheiro.nextLine();
  339.             if (linha.length() != 0) {
  340.                 vetor[i] = linha;
  341.                 i++;
  342.             }
  343.         }
  344.         ficheiro.close();
  345.         return vetor;
  346.     }
  347.  
  348.     public static void preencherTabela(String pathFicheiro) throws FileNotFoundException {
  349.         Scanner ficheiro = new Scanner(new File(pathFicheiro), "UTF-8");
  350.         int c = 0;
  351.         String linha;
  352.         String[] partes;
  353.         while (ficheiro.hasNextLine()) {
  354.             linha = ficheiro.nextLine();
  355.             if (linha.length() != 0) {
  356.                 partes = linha.split("-");
  357.                 for (int l = 0; l < tabelaProjetos.length; l++) {
  358.                     tabelaProjetos[l][c] = partes[l];
  359.                 }
  360.                 c++;
  361.             }
  362.         }
  363.         ficheiro.close();
  364.     }
  365.  
  366.     /*
  367.      * public static void criarFicheiro(String pathFicheiro, String vetor[])
  368.      * throws FileNotFoundException, UnsupportedEncodingException { Formatter
  369.      * writer = new Formatter(new File(pathFicheiro), "UTF-8"); for (int i = 0;
  370.      * i < vetor.length; i++) writer.format("%s%n", vetor[i]); writer.close(); }
  371.      */
  372.     public static void reescreverFicheiro(String pathFicheiro, String vetor[])
  373.             throws FileNotFoundException, UnsupportedEncodingException {
  374.         Formatter writer = new Formatter(new File(pathFicheiro), "UTF-8");
  375.         for (int i = 0; i < vetor.length; i++)
  376.             writer.format("%s%n", vetor[i]);
  377.         writer.close();
  378.     }
  379.  
  380.     public static void listarTabela(String tabela[][]) {
  381.         int c, l;
  382.         System.out.println(" ______________________________ ");
  383.         System.out.println("|                              |");
  384.         System.out.println("|       Lista de Projetos      |");
  385.         System.out.println("|______________________________|");
  386.         System.out.println();
  387.         for (c = 0; c < tabela[0].length - 1; c++) {
  388.             if (tabela[c] != null) {
  389.                 for (l = 0; l < tabela.length; l++) {
  390.                     if (tabela[l][c] != null)
  391.                         System.out.print(colunas[l] + ": " + tabela[l][c] + ", ");
  392.                 }
  393.                 System.out.println("\n");
  394.             }
  395.         }
  396.         System.out.println();
  397.         administracao();
  398.     }
  399.  
  400.     public static void registarProjetoUtilizador() {
  401.         System.out.println("_____________________________");
  402.         System.out.println("Novo Projecto");
  403.         System.out.println(utilizador);
  404.         System.out.print("Nome do projecto: ");
  405.         String nome_projecto = teclado.nextLine();
  406.         System.out.println("Categoria: ");
  407.         for (int i = 0; i < categorias.length; i++) {
  408.             System.out.println(" [" + i + "] - " + categorias[i]);
  409.         }
  410.  
  411.         // processar_opcao(lerOpcao());-----------------------------------------------------<aqui>
  412.         /*
  413.          * "alternativa" System.out.println(" [0] - " + categorias[0]);
  414.          * System.out.println(" [1] - " + categorias[1]); System.out.println(
  415.          * " [2] - " + categorias[2]); System.out.println(" [3] - " +
  416.          * categorias[3]); System.out.println(" [4] - " + categorias[4]);
  417.          */
  418.         int categoria_projecto;
  419.         do {
  420.             System.out.print("Opçao = ");
  421.             categoria_projecto = teclado.nextLine().charAt(0);
  422.         } while (categoria_projecto < '0' || categoria_projecto > '4');
  423.         categoria_projecto = categoria_projecto - 48;
  424.         System.out.print("Cliente: ");
  425.         String cliente_projecto = teclado.nextLine();
  426.         System.out.print("Data:(ano) ");
  427.         String data_projecto = teclado.nextLine();
  428.         System.out.print("Localização: ");
  429.         String localizacao_projecto = teclado.nextLine();
  430.         System.out.println("_____________________________");
  431.         System.out.println(" 1 - Registar novo projecto");
  432.         System.out.println(" 0 - Voltar");
  433.         System.out.println("_____________________________");
  434.  
  435.         String teste_completo = utilizador + "-" + nome_projecto + "-" + categorias[categoria_projecto] + "-"
  436.                 + cliente_projecto + "-" + data_projecto + "-" + localizacao_projecto;
  437.  
  438.         FileWriter texto = null;
  439.         BufferedWriter escrivao = null;
  440.  
  441.         try {
  442.  
  443.             texto = new FileWriter("text7.txt", true);
  444.             escrivao = new BufferedWriter(texto);
  445.             escrivao.write(teste_completo);
  446.             // writer.write(nome_projecto);
  447.             escrivao.newLine(); // descomentar para por em linha !
  448.             escrivao.close();
  449.  
  450.         } catch (Exception e) {
  451.             System.out.println("Erro!");
  452.         }
  453.  
  454.         processarOpcao6(lerOpcao7());
  455.  
  456.     }
  457.  
  458.     public static void listarTodosProjetos() throws FileNotFoundException {
  459.         System.out.println(" ____________________________");
  460.         System.out.println("|                            |");
  461.         System.out.println("|      Listar Projetos       |");
  462.         System.out.println("|____________________________|");
  463.         String user_name = utilizador;
  464.         System.out.println("Todos os projectos de " + user_name);
  465.         Scanner ficheiro = new Scanner(new File("text7.txt"), "UTF-8");
  466.  
  467.         String linha;
  468.         while (ficheiro.hasNextLine()) {
  469.             linha = ficheiro.nextLine();
  470.             if (linha.length() != 0) {
  471.                 System.out.println(linha);
  472.  
  473.             }
  474.         }
  475.         ficheiro.close();
  476.     }
  477.  
  478.     public static void menuConsultarProjetosUtilizador() {
  479.         System.out.println(" ____________________________");
  480.         System.out.println("|                            |");
  481.         System.out.println("|    Consultar Projectos     |");
  482.         System.out.println("|____________________________|");
  483.         System.out.println("| 1 - Consultar por Categoria|");
  484.         System.out.println("| 2 - Consultar por Cliente  |");
  485.         System.out.println("| 3 - Consultar por Data     |");
  486.         System.out.println("| 0 - Sair                   |");
  487.         System.out.println("|____________________________|");
  488.  
  489.         menuConsultarListagem(lerOpcao6());
  490.     }
  491.  
  492.     public static void menuConsultarListagem(char procura) {
  493.         switch (procura) {
  494.         case '1':
  495.             System.out.println("\n Consultar por Categoria: ");
  496.             consultarCategorias();
  497.             String escolha_categoria;
  498.             do {
  499.                 System.out.print("Opção: ");
  500.                 escolha_categoria = teclado.nextLine();
  501.  
  502.             } while (escolha_categoria.equals(categorias[0]));
  503.             break;
  504.  
  505.         case '2':
  506.             System.out.println("\n Consultar por Cliente: ");
  507.             consultarClientesUtilizador();
  508.             String escolha_cliente;
  509.             do {
  510.                 System.out.print("Opção: ");
  511.                 escolha_cliente = teclado.nextLine();
  512.  
  513.             } while (escolha_cliente.equals(clientes[0]));
  514.             break;
  515.         case '3':
  516.             System.out.println("\n Consultar por Categoria: ");
  517.             consultarDatas();
  518.             String escolha_data;
  519.             do {
  520.                 System.out.print("Opção: ");
  521.                 escolha_data = teclado.nextLine();
  522.             } while (escolha_data.equals(datas[0]));
  523.             break;
  524.         case '0':
  525.             menuUtilizador();
  526.         default:
  527.             break;
  528.         }
  529.     }
  530.  
  531.     public static void consultarCategorias() {
  532.  
  533.         System.out.println();
  534.         for (int i = 0; i < categorias.length; i++)
  535.             System.out.println(i + " - " + categorias[i]);
  536.         System.out.println();
  537.     }
  538.  
  539.     public static void consultarClientesUtilizador() {
  540.  
  541.         System.out.println();
  542.         for (int i = 0; i < clientes.length; i++)
  543.             System.out.println(i + " - " + clientes[i]);
  544.         System.out.println();
  545.     }
  546.  
  547.     public static void consultarDatas() {
  548.  
  549.         System.out.println();
  550.         for (int i = 0; i < datas.length; i++)
  551.             System.out.println(i + " - " + datas[i]);
  552.         System.out.println();
  553.     }
  554.  
  555.     /*
  556.      * public static int numLinhasProjetos() { int n = 0; try { Scanner fin =
  557.      * new Scanner(new File("projetos.txt")); while (fin.hasNextLine()) { n++;
  558.      * fin.nextLine(); } fin.close(); } catch (FileNotFoundException e) {
  559.      * JOptionPane.showMessageDialog(null, "Alert", "Erro de input.",
  560.      * JOptionPane.ERROR_MESSAGE); e.printStackTrace(); } return n; }
  561.      */
  562.     // métodos de input de opções
  563.     public static char lerOpcao1() {
  564.         char opcao;
  565.  
  566.         do {
  567.             System.out.println(" _________________ ");
  568.             System.out.println("|                 |");
  569.             System.out.print("|    Opção = ");
  570.             opcao = teclado.nextLine().charAt(0);
  571.             System.out.println("|_________________|");
  572.         } while (opcao < '0' || opcao > '2');
  573.         System.out.println();
  574.         return opcao;
  575.     }
  576.  
  577.     public static char lerOpcao2() {
  578.         char opcao;
  579.  
  580.         do {
  581.             System.out.println(" _________________ ");
  582.             System.out.println("|                 |");
  583.             System.out.print("|    Opção = ");
  584.             opcao = teclado.nextLine().charAt(0);
  585.             System.out.println("|_________________|");
  586.         } while (opcao < '0' || opcao > '4');
  587.         System.out.println();
  588.         return opcao;
  589.     }
  590.  
  591.     public static char lerOpcao3() {
  592.         char opcao;
  593.  
  594.         do {
  595.             System.out.println(" _________________ ");
  596.             System.out.println("|                 |");
  597.             System.out.print("|    Opção = ");
  598.             opcao = teclado.nextLine().charAt(0);
  599.             System.out.println("|_________________|");
  600.         } while (opcao < '0' || opcao > '4');
  601.         System.out.println();
  602.         return opcao;
  603.     }
  604.  
  605.     public static char lerOpcao4() {
  606.         char opcao;
  607.  
  608.         do {
  609.             System.out.println(" _________________ ");
  610.             System.out.println("|                 |");
  611.             System.out.print("|    Opção = ");
  612.             opcao = teclado.nextLine().charAt(0);
  613.             System.out.println("|_________________|");
  614.         } while (opcao < '0' || opcao > '3');
  615.         System.out.println();
  616.         return opcao;
  617.     }
  618.  
  619.     public static char lerOpcao5() {
  620.         char opcao;
  621.  
  622.         do {
  623.             System.out.println(" _________________ ");
  624.             System.out.println("|                 |");
  625.             System.out.print("|    Opção = ");
  626.             opcao = teclado.nextLine().charAt(0);
  627.             System.out.println("|_________________|");
  628.         } while (opcao < '0' || opcao > '3');
  629.         System.out.println();
  630.         return opcao;
  631.     }
  632.  
  633.     public static char lerOpcao6() {
  634.         char consulta;
  635.  
  636.         do {
  637.             System.out.print(" Opção = ");
  638.             consulta = teclado.nextLine().charAt(0);
  639.         } while (consulta < '0' || consulta > '4');
  640.         return consulta;
  641.     }
  642.  
  643.     public static char lerOpcao7() {
  644.         char opcao;
  645.  
  646.         do {
  647.             System.out.print(" Opção = ");
  648.             opcao = teclado.nextLine().charAt(0);
  649.         } while (opcao < '0' || opcao > '3');
  650.         return opcao;
  651.     }
  652.  
  653.     // métodos de acesso a menus e métodos
  654.     public static void processarOpcao1(char opcao) {
  655.         switch (opcao) {
  656.         case '1':
  657.             loginAdministrador();
  658.             break;
  659.         case '2':
  660.             loginUtilizador();
  661.             break;
  662.         case '0':
  663.             break;
  664.         default:
  665.             break;
  666.         }
  667.     }
  668.  
  669.     public static void processarOpcao2(char opcao) {
  670.         switch (opcao) {
  671.         case '1':
  672.             administrarCategorias();
  673.             break;
  674.         case '2':
  675.             administrarUtilizadores();
  676.             break;
  677.         case '3':
  678.             administrarClientes();
  679.             break;
  680.         case '4':
  681.             try {
  682.                 preencherTabela("projetos.txt");
  683.             } catch (FileNotFoundException e) {
  684.                 JOptionPane.showMessageDialog(null, "Alert", "Ficheiro não Encontrado", JOptionPane.ERROR_MESSAGE);
  685.                 e.printStackTrace();
  686.             }
  687.             listarTabela(tabelaProjetos);
  688.             break;
  689.         case '0':
  690.             menuPrincipal();
  691.             break;
  692.         default:
  693.             break;
  694.         }
  695.     }
  696.  
  697.     public static void processarOpcao3(char opcao) {
  698.         switch (opcao) {
  699.         case '1':
  700.             try {
  701.                 inserirCategorias();
  702.             } catch (IOException e) {
  703.                 JOptionPane.showMessageDialog(null, "Alert", "IOException", JOptionPane.ERROR_MESSAGE);
  704.                 e.printStackTrace();
  705.             }
  706.             break;
  707.         case '2':
  708.             removerCategorias();
  709.             break;
  710.         case '3':
  711.             alterarCategorias();
  712.             break;
  713.         case '4':
  714.             listarCategorias();
  715.             break;
  716.         case '0':
  717.             administracao();
  718.             break;
  719.         default:
  720.             break;
  721.         }
  722.     }
  723.  
  724.     public static void processarOpcao4(char opcao) {
  725.         switch (opcao) {
  726.         case '1':
  727.             try {
  728.                 registarUtilizadores();
  729.             } catch (IOException e) {
  730.                 JOptionPane.showMessageDialog(null, "Alert", "Ficheiro não encontrado.", JOptionPane.ERROR_MESSAGE);
  731.                 e.printStackTrace();
  732.             }
  733.             break;
  734.         case '2':
  735.             consultarUtilizadores();
  736.             break;
  737.         case '3':
  738.             listarUtilizadores();
  739.             break;
  740.         case '0':
  741.             administracao();
  742.             break;
  743.         default:
  744.             break;
  745.         }
  746.     }
  747.  
  748.     public static void processarOpcao5(char opcao) {
  749.         switch (opcao) {
  750.         case '1':
  751.             registarClientes();
  752.             break;
  753.         case '2':
  754.             consultarClientes();
  755.             break;
  756.         case '3':
  757.             listarClientes();
  758.             break;
  759.         case '0':
  760.             administracao();
  761.             break;
  762.         default:
  763.             break;
  764.         }
  765.     }
  766.  
  767.     public static void processarOpcao6(char opcao) {
  768.         switch (opcao) {
  769.         case '1':
  770.             registarProjetoUtilizador();
  771.             break;
  772.         case '2':
  773.             menuConsultarProjetosUtilizador();
  774.             break;
  775.         case '3':
  776.             try {
  777.                 listarTodosProjetos();
  778.             } catch (FileNotFoundException e) {
  779.                 JOptionPane.showMessageDialog(null, "Alert", "Ficheiro não encontrado.", JOptionPane.ERROR_MESSAGE);
  780.                 e.printStackTrace();
  781.             }
  782.             break;
  783.         case '0':
  784.             System.exit(0);
  785.         default:
  786.             break;
  787.         }
  788.     }
  789.  
  790. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement