/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package pe.siso.horario.MySqlDAO;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import pe.siso.horario.Beans.UsuarioDocente;
import pe.siso.horario.DAO.UsuarioDocenteDAO;

/**
 *
 * @author sistem16user
 */
public class MySqlUsuarioDocenteDAO implements UsuarioDocenteDAO {

    @Override
    public int validarUsuarioDocente(String codigoDocenteUsuario) throws Exception {
        int dato = 0;
        String base = "sacoolive3";
        Connection cnx = null;
        try {
            cnx = MySqlDAOFactory.obtenerConexion(base);
            Statement st = cnx.createStatement();

            String query = "SELECT COUNT(codprofesor) as cant from profesor WHERE idprofesor='" + codigoDocenteUsuario + "' and estadoprofe='Y'";
            System.out.println("" + query);
            ResultSet rs = st.executeQuery(query);

            while (rs.next()) {
                dato = rs.getInt("cant");
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            cnx.close();
        }
        return dato;
    }

    @Override
    public UsuarioDocente consultarCodigoID(String codigoDocenteUsuario) throws Exception {
        String base = "sacoolive3";

        UsuarioDocente usuario = new UsuarioDocente();
        Connection cnx = null;
        try {
            cnx = MySqlDAOFactory.obtenerConexion(base);
            Statement st = cnx.createStatement();
            String query = "SELECT nombre,apellido,codprofesor,idprofesor from profesor WHERE idprofesor='" + codigoDocenteUsuario + "' AND estadoprofe='Y'";
            System.out.println("" + query);
            ResultSet rs = st.executeQuery(query);
            while (rs.next()) {
                usuario.setCodigoDocenteUsuario(rs.getString("idprofesor"));
                usuario.setCodigoDocente(rs.getString("codprofesor"));
                usuario.setNombreDocente(rs.getString("nombre"));
                usuario.setApellidoDocente(rs.getString("apellido"));
                usuario.setCodigoTipoUsuario("4");
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            cnx.close();
        }
        return usuario;
    }

    @Override
    public int validarUsuarioDocenteDni(String dniDocente) throws Exception {
        int dato = 0;
        String base = "sacoolive3";
        Connection cnx = null;
        try {
            cnx = MySqlDAOFactory.obtenerConexion(base);
            Statement st = cnx.createStatement();

            String query = "SELECT COUNT(codprofesor) as cant from profesor WHERE dni='" + dniDocente + "' and estadoprofe='Y'";
            System.out.println("validarUsuarioDocenteDni " + query);
            ResultSet rs = st.executeQuery(query);

            while (rs.next()) {
                dato = rs.getInt("cant");
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            cnx.close();
        }
        return dato;
    }

    @Override
    public UsuarioDocente consultarCodigoIDporDni(String dniDocente) throws Exception {
        String base = "sacoolive3";

        UsuarioDocente usuario = new UsuarioDocente();
        Connection cnx = null;
        try {
            cnx = MySqlDAOFactory.obtenerConexion(base);
            Statement st = cnx.createStatement();
            String query = "SELECT nombre,apellido,codprofesor,idprofesor,dni from profesor WHERE dni='" + dniDocente + "' AND estadoprofe='Y'";
            System.out.println("" + query);
            ResultSet rs = st.executeQuery(query);
            while (rs.next()) {
                usuario.setCodigoDocenteUsuario(rs.getString("idprofesor"));
                usuario.setCodigoDocente(rs.getString("codprofesor"));
                usuario.setNombreDocente(rs.getString("nombre"));
                usuario.setApellidoDocente(rs.getString("apellido"));
                usuario.setDni(rs.getString("dni"));
                usuario.setCodigoTipoUsuario("4");
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            cnx.close();
        }
        return usuario;
    }

}
