/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.ddns.grupotsergio;

import java.sql.*;
import java.lang.String;
import br.com.ddns.grupotsergio.Conexao;


/**
 *
 * @author Edson
 */
public class balanceteGS {
    String conta = null;
    String descricao = null;
    String salini = null;
    String debito = null;
    String credito = null;
    String salfin = null;
    String sa = null;
    String empresa = null;
    String dtini = null;
    String dtfin = null;
    
//    private static Connection con;
    private static PreparedStatement stm = null;
    private static ResultSet rs = null;
    private static Statement stmt;

    public balanceteGS(){
//        try{
  //          Class.forName("org.gjt.mm.mysql.Driver");
    //        con = DriverManager.getConnection("jdbc:mysql://localhost:3306/ct_dados","root","Edson");
      //  }catch (Exception e){
        //    System.out.println("Não foi possivel conectar o Banco de Dados");
        //}
    }

    public String getConta() {
        return conta;
    }

    public void setConta(String conta) {
        this.conta = conta;
    }

    public String getCredito() {
        return credito;
    }

    public void setCredito(String credito) {
        this.credito = credito;
    }

    public String getDebito() {
        return debito;
    }

    public void setDebito(String debito) {
        this.debito = debito;
    }

    public String getDescricao() {
        return descricao;
    }

    public void setDescricao(String descricao) {
        this.descricao = descricao;
    }

    public String getSa() {
        return sa;
    }

    public void setSa(String sa) {
        this.sa = sa;
    }

    public String getSalfin() {
        return salfin;
    }

    public void setSalfin(String salfin) {
        this.salfin = salfin;
    }

    public String getSalini() {
        return salini;
    }

    public void setSalini(String salini) {
        this.salini = salini;
    }

    public String getDtfin() {
        return dtfin;
    }

    public void setDtfin(String dtfin) {
        this.dtfin = dtfin;
    }

    public String getDtini() {
        return dtini;
    }

    public void setDtini(String dtini) {
        this.dtini = dtini;
    }

    public String getEmpresa() {
        return empresa;
    }

    public void setEmpresa(String empresa) {
        this.empresa = empresa;
    }
    
    public static boolean inserirBalancete (balanceteGS cadcusto){
        try{
            stm = Conexao.conectar().prepareStatement("INSERT INTO balancete("
                    + "conta,"
                    + "descricao,"
                    + "salini,"
                    + "debito,"
                    + "credito,"
                    + "salfin,"
                    + "sa, "
                    + "empresa, "
                    + "dtini, "
                    + "dtfin) values (?,?,?,?,?,?,?,?,?,?)");
            stm.setString(1, cadcusto.getConta());
            stm.setString(2, cadcusto.getDescricao());
            stm.setString(3, cadcusto.getSalini());
            stm.setString(4, cadcusto.getDebito());
            stm.setString(5, cadcusto.getCredito());
            stm.setString(6, cadcusto.getSalfin());
            stm.setString(7, cadcusto.getSa());
            stm.setString(8, cadcusto.getEmpresa());
            stm.setString(9, cadcusto.getDtini());
            stm.setString(10, cadcusto.getDtfin());
            stm.executeUpdate();
            stm.close();
            return true;
        }catch(Exception e){
            System.out.println("Erro ao inserir");
            return false;
        }
    }
    
    public static boolean alterarBalancete (balanceteGS cadcusto){
        boolean testa = false;
        try{
            stm = Conexao.conectar().prepareStatement("UPDATE balancete SET "
                    + "salini = ?,"
                    + "debito = ?,"
                    + "credito = ?,"
                    + "salfin = ?,"
                    + "sa = ? "
                    + "WHERE conta = ?");
            stm.setString(1, cadcusto.getSalini());
            stm.setString(2, cadcusto.getDebito());
            stm.setString(3, cadcusto.getCredito());
            stm.setString(4, cadcusto.getSalfin());
            stm.setString(5, cadcusto.getSa());
            stm.setString(6, cadcusto.getConta());

            int executeUpdate = stm.executeUpdate();

            if(executeUpdate > 0)
                testa = true;
            else
                testa = false;
        }catch(Exception e){
            System.out.println("Erro ao alterar");
        }
        return testa;
    }
    
    public static boolean excluiBalancete (){
        boolean testa = false;
        try {
            stm = Conexao.conectar().prepareStatement("delete from balancete");
            
            int executeUpdate = stm.executeUpdate();

            if(executeUpdate > 0)
                testa = true;
            else
                testa = false;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return testa;
    }

    public static boolean exclBalCtsZ (){
        boolean testa = false;
        try {
            stm = Conexao.conectar().prepareStatement("delete from balancete "
                    + "where salini = 0 "
                    + "and debito = 0 "
                    + "and credito = 0 "
                    + "and salfin = 0");

            int executeUpdate = stm.executeUpdate();

            if(executeUpdate > 0)
                testa = true;
            else
                testa = false;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return testa;
    }
    
    public void listaBalancete(){
        try{
            stmt = Conexao.conectar().createStatement();
            rs = stmt.executeQuery("select * from balancete "
            + "order by conta");
        }catch(Exception e){
            e.printStackTrace();
        }
    }
    
    public void selConta(String conta) throws SQLException{
        try{
            stm = Conexao.conectar().prepareStatement("Select * "
            + "From balancete Where conta = ?");
            stm.setString(1, conta);
            rs = stm.executeQuery();
        }catch(Exception e){
            e.printStackTrace();
        }
    }
    
    public ResultSet getResultado(){
        return rs;
    }
    
}
