Package controleEstoque.controladores

Source Code of controleEstoque.controladores.ControlFornecedor

package controleEstoque.controladores;

import controleEstoque.arquivos.Arquivo;
import controleEstoque.arquivos.ControlCarregaArquivos;
import controleEstoque.arquivos.ControlGravaArquivos;
import controleEstoque.entidades.Fornecedor;
import controleEstoque.estruturaDados.ListaFornecedor;
import controleEstoque.estruturaDados.No;
import controleEstoque.formularios.FmrAdicionaFornecedor;
import java.io.File;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JComboBox;
import javax.swing.JFrame;

/**
* @author Eduardo Lacerda
* Data: Jun 2, 2012
*/
public class ControlFornecedor {
    ListaFornecedor listaFornecedor = new ListaFornecedor();

    /**
     * Construtor da classe, onde gera a lista de fornecedores contidas no arquivo de texto salvo.
     */
    public ControlFornecedor() {
        listaFornecedor = obtemListaFornecedor();
    }
   
   
    /**
     * Chama a tela de fornecedor
     */
    public void chamaTelaFornecedor(){
        FmrAdicionaFornecedor frmAdicionaFornecedor = new FmrAdicionaFornecedor();
        frmAdicionaFornecedor.setLocationRelativeTo(null);
        frmAdicionaFornecedor.setVisible(true);
        frmAdicionaFornecedor.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    }  
  
    /**
     * Obtem a lista atual de fornecedores
     * @return Lista atual de fornecedores
     */
    public ListaFornecedor obtemListaFornecedor(){
        File file = new File("Fornecedor/fornecedor.txt");
        ControlCarregaArquivos controlCarrega;
        try {
            controlCarrega = new ControlCarregaArquivos(Arquivo.FORNECEDOR);
      
            String arquivo[] = controlCarrega.retornaStringArquivo();
            Fornecedor[] fornecedor;
            if(arquivo != null){
                fornecedor = new Fornecedor[arquivo.length];
                int i = 0, j = 0, h = 0;
                while(i < fornecedor.length){
                    switch(h){
                        case 0:
                            fornecedor[j] = new Fornecedor();
                            fornecedor[j].setNome(arquivo[i]);
                            h++;
                        break;

                        case 1:
                            fornecedor[j].setTelefone(arquivo[i]);                     
                            listaFornecedor.adiciona(fornecedor[j]);
                            h = 0;
                            j++;                       
                        break;   
                    }              
                    i++;               
                }

            }
        } catch (IOException ex) {
            Logger.getLogger(ControlFornecedor.class.getName()).log(Level.SEVERE, null, ex);
        }
       
        return this.listaFornecedor;
    }
   
    /**
     * Retorna para um JComboBox os nomes de cada fornecedor cadastrado
     * @param cbFornecedor JComboBox que irá receber os fornecedores
     * @return JComboBox contendo o nome dos fornecedores
     */
    public JComboBox obtemListaFornecedor(JComboBox cbFornecedor){
       
        listaFornecedor = new ListaFornecedor();
        listaFornecedor = obtemListaFornecedor();
       
        No aux = listaFornecedor.getLista();
        int i = 0;
       
        cbFornecedor.removeAllItems();
       
        while(aux != null){
            Fornecedor forn = (Fornecedor) aux.getObjeto();
            cbFornecedor.insertItemAt(forn.getNome(), i);
            i++;
            aux = aux.getProx();          
        }
       
        return cbFornecedor;                           
       
    }
   
    /**
     * Pesquisa um fornecedor pelo nome.
     * @param fornecedor nome do fornecedor
     * @return Objeto contendo os dados do respectivo fornecedor
     */
    public Fornecedor pesquisaFornecedor(String fornecedor){
        ListaFornecedor listaAux = obtemListaFornecedor();
        No aux = listaAux.getLista();
        Fornecedor forn;
       
        while(aux != null){
            forn = (Fornecedor) aux.getObjeto();
            if(forn.getNome().equals(fornecedor)){
                return forn;
            }
        }
       
        return new Fornecedor();
       
    }
   
    /**
     * Adiciona um novo fornecedor a lista de fornecedores
     * @param fornecedor
     */
    public void adiciona(Fornecedor fornecedor){
        listaFornecedor.adiciona(fornecedor);
        criaArquivoFornecedor();
    }
   
    /**
     * Cria um arquivo com os fornecedores da Lista.
     */
    private void criaArquivoFornecedor(){
        ControlGravaArquivos controlGravaArquivos = new ControlGravaArquivos(Arquivo.FORNECEDOR);
        controlGravaArquivos.criaArquivoFornecedor(listaFornecedor);
    }
   

}
TOP

Related Classes of controleEstoque.controladores.ControlFornecedor

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.