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

package br.com.ddns.grupotsergio;

import com.mysql.jdbc.PreparedStatement;
import com.mysql.jdbc.Statement;
import java.sql.ResultSet;

/**
 *
 * @author Edson
 */
public class deptosGS {
    int iddeptos = 0;
    String departamento = null;
    String codigo = null;
    String auditoria = null;
    String obs = null;

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

    public deptosGS(){
    }

    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 getDepartamento() {
        return departamento;
    }

    public void setDepartamento(String departamento) {
        this.departamento = departamento;
    }

    public int getIddeptos() {
        return iddeptos;
    }

    public void setIddeptos(int iddeptos) {
        this.iddeptos = iddeptos;
    }

    public String getObs() {
        return obs;
    }

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

    public static boolean inserirDepto (deptosGS grupo){
        try{
            stm = (PreparedStatement) Conexao.conectar().prepareStatement("INSERT INTO deptos ("
                    + "iddeptos,"
                    + "departamento,"
                    + "codigo,"
                    + "auditoria,"
                    + "obs) VALUES"
                    + "(?,?,?,?,?)");
            stm.setInt(1, grupo.getIddeptos());
            stm.setString(2, grupo.getDepartamento());
            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 altDptoDpto (deptosGS grupo){
        boolean testa = false;
        try{
            stm = (PreparedStatement) Conexao.conectar().prepareStatement("update deptos set "
                    + "departamento=? "
                    + "where iddeptos=?");
            stm.setString(1, grupo.getDepartamento());
            stm.setInt(2, grupo.getIddeptos());

            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 altDptoCod (deptosGS grupo){
        boolean testa = false;
        try{
            stm = (PreparedStatement) Conexao.conectar().prepareStatement("update deptos set "
                    + "codigo=? "
                    + "where iddeptos=?");
            stm.setString(1, grupo.getCodigo());
            stm.setInt(2, grupo.getIddeptos());

            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 altDptoAud (deptosGS grupo){
        boolean testa = false;
        try{
            stm = (PreparedStatement) Conexao.conectar().prepareStatement("update deptos set "
                    + "auditoria=? "
                    + "where iddeptos=?");
            stm.setString(1, grupo.getAuditoria());
            stm.setInt(2, grupo.getIddeptos());

            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 altDptoObs (deptosGS grupo){
        boolean testa = false;
        try{
            stm = (PreparedStatement) Conexao.conectar().prepareStatement("update deptos set "
                    + "obs=? "
                    + "where iddeptos=?");
            stm.setString(1, grupo.getObs());
            stm.setInt(2, grupo.getIddeptos());

            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 excluiDpto (deptosGS grupo){
        boolean testa = false;
        try {
            stm = (PreparedStatement) Conexao.conectar().prepareStatement("delete from deptos "
                    + "where iddeptos = ?");
            stm.setInt(1, grupo.getIddeptos());
            int executeUpdate = stm.executeUpdate();

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

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

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

    public void listaDpto(){
        try{
            stmt = (Statement) Conexao.conectar().createStatement();
            rs = stmt.executeQuery("select * from deptos order by departamento");
        }catch(Exception e){
            e.printStackTrace();
        }
    }

    public ResultSet getResultado(){
        return rs;
    }
        
}
