/*
 * 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.Services;

import java.util.ArrayList;
import pe.siso.horario.Beans.Nivel;
import pe.siso.horario.DAO.DAOFactory;
import pe.siso.horario.DAO.NivelDAO;

/**
 *
 * @author fcelestino
 */
public class NivelServices {
    DAOFactory fabrica = DAOFactory.getDAOFactory(DAOFactory.MYSQL);
    NivelDAO objNivelDAO= fabrica.getNivelDAO();
    
    public ArrayList<Nivel> listarNivel(){
        ArrayList<Nivel> lista=null;
        try {
            lista=objNivelDAO.listarNivel();
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return lista;
    }
    
    public ArrayList<Nivel> listarNivel(String codigoTipoCentro,String codigoCentro){
        ArrayList<Nivel> lista=null;
        try {
            lista=objNivelDAO.listarNivel(codigoTipoCentro, codigoCentro);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return lista;
    }
    public ArrayList<Nivel> listarNivel(String codigoTipoCentro){
        ArrayList<Nivel> lista=null;
        try {
            lista=objNivelDAO.listarNivel(codigoTipoCentro);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return lista;
    }
    
    public void registrarNivel(String codigoCentro,String nombreNivel){
        try {
            objNivelDAO.registrarNivel(codigoCentro, nombreNivel);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    
    public void cambiarEstado(String dato, String codigoNivel){
        try {
            objNivelDAO.cambiarEstado(dato, codigoNivel);
                    
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    
    public ArrayList<Nivel> cargarNivel(String codigoCentro){
        ArrayList<Nivel> lista=null;
        try {
            lista=objNivelDAO.cargarNivel(codigoCentro);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return lista;
    }
     public ArrayList<Nivel> cargarNivelSec(String codigoCentro){
        ArrayList<Nivel> lista=null;
        try {
            lista=objNivelDAO.cargarNivelSec(codigoCentro);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return lista;
    }
    
    public ArrayList<Nivel> cargarNivel(String codigoSede, String codigoTipoCentro, String codigoCentro){
        ArrayList<Nivel> lista=null;
        try {
            lista=objNivelDAO.cargarNivel(codigoSede, codigoTipoCentro, codigoCentro);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return lista;
    }
    
    public ArrayList<Nivel> cargatNivelDocente(){
        ArrayList<Nivel> lista=null;
        try {
            lista=objNivelDAO.cargatNivelDocente();
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return lista;
    }
    
    
    public ArrayList<Nivel> cargatNivel(){
        ArrayList<Nivel> lista=null;
        try {
            lista=objNivelDAO.cargatNivel();
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return lista;
    }
    public Nivel nombreNivel(String CodNivel){
       Nivel nivel= new Nivel();
                
        try {
           nivel= objNivelDAO.nombreNivel(CodNivel);
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return nivel;
    }
    
    public void actualizar(String codNivel, String nombre){
        try {
            objNivelDAO.actualizar(codNivel, nombre);
                    
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
    public int cantidadUsoNivel(String codNivel){
       int dato=0;
        try {
            dato=objNivelDAO.cantidadUsoNivel(codNivel);
                    
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return dato;
    }
    
}
