/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package br.com.ddns.grupotsergio;

import java.sql.*;


/**
 *
 * @author Edson
 */
public class grupoGS {
    public int idgrupos = 0;
    public String grupo = null;
    public String codigo = null;
    public String auditoria = null;
    public String obs = null;

    private static PreparedStatement stm = null;
    private static ResultSet rs = null;
    private static Statement stmt;

    public grupoGS(){
    }

    public String getAuditoria() {
        return auditoria;
    }

    public void setAuditoria(String auditoria) {
        this.auditoria = auditoria;
    }

    public String getCodigo() {
        return codigo;
    }

    public void setCodigo(String codigo) {
        this.codigo = codigo;
    }

    public String getGrupo() {
        return grupo;
    }

    public void setGrupo(String grupo) {
        this.grupo = grupo;
    }

    public int getIdgrupos() {
        return idgrupos;
    }

    public void setIdgrupos(int idgrupos) {
        this.idgrupos = idgrupos;
    }

    public String getObs() {
        return obs;
    }

    public void setObs(String obs) {
        this.obs = obs;
    }

    public static boolean inserirGrupo (grupoGS grupo){
        try{
            stm = Conexao.conectar().prepareStatement("insert into grupos("
                    + "idgrupos, "
                    + "grupo, "
                    + "codigo, "
                    + "auditoria, "
                    + "obs) values "
                    + "(?,?,?,?,?)");
            stm.setInt(1, grupo.getIdgrupos());
            stm.setString(2, grupo.getGrupo());
            stm.setString(3, grupo.getCodigo());
            stm.setString(4, grupo.getAuditoria());
            stm.setString(5, grupo.getObs());
            stm.executeUpdate();
            stm.close();
            return true;
        }catch(Exception e){
            System.out.println("Erro ao inserir");
            return false;
        }
    }

    public static boolean altGrupoGrupo (grupoGS grupo){
        boolean testa = false;
        try{
            stm = Conexao.conectar().prepareStatement("update grupos set "
                    + "grupo=? "
                    + "where idgrupos=?");
            stm.setString(1, grupo.getGrupo());
            stm.setInt(2, grupo.getIdgrupos());

            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 altGrupoCod (grupoGS grupo){
        boolean testa = false;
        try{
            stm = Conexao.conectar().prepareStatement("update grupos set "
                    + "codigo=? "
                    + "where idgrupos=?");
            stm.setString(1, grupo.getCodigo());
            stm.setInt(2, grupo.getIdgrupos());

            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 altGrupoAud (grupoGS grupo){
        boolean testa = false;
        try{
            stm = Conexao.conectar().prepareStatement("update grupos set "
                    + "auditoria=? "
                    + "where idgrupos=?");
            stm.setString(1, grupo.getAuditoria());
            stm.setInt(2, grupo.getIdgrupos());

            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 altGrupoObs (grupoGS grupo){
        boolean testa = false;
        try{
            stm = Conexao.conectar().prepareStatement("update grupos set "
                    + "obs=? "
                    + "where idgrupos=?");
            stm.setString(1, grupo.getObs());
            stm.setInt(2, grupo.getIdgrupos());

            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 excluiGrupo (grupoGS grupo){
        boolean testa = false;
        try {
            stm = Conexao.conectar().prepareStatement("delete from grupos "
                    + "where idgrupos = ?");
            stm.setInt(1, grupo.getIdgrupos());
            int executeUpdate = stm.executeUpdate();

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

    public void selGrupo(String Id) {
        try {
            stmt = Conexao.conectar().createStatement();
            rs = stmt.executeQuery("Select * From grupos Where idgrupos ='"+Id+"'");
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static int getAutoInc(String Generator) {
        int Codigo = 0;
        try {
            PreparedStatement pstmt = Conexao.conectar().prepareStatement(
                    "Select max(idgrupos) From grupos");
            ResultSet rss = pstmt.executeQuery();
            rss.next();
            Codigo = rss.getInt(1) + 1;
        }
        catch (Exception e) {
            e.printStackTrace();
        }
        return Codigo;
    }

    public void listaGrupo(){
        try{
            stmt = Conexao.conectar().createStatement();
            rs = stmt.executeQuery("select * from grupos order by grupo");
        }catch(Exception e){
            e.printStackTrace();
        }
    }

    public ResultSet getResultado(){
        return rs;
    }
}
