mx.avanti.siract.integration.persistence.reportesDAOJesus.java Source code

Java tutorial

Introduction

Here is the source code for mx.avanti.siract.integration.persistence.reportesDAOJesus.java

Source

/*
 * 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 mx.avanti.siract.integration.persistence;

import java.util.Date;
import java.util.List;
import mx.avanti.common.integration.persistence.HibernateUtil;
import mx.avanti.siract.business.entity.Areaconocimiento;
import mx.avanti.siract.business.entity.Calendarioreporte;
import mx.avanti.siract.business.entity.Configuracion;
import mx.avanti.siract.business.entity.Planestudio;
import mx.avanti.siract.business.entity.Programaeducativo;
import mx.avanti.siract.business.entity.Reporteavancecontenidotematico;
import mx.avanti.siract.business.entity.Unidadaprendizaje;
import org.hibernate.Criteria;
import org.hibernate.Session;
import org.hibernate.criterion.Restrictions;

/**
 *
 * @author Ricardo
 */
public class reportesDAOJesus {
    Session session;
    Criteria criteria;

    public void initSession() {
        session = HibernateUtil.getSessionFactory().openSession();
    }

    public void initCriteria() {
        criteria = session.createCriteria(Reporteavancecontenidotematico.class, "reporteavancecontenidotematico");
        criteria.createAlias("reporteavancecontenidotematico.unidadaprendizajeImparteProfesor",
                "unidadaprendizajeImparteProfesor");
        criteria.createAlias("unidadaprendizajeImparteProfesor.unidadaprendizaje", "unidadaprendizaje");
        criteria.createAlias("unidadaprendizajeImparteProfesor.profesor", "profesor");
        criteria.createAlias("unidadaprendizajeImparteProfesor.grupo", "grupo");
        criteria.createAlias("grupo.planestudio", "planestudio");
        criteria.createAlias("unidadaprendizaje.cicloescolar", "cicloescolar");
        criteria.createAlias("unidadaprendizaje.areaconocimiento", "areaconocimiento");
        criteria.createAlias("areaconocimiento.planestudio", "planestudio2");
        criteria.createAlias("planestudio.programaeducativo", "programaeducativo");
        criteria.createAlias("programaeducativo.unidadacademica", "unidadacademica");
    }

    public List findFromWhere(String de, String campo, String criterio) {
        List result = null;
        HibernateUtil.getSession();
        HibernateUtil.beingTransaccion();
        try {
            result = (List) HibernateUtil.getSession()
                    .createQuery("select u from Unidadaprendizaje u join u.areaconocimiento a").list();
            if (result == null) {
                System.out.println("nulo");
            }
        } catch (Exception x) {
            x.printStackTrace();
            HibernateUtil.rollbackTransaction();
        } finally {
            HibernateUtil.closeSession();
        }
        return result;
    }

    public List findByCriteria(String op, String tipo, int calnumeroReporte, int numRact, String cescicloEscolar,
            int acoclave, int clavepe, String pesvigencia, int numProfUIPid, Date fecha1, int pronumeroEmpleado,
            int gponumero, int clave, int uapclave, int uacclave) {
        List listaUAp = null;
        initSession();
        initCriteria();
        //--------------------------Entregados y no entregados general--------------------------------//
        if (op.equals("EntregadosYNo")) {
            if (tipo.equalsIgnoreCase("Enviado")) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
            }
            if (tipo.equalsIgnoreCase("Parcial")) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
            }
            if (uacclave == 0) {

            } else {
                criteria.add(Restrictions.eq("unidadacademica.uacclave", uacclave));
            }
            if (clavepe == 0) {

            } else {
                criteria.add(Restrictions.eq("programaeducativo.pedclave", clavepe));
            }
            listaUAp = criteria.list();
        }
        //-----------------------Calendario de reportes----------------------------------------------//
        if (op.equals("CalendReport")) {
            criteria = session.createCriteria(Calendarioreporte.class, "calendarioreporte");
            listaUAp = criteria.list();
        }
        //------------------------Area con todos------------------------------------------------------//
        if (op.equals("AreaConTodos")) {
            criteria = session.createCriteria(Areaconocimiento.class, "areaconocimiento");
            criteria.createAlias("areaconocimiento.planestudio", "planestudio");
            criteria.createAlias("planestudio.programaeducativo", "programaeducativo");
            listaUAp = criteria.list();
        }
        //------------------------ConfigSet-----------------------------------------------------------//
        if (op.equals("ConfigSet")) {
            criteria = session.createCriteria(Configuracion.class, "configuracion");
            criteria.createAlias("configuracion.cicloescolar", "cicloescolar");//Inner Join by default
            criteria.createAlias("configuracion.alerta", "alerta");//Inner Join by default
            criteria.createAlias("configuracion.calendarioreportes", "calendarioreportes");//Inner Join by default
            criteria.createAlias("alerta.calendarioreporteTieneAlertas", "calendarioreporteTieneAlerta");//Inner Join by default
            criteria.add(Restrictions.eq("calendarioreporteTieneAlerta.calnumeroReporte", calnumeroReporte));
            listaUAp = criteria.list();
        }
        //----------------------CompararAreaCon------------------------------------------------------//
        if (op.equals("CompararAreaCon")) {
            if (tipo.equalsIgnoreCase("ATiempo") || tipo.equalsIgnoreCase("FueraTiempo")) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
            }
            if (tipo.equalsIgnoreCase("Parcial")) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
            }
            if (tipo.equalsIgnoreCase("ATiempo")) {
                criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", fecha1));
            }
            if (tipo.equalsIgnoreCase("FueraTiempo")) {
                criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", fecha1));
            }
            criteria.add(Restrictions.eq("programaeducativo.pedclave", clavepe));
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", pesvigencia));
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", cescicloEscolar));
            criteria.add(Restrictions.eq("areaconocimiento.acoclave", acoclave));
            if (numRact == 1) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
            }
            if (numRact == 2) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
            }
            if (numRact == 3) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
            }
            if (numProfUIPid == 0) {
            } else {
                criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", numProfUIPid));
            }
            listaUAp = criteria.list();
        }
        //-----------------------------ProgEducatTodos------------------------------------------------//
        if (op.equals("ProgEducatTodos")) {
            criteria = session.createCriteria(Planestudio.class, "planestudio");
            criteria.createAlias("planestudio.programaeducativo", "programaeducativo");//Inner Join by default
            listaUAp = criteria.list();
        }
        //-----------------------------PAGC------------------------------------------------//
        if (op.equals("PAGC")) {
            criteria = session.createCriteria(Unidadaprendizaje.class, "unidadaprendizaje");
            criteria.createAlias("unidadaprendizaje.cicloescolar", "cicloescolar");//Inner Join by default
            criteria.createAlias("unidadaprendizaje.areaconocimiento", "areaconocimiento");//Inner Join by default
            criteria.createAlias("areaconocimiento.planestudio", "planestudio");//Inner Join by default     
            criteria.createAlias("planestudio.programaeducativo", "programaeducativo");//Inner Join by default         
            criteria.createAlias("programaeducativo.unidadacademica", "unidadacademica");//Inner Join by default         

            listaUAp = criteria.list();
        }
        //-----------------------------CompararProfGrupo----------------------------------------------//
        if (op.equals("CompararProfGrupo")) {
            if (tipo.equalsIgnoreCase("ATiempo") || tipo.equalsIgnoreCase("FueraTiempo")) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
            }
            if (tipo.equalsIgnoreCase("Parcial")) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
            }
            if (tipo.equalsIgnoreCase("ATiempo")) {
                criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", fecha1));
            }
            if (tipo.equalsIgnoreCase("FueraTiempo")) {
                criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", fecha1));
            }
            criteria.add(Restrictions.eq("programaeducativo.pedclave", clavepe));
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", pesvigencia));
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", cescicloEscolar));
            criteria.add(Restrictions.eq("areaconocimiento.acoclave", acoclave));
            criteria.add(Restrictions.eq("profesor.pronumeroEmpleado", pronumeroEmpleado));
            criteria.add(Restrictions.eq("grupo.gponumero", gponumero));
            if (numRact == 1) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
            }
            if (numRact == 2) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
            }
            if (numRact == 3) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
            }
            if (numProfUIPid == 0) {
            } else {
                criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", numProfUIPid));
            }
            listaUAp = criteria.list();
        }
        //------------------------------------CompararProgramaEducativo------------------------------------------//
        if (op.equals("CompararProgEduc")) {
            if (tipo.equalsIgnoreCase("ATiempo") || tipo.equalsIgnoreCase("FueraTiempo")) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
            }
            if (tipo.equalsIgnoreCase("Parcial")) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
            }
            if (tipo.equalsIgnoreCase("ATiempo")) {
                criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", fecha1));
            }
            if (tipo.equalsIgnoreCase("FueraTiempo")) {
                criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", fecha1));
            }
            criteria.add(Restrictions.eq("programaeducativo.pedclave", clave));
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", pesvigencia));
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", cescicloEscolar));
            if (numRact == 1) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
            }
            if (numRact == 2) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
            }
            if (numRact == 3) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
            }
            if (numProfUIPid == 0) {
            } else {
                criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", numProfUIPid));
            }
            listaUAp = criteria.list();
        }
        //------------------------------------PorcentAvanceSolo------------------------------------------//
        if (op.equals("PorcentAvanceSolo")) {
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
            if (tipo.equalsIgnoreCase("ATiempo")) {
                criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", fecha1));
            }
            if (tipo.equalsIgnoreCase("FueraTiempo")) {
                criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", fecha1));
            }
            criteria.add(Restrictions.eq("programaeducativo.pedclave", clave));
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", pesvigencia));
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", cescicloEscolar));
            if (numRact == 1) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
            }
            if (numRact == 2) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
            }
            if (numRact == 3) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
            }
            if (numProfUIPid == 0) {
            } else {
                criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", numProfUIPid));
            }
            listaUAp = criteria.list();
        }
        //------------------------------------CompararUAGrupo------------------------------------------//      
        if (op.equals("CompararUAGrupo")) {
            if (tipo.equalsIgnoreCase("ATiempo") || tipo.equalsIgnoreCase("FueraTiempo")) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
            }
            if (tipo.equalsIgnoreCase("Parcial")) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
            }
            if (tipo.equalsIgnoreCase("ATiempo")) {
                criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", fecha1));
            }
            if (tipo.equalsIgnoreCase("FueraTiempo")) {
                criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", fecha1));
            }
            criteria.add(Restrictions.eq("programaeducativo.pedclave", clavepe));
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", pesvigencia));
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", cescicloEscolar));
            criteria.add(Restrictions.eq("areaconocimiento.acoclave", acoclave));
            criteria.add(Restrictions.eq("unidadaprendizaje.uapclave", uapclave));
            criteria.add(Restrictions.eq("grupo.gponumero", gponumero));
            if (numRact == 1) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
            }
            if (numRact == 2) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
            }
            if (numRact == 3) {
                criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
            }
            if (numProfUIPid == 0) {
            } else {
                criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", numProfUIPid));
            }
            listaUAp = criteria.list();
        }
        session.close();
        return listaUAp;
    }

    public List findByCriteriaDetalladoProgEdUnidadAcademica(int uacclave) {
        initSession();
        Criteria criteria = session.createCriteria(Programaeducativo.class, "programaeducativo");
        criteria.createAlias("programaeducativo.unidadacademica", "unidadacademica");
        if (uacclave != 0) {
            criteria.add(Restrictions.eq("unidadacademica.uacclave", uacclave));
        }
        List listaUAp = criteria.list();
        session.close();
        return listaUAp;
    }
}