Example usage for org.hibernate.criterion Restrictions gt

List of usage examples for org.hibernate.criterion Restrictions gt

Introduction

In this page you can find the example usage for org.hibernate.criterion Restrictions gt.

Prototype

public static SimpleExpression gt(String propertyName, Object value) 

Source Link

Document

Apply a "greater than" constraint to the named property

Usage

From source file:moos.ssds.dao.DataProducerDAO.java

License:LGPL

/**
 * TODO kgomes document this//from w ww  . j av a 2 s  . c o  m
 * 
 * @param countQuery
 * @param id
 * @param name
 * @param exactNameMatch
 * @param dataProducerType
 * @param startDate
 * @param boundedByStartDate
 * @param endDate
 * @param boundedByEndDate
 * @param geospatialLatMin
 * @param geospatialLatMax
 * @param geospatialLonMin
 * @param geospatialLonMax
 * @param geospatialDepthMin
 * @param geospatialDepthMax
 * @param geospatialBenthicAltitudeMin
 * @param geospatialBenthicAltitudeMax
 * @param hostName
 * @param exactHostNameMatch
 * @param orderByProperty
 * @param ascendOrDescend
 * @return
 * @throws MetadataAccessException
 */
private Criteria formulatePropertyCriteria(boolean countQuery, Long id, String name, boolean exactNameMatch,
        String dataProducerType, Date startDate, boolean boundedByStartDate, Date endDate,
        boolean boundedByEndDate, Double geospatialLatMin, Double geospatialLatMax, Double geospatialLonMin,
        Double geospatialLonMax, Float geospatialDepthMin, Float geospatialDepthMax,
        Float geospatialBenthicAltitudeMin, Float geospatialBenthicAltitudeMax, String hostName,
        boolean exactHostNameMatch, String orderByProperty, String ascendOrDescend)
        throws MetadataAccessException {
    // The Criteria to return
    Criteria criteria = getSession().createCriteria(DataProducer.class);
    // Make it distinct
    criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);

    // Check for exceptional conditions on the query
    if ((dataProducerType != null) && (!DataProducer.isValidDataProducerType(dataProducerType)))
        throw new MetadataAccessException("The dataProducerType (" + dataProducerType
                + ") does not match a constant defined in the DataProducer class");
    if ((geospatialLatMin != null) && (geospatialLatMax != null))
        if (geospatialLatMax.doubleValue() < geospatialLatMin.doubleValue())
            throw new MetadataAccessException("The maximum latitude specified was less than the minimum.");
    if ((geospatialLonMin != null) && (geospatialLonMax != null))
        if (geospatialLonMax.doubleValue() < geospatialLonMin.doubleValue())
            throw new MetadataAccessException("The maximum longitude specified was less than the minimum.");
    if ((geospatialDepthMin != null) && (geospatialDepthMax != null))
        if (geospatialDepthMax.doubleValue() < geospatialDepthMin.doubleValue())
            throw new MetadataAccessException("The depth maximum specified was less than the minimum.");
    if ((geospatialBenthicAltitudeMin != null) && (geospatialBenthicAltitudeMax != null))
        if (geospatialBenthicAltitudeMax.doubleValue() < geospatialBenthicAltitudeMin.doubleValue())
            throw new MetadataAccessException(
                    "The benthic altitude maximum specified was less than the minimum.");
    if ((startDate != null) && (endDate != null) && (endDate.before(startDate)))
        throw new MetadataAccessException("The end date specified (" + endDate
                + ") is before the start date specified (" + startDate + ")");

    // Now build the Criteria
    if (id != null) {
        criteria.add(Restrictions.eq("id", id));
    } else {
        if ((name != null) && (!name.equals(""))) {
            if (exactNameMatch) {
                criteria.add(Restrictions.eq("name", name));
            } else {
                criteria.add(Restrictions.like("name", "%" + name + "%"));
            }
        }
        if (dataProducerType != null) {
            criteria.add(Restrictions.eq("dataProducerType", dataProducerType));
        }
        if (startDate != null) {
            criteria.add(
                    Restrictions.or(Restrictions.gt("endDate", startDate), Restrictions.isNull("endDate")));
            if (boundedByStartDate) {
                criteria.add(Restrictions.gt("startDate", startDate));
            }
        }
        if (endDate != null) {
            criteria.add(
                    Restrictions.or(Restrictions.lt("startDate", endDate), Restrictions.isNull("startDate")));
            if (boundedByEndDate) {
                criteria.add(Restrictions.lt("endDate", endDate));
            }
        }
        if (geospatialLatMin != null)
            criteria.add(Restrictions.ge("nominalLatitude", geospatialLatMin));

        if (geospatialLatMax != null)
            criteria.add(Restrictions.le("nominalLatitude", geospatialLatMax));

        if (geospatialLonMin != null)
            criteria.add(Restrictions.ge("nominalLongitude", geospatialLonMin));

        if (geospatialLonMax != null)
            criteria.add(Restrictions.le("nominalLongitude", geospatialLonMax));

        if (geospatialDepthMin != null)
            criteria.add(Restrictions.le("nominalDepth", geospatialDepthMin));

        if (geospatialDepthMax != null)
            criteria.add(Restrictions.ge("nominalDepth", geospatialDepthMax));

        if (geospatialBenthicAltitudeMin != null)
            criteria.add(Restrictions.ge("benthicAltitude", geospatialBenthicAltitudeMin));

        if (geospatialBenthicAltitudeMax != null)
            criteria.add(Restrictions.lt("benthicAltitude", geospatialBenthicAltitudeMax));
        if ((hostName != null) && (!hostName.equals(""))) {
            if (exactHostNameMatch) {
                criteria.add(Restrictions.eq("hostName", hostName));
            } else {
                criteria.add(Restrictions.like("hostName", "%" + hostName + "%"));
            }
        }
    }
    // Setup if a count query, if not add fetching and ordering
    if (countQuery) {
        criteria.setProjection(Projections.rowCount());
    } else {
        addOrderByCriteria(criteria, orderByProperty, ascendOrDescend);
    }
    // Now return the Criteria
    return criteria;
}

From source file:moos.ssds.dao.EventDAO.java

License:LGPL

/**
 * /*ww  w  .  j a v  a2s .  c om*/
 * @param countQuery
 * @param id
 * @param name
 * @param exactNameMatch
 * @param startDate
 * @param boundedByStartDate
 * @param endDate
 * @param boundedByEndDate
 * @param orderByProperty
 * @param ascendOrDescend
 * @return
 * @throws MetadataAccessException
 */
private Criteria formulatePropertyCriteria(boolean countQuery, Long id, String name, boolean exactNameMatch,
        Date startDate, boolean boundedByStartDate, Date endDate, boolean boundedByEndDate,
        String orderByProperty, String ascendOrDescend) throws MetadataAccessException {

    // The Criteria to return
    Criteria criteria = getSession().createCriteria(Event.class);

    // Make it distinct
    criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);

    // Check for exceptional conditions on the query
    if ((startDate != null) && (endDate != null) && (endDate.before(startDate)))
        throw new MetadataAccessException("The end date specified (" + endDate
                + ") is before the start date specified (" + startDate + ")");

    // Now build the Criteria
    if (id != null) {
        criteria.add(Restrictions.eq("id", id));
    } else {
        if ((name != null) && (!name.equals(""))) {
            if (exactNameMatch) {
                criteria.add(Restrictions.eq("name", name));
            } else {
                criteria.add(Restrictions.like("name", "%" + name + "%"));
            }
        }
        if (startDate != null) {
            criteria.add(
                    Restrictions.or(Restrictions.gt("endDate", startDate), Restrictions.isNull("endDate")));
            if (boundedByStartDate) {
                criteria.add(Restrictions.gt("startDate", startDate));
            }
        }
        if (endDate != null) {
            criteria.add(
                    Restrictions.or(Restrictions.lt("startDate", endDate), Restrictions.isNull("startDate")));
            if (boundedByEndDate) {
                criteria.add(Restrictions.lt("endDate", endDate));
            }
        }
    }

    // Setup if a count query, if not add fetching and ordering
    if (countQuery) {
        criteria.setProjection(Projections.rowCount());
    } else {
        addOrderByCriteria(criteria, orderByProperty, ascendOrDescend);
    }

    // Now return the Criteria
    return criteria;
}

From source file:mx.avanti.siract.integration.persistence.reportesDAO.java

public List findByCriteria4(ReporteAux reporte) {
    List listaUAp = null;/*ww w . ja  v  a  2s.  co  m*/
    initSession();
    initCriteria4();
    //--------------------------Entregados y no entregados general--------------------------------//
    //parte del metodo que busca los entregados y no entrados en cada caso//
    if (reporte.op.equals("EntregadosYNo")) {
        if (reporte.tipo.equalsIgnoreCase("Enviado")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        }
        if (reporte.tipo.equalsIgnoreCase("Parcial")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("EnviadoYParcial")) {
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        //los siguientes condiciones con atributos sirven para filtrar con la
        //restriccin si es cero o nulo lo ignora si no busca agregar la restriccin
        //indicada para el filtro correspondiente o que correspondan los resultados
        //al atributo o valor indicado como restriccin o igualdad de la consulta 
        if (reporte.uacclave == 0) {

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

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clavepe));
        }
        listaUAp = criteria.list();
    }
    //-----------------------Calendario de reportes----------------------------------------------//
    if (reporte.op.equals("CalendReport")) {
        criteria = session.createCriteria(Calendarioreporte.class, "calendarioreporte");
        listaUAp = criteria.list();
    }
    //-----------------------Calendario de reporte tiene alerta----------------------------------------------//
    if (reporte.op.equals("CalendReportTieneAlerta")) {
        criteria = session.createCriteria(CalendarioreporteTieneAlerta.class, "calendarioreportetienealerta");
        criteria.createAlias("calendarioreportetienealerta.calendarioreporte", "calendarioreporte");
        if (reporte.creid == 0) {

        } else {
            criteria.add(Restrictions.eq("calendarioreporte.creid", reporte.creid));
        }
        if (reporte.calnumeroReporte == 0) {

        } else {
            criteria.add(
                    Restrictions.eq("calendarioreportetienealerta.calnumeroReporte", reporte.calnumeroReporte));
        }
        listaUAp = criteria.list();
    }
    //------------------------Area con todos------------------------------------------------------//
    if (reporte.op.equals("AreaConTodos")) {
        criteria = session.createCriteria(Areaconocimiento.class, "areaconocimiento");
        criteria.createAlias("areaconocimiento.planestudio", "planestudio");
        criteria.createAlias("planestudio.programaeducativo", "programaeducativo");
        if (reporte.clavepe == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clavepe));
        }
        listaUAp = criteria.list();
    }
    //------------------------ConfiguracionTodos------------------------------------------------------//
    if (reporte.op.equals("ConfiguracionTodos")) {
        criteria = session.createCriteria(Configuracion.class, "configuracion");
        criteria.createAlias("configuracion.alerta", "alerta");
        criteria.createAlias("configuracion.cicloescolar", "cicloescolar");

        listaUAp = criteria.list();
    }
    //------------------------CalendarioReporteTieneAlerta------------------------------------------------------//
    if (reporte.op.equals("CalendarioReporteTieneAlertaTodos")) {
        criteria = session.createCriteria(CalendarioreporteTieneAlerta.class, "calendarioreportetienealerta");
        criteria.createAlias("calendarioreportetienealerta.calendarioreporte", "calendarioreporte");
        criteria.createAlias("calendarioreportetienealerta.alerta", "alerta");

        listaUAp = criteria.list();
    }
    //--------------------Enviados y parciales-----------------------------------------------------------------------------//
    if (reporte.op.equals("EnviadosYParciales")) {
        criteria = session.createCriteria(Reporteavancecontenidotematico.class,
                "reporteavancecontenidotematico");
        //criteria.createAlias("reporte.reporteavancecontenidotematico", "reporteavancecontenidotematico");//Inner Join by default
        //criteria.createAlias("reporteavancecontenidotematico.unidadaprendizajeImparteProfesor", "unidadaprendizajeImparteProfesor",JoinType.RIGHT_OUTER_JOIN);//Inner Join by default
        criteria.createAlias("reporteavancecontenidotematico.unidadaprendizajeImparteProfesor",
                "unidadaprendizajeImparteProfesor");//Inner Join by default
        criteria.createAlias("unidadaprendizajeImparteProfesor.unidadaprendizaje", "unidadaprendizaje");//Inner Join by default
        criteria.createAlias("unidadaprendizajeImparteProfesor.profesor", "profesor");//Inner Join by default                        
        //criteria.setFetchMode("programaeducativo.profesors", FetchMode.JOIN);
        criteria.createAlias("unidadaprendizajeImparteProfesor.grupo", "grupo");//Inner Join by default
        criteria.createAlias("grupo.planestudio", "planestudio");//Inner Join by default
        criteria.createAlias("unidadaprendizaje.cicloescolar", "cicloescolar");//Inner Join by default
        //            criteria.createAlias("unidadaprendizaje.areaconocimiento", "areaconocimiento");//Inner Join by default
        //            //criteria.setMaxResults(10);
        //            criteria.createAlias("areaconocimiento.planestudio", "planestudio2");//Inner Join by default     
        criteria.createAlias("planestudio.programaeducativo", "programaeducativo");//Inner Join by default        

        //criteria.setResultTransformer(DistinctRootEntityResultTransformer.INSTANCE);
        //      criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        //criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", UIPid));      

        //criteria.add(Restrictions);
        if (reporte.clave == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clave));
        }
        //            if(reporte.acoclave==0){
        //                
        //            }else{
        //            criteria.add(Restrictions.eq("areaconocimiento.acoclave",reporte.acoclave));         
        //            }
        if (reporte.uapclave == 0) {
            //
        } else {
            criteria.add(Restrictions.eq("unidadaprendizaje.uapclave", reporte.uapclave));
        }
        if (reporte.gponumero == 0) {

        } else {
            criteria.add(Restrictions.eq("grupo.gponumero", reporte.gponumero));
        }
        if (reporte.pronumeroEmpleado == 0) {

        } else {
            criteria.add(Restrictions.eq("profesor.pronumeroEmpleado", reporte.pronumeroEmpleado));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }

        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }

        if (reporte.numProfUIPid == 0) {

        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }

        listaUAp = criteria.list();

        //session.close();

        //return listaUAp;
    }
    //--------------------No entregados vacio-----------------------------------------------------------------------------//
    if (reporte.op.equals("NoEntregadoVacio")) {
        criteria = session.createCriteria(UnidadaprendizajeImparteProfesor.class,
                "unidadaprendizajeImparteProfesor");
        //criteria.createAlias("reporte.reporteavancecontenidotematico", "reporteavancecontenidotematico");//Inner Join by default
        //criteria.createAlias("reporteavancecontenidotematico.unidadaprendizajeImparteProfesor", "unidadaprendizajeImparteProfesor");//Inner Join by default
        criteria.createAlias("unidadaprendizajeImparteProfesor.unidadaprendizaje", "unidadaprendizaje");//Inner Join by default
        criteria.createAlias("unidadaprendizajeImparteProfesor.profesor", "profesor");//Inner Join by default                        
        //criteria.setFetchMode("programaeducativo.profesors", FetchMode.JOIN);
        criteria.createAlias("unidadaprendizajeImparteProfesor.grupo", "grupo");//Inner Join by default
        criteria.createAlias("grupo.planestudio", "planestudio");//Inner Join by default
        criteria.createAlias("unidadaprendizaje.cicloescolar", "cicloescolar");//Inner Join by default
        //            criteria.createAlias("unidadaprendizaje.areaconocimiento", "areaconocimiento");//Inner Join by default
        //            //criteria.setMaxResults(10);
        //            criteria.createAlias("areaconocimiento.planestudio", "planestudio2");//Inner Join by default     
        criteria.createAlias("planestudio.programaeducativo", "programaeducativo");//Inner Join by default        

        //criteria.setResultTransformer(DistinctRootEntityResultTransformer.INSTANCE);
        //      criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        //criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", UIPid));      

        //criteria.add(Restrictions);
        if (reporte.clave == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clave));
        }
        //            if(reporte.acoclave==0){
        //                
        //            }else{
        //            criteria.add(Restrictions.eq("areaconocimiento.acoclave",reporte.acoclave));         
        //            }
        if (reporte.uapclave == 0) {
            //
        } else {
            criteria.add(Restrictions.eq("unidadaprendizaje.uapclave", reporte.uapclave));
        }
        if (reporte.gponumero == 0) {

        } else {
            criteria.add(Restrictions.eq("grupo.gponumero", reporte.gponumero));
        }
        if (reporte.pronumeroEmpleado == 0) {

        } else {
            criteria.add(Restrictions.eq("profesor.pronumeroEmpleado", reporte.pronumeroEmpleado));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }

        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }

        if (reporte.numProfUIPid == 0) {

        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }

        listaUAp = criteria.list();

        //session.close();

        //return listaUAp;
    }
    //--------------------ATiempoYNo-----------------------------------------------------------------------------//
    if (reporte.op.equals("ATiempoYNo")) {
        criteria = session.createCriteria(Reporteavancecontenidotematico.class,
                "reporteavancecontenidotematico");
        //criteria.createAlias("reporte.reporteavancecontenidotematico", "reporteavancecontenidotematico");//Inner Join by default
        criteria.createAlias("reporteavancecontenidotematico.unidadaprendizajeImparteProfesor",
                "unidadaprendizajeImparteProfesor");//Inner Join by default
        criteria.createAlias("unidadaprendizajeImparteProfesor.unidadaprendizaje", "unidadaprendizaje");//Inner Join by default
        criteria.createAlias("unidadaprendizajeImparteProfesor.profesor", "profesor");//Inner Join by default                        
        //criteria.setFetchMode("programaeducativo.profesors", FetchMode.JOIN);
        criteria.createAlias("unidadaprendizajeImparteProfesor.grupo", "grupo");//Inner Join by default
        criteria.createAlias("grupo.planestudio", "planestudio");//Inner Join by default
        criteria.createAlias("unidadaprendizaje.cicloescolar", "cicloescolar");//Inner Join by default
        //            criteria.createAlias("unidadaprendizaje.areaconocimiento", "areaconocimiento");//Inner Join by default
        //            //criteria.setMaxResults(10);
        //            criteria.createAlias("areaconocimiento.planestudio", "planestudio2");//Inner Join by default     
        criteria.createAlias("planestudio.programaeducativo", "programaeducativo");//Inner Join by default        

        //criteria.setResultTransformer(DistinctRootEntityResultTransformer.INSTANCE);
        //quite la siguiente linea para que obtenga resultados de Enviados y Parciales
        //         criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        //criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", UIPid));      

        if (reporte.tipo.equalsIgnoreCase("ATiempo")) {
            criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.tipo.equalsIgnoreCase("FueraTiempo")) {
            criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.tipo.equalsIgnoreCase("EnFechaLimite")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }

        //criteria.add(Restrictions);
        if (reporte.clave == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clave));
        }
        //            if(reporte.acoclave==0){
        //                
        //            }else{
        //            criteria.add(Restrictions.eq("areaconocimiento.acoclave",reporte.acoclave));         
        //            }
        if (reporte.uapclave == 0) {
            //
        } else {
            criteria.add(Restrictions.eq("unidadaprendizaje.uapclave", reporte.uapclave));
        }
        if (reporte.gponumero == 0) {

        } else {
            criteria.add(Restrictions.eq("grupo.gponumero", reporte.gponumero));
        }
        if (reporte.pronumeroEmpleado == 0) {

        } else {
            criteria.add(Restrictions.eq("profesor.pronumeroEmpleado", reporte.pronumeroEmpleado));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }
        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }

        if (reporte.numProfUIPid == 0) {

        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }

        listaUAp = criteria.list();

        //session.close();

        //return listaUAp;
    }
    //------------------------ConfigSet-----------------------------------------------------------//
    if (reporte.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",reporte.calnumeroReporte));   
        listaUAp = criteria.list();
    }
    //----------------------CompararAreaCon------------------------------------------------------//
    if (reporte.op.equals("CompararAreaCon")) {
        if (reporte.tipo.equalsIgnoreCase("ATiempo") || reporte.tipo.equalsIgnoreCase("FueraTiempo")
                || reporte.tipo.equalsIgnoreCase("Enviado")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        }
        if (reporte.tipo.equalsIgnoreCase("Parcial")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("EnviadoYParcial")) {
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("ATiempo")) {
            criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.tipo.equalsIgnoreCase("FueraTiempo")) {
            criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.clavepe == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clavepe));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }
        //            if(reporte.acoclave == 0){
        //                
        //            }else{
        //            criteria.add(Restrictions.eq("areaconocimiento.acoclave",reporte.acoclave));
        //            }
        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }
        if (reporte.numProfUIPid == 0) {
        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }
        listaUAp = criteria.list();
    }
    //-----------------------------ProgEducatTodos------------------------------------------------//
    if (reporte.op.equals("ProgEducatTodos")) {
        criteria = session.createCriteria(Planestudio.class, "planestudio");
        criteria.createAlias("planestudio.programaeducativo", "programaeducativo");//Inner Join by default
        listaUAp = criteria.list();
    }
    //-----------------------------PAGC------------------------------------------------//
    if (reporte.op.equals("PAGC")) {
        criteria = session.createCriteria(UnidadaprendizajeImparteProfesor.class,
                "unidadaprendizajeimparteprofesor");
        criteria.createAlias("unidadaprendizajeimparteprofesor.unidadaprendizaje", "unidadaprendizaje");//Inner Join by default
        criteria.createAlias("unidadaprendizajeimparteprofesor.grupo", "grupo");//Inner Join by default
        criteria.createAlias("unidadaprendizajeimparteprofesor.profesor", "profesor");//Inner Join by default
        criteria.createAlias("grupo.planestudio", "planestudio");//Inner Join by default
        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 (reporte.op.equals("CompararProfGrupo")) {
        if (reporte.tipo.equalsIgnoreCase("ATiempo") || reporte.tipo.equalsIgnoreCase("FueraTiempo")
                || reporte.tipo.equalsIgnoreCase("Enviado")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        }
        if (reporte.tipo.equalsIgnoreCase("Parcial")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("EnviadoYParcial")) {
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("ATiempo")) {
            criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.tipo.equalsIgnoreCase("FueraTiempo")) {
            criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.clavepe == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clavepe));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }
        //            if(reporte.acoclave == 0){
        //                
        //            }else{
        //            criteria.add(Restrictions.eq("areaconocimiento.acoclave",reporte.acoclave));
        //            }
        if (reporte.uapclave == 0) {
            //
        } else {
            criteria.add(Restrictions.eq("unidadaprendizaje.uapclave", reporte.uapclave));
        }
        if (reporte.pronumeroEmpleado == 0) {

        } else {
            criteria.add(Restrictions.eq("profesor.pronumeroEmpleado", reporte.pronumeroEmpleado));
        }
        if (reporte.gponumero == 0) {

        } else {
            criteria.add(Restrictions.eq("grupo.gponumero", reporte.gponumero));
        }
        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }
        if (reporte.numProfUIPid == 0) {
        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }
        listaUAp = criteria.list();
    }
    //------------------------------------CompararProgramaEducativo------------------------------------------//
    if (reporte.op.equals("CompararProgEduc")) {
        if (reporte.tipo.equalsIgnoreCase("ATiempo") || reporte.tipo.equalsIgnoreCase("FueraTiempo")
                || reporte.tipo.equalsIgnoreCase("Enviado")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        }
        if (reporte.tipo.equalsIgnoreCase("Parcial")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("EnviadoYParcial")) {
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("ATiempo")) {
            criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.tipo.equalsIgnoreCase("FueraTiempo")) {
            criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.clavepe == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clavepe));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }
        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }
        if (reporte.numProfUIPid == 0) {
        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }
        listaUAp = criteria.list();
    }
    //------------------------------------PorcentAvanceSolo------------------------------------------//
    if (reporte.op.equals("PorcentAvanceSolo")) {
        //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        if (reporte.tipo.equalsIgnoreCase("ATiempo")) {
            criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.tipo.equalsIgnoreCase("FueraTiempo")) {
            criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.clave == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clave));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }
        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }
        if (reporte.numProfUIPid == 0) {
        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }
        listaUAp = criteria.list();
    }
    //------------------------------------CompararUAGrupo------------------------------------------//      
    if (reporte.op.equals("CompararUAGrupo")) {
        if (reporte.tipo.equalsIgnoreCase("ATiempo") || reporte.tipo.equalsIgnoreCase("FueraTiempo")
                || reporte.tipo.equalsIgnoreCase("Enviado")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        }
        if (reporte.tipo.equalsIgnoreCase("Parcial")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("EnviadoYParcial")) {
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("ATiempo")) {
            criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.tipo.equalsIgnoreCase("FueraTiempo")) {
            criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.clavepe == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clavepe));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }
        //            if(reporte.acoclave == 0){
        //                
        //            }else{
        //            criteria.add(Restrictions.eq("areaconocimiento.acoclave",reporte.acoclave));
        //            }
        if (reporte.uapclave == 0) {
            //
        } else {
            criteria.add(Restrictions.eq("unidadaprendizaje.uapclave", reporte.uapclave));
        }
        if (reporte.gponumero == 0) {

        } else {
            criteria.add(Restrictions.eq("grupo.gponumero", reporte.gponumero));
        }
        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }
        if (reporte.numProfUIPid == 0) {
        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }
        listaUAp = criteria.list();
    }
    session.close();
    return listaUAp;
}

From source file:mx.avanti.siract.integration.persistence.reportesDAO.java

public List findByCriteria(ReporteAux reporte) {
    List listaUAp = null;/*  www .jav  a 2  s.c o m*/
    initSession();
    initCriteria();
    //--------------------------Entregados y no entregados general--------------------------------//
    //parte del metodo que busca los entregados y no entrados en cada caso//
    if (reporte.op.equals("EntregadosYNo")) {
        if (reporte.tipo.equalsIgnoreCase("Enviado")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        }
        if (reporte.tipo.equalsIgnoreCase("Parcial")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("EnviadoYParcial")) {
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        //los siguientes condiciones con atributos sirven para filtrar con la
        //restriccin si es cero o nulo lo ignora si no busca agregar la restriccin
        //indicada para el filtro correspondiente o que correspondan los resultados
        //al atributo o valor indicado como restriccin o igualdad de la consulta 
        if (reporte.uacclave == 0) {

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

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clavepe));
        }
        listaUAp = criteria.list();
    }
    //-----------------------Calendario de reportes----------------------------------------------//
    if (reporte.op.equals("CalendReport")) {
        criteria = session.createCriteria(Calendarioreporte.class, "calendarioreporte");
        listaUAp = criteria.list();
    }
    //-----------------------Calendario de reporte tiene alerta----------------------------------------------//
    if (reporte.op.equals("CalendReportTieneAlerta")) {
        criteria = session.createCriteria(CalendarioreporteTieneAlerta.class, "calendarioreportetienealerta");
        criteria.createAlias("calendarioreportetienealerta.calendarioreporte", "calendarioreporte");
        if (reporte.creid == 0) {

        } else {
            criteria.add(Restrictions.eq("calendarioreporte.creid", reporte.creid));
        }
        if (reporte.calnumeroReporte == 0) {

        } else {
            criteria.add(
                    Restrictions.eq("calendarioreportetienealerta.calnumeroReporte", reporte.calnumeroReporte));
        }
        listaUAp = criteria.list();
    }
    //------------------------Area con todos------------------------------------------------------//
    if (reporte.op.equals("AreaConTodos")) {
        criteria = session.createCriteria(Areaconocimiento.class, "areaconocimiento");
        criteria.createAlias("areaconocimiento.planestudio", "planestudio");
        criteria.createAlias("planestudio.programaeducativo", "programaeducativo");
        if (reporte.clavepe == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clavepe));
        }
        listaUAp = criteria.list();
    }
    //------------------------ConfiguracionTodos------------------------------------------------------//
    if (reporte.op.equals("ConfiguracionTodos")) {
        criteria = session.createCriteria(Configuracion.class, "configuracion");
        criteria.createAlias("configuracion.alerta", "alerta");
        criteria.createAlias("configuracion.cicloescolar", "cicloescolar");

        listaUAp = criteria.list();
    }
    //------------------------CalendarioReporteTieneAlerta------------------------------------------------------//
    if (reporte.op.equals("CalendarioReporteTieneAlertaTodos")) {
        criteria = session.createCriteria(CalendarioreporteTieneAlerta.class, "calendarioreportetienealerta");
        criteria.createAlias("calendarioreportetienealerta.calendarioreporte", "calendarioreporte");
        criteria.createAlias("calendarioreportetienealerta.alerta", "alerta");

        listaUAp = criteria.list();
    }
    //--------------------Enviados y parciales-----------------------------------------------------------------------------//
    if (reporte.op.equals("EnviadosYParciales")) {
        criteria = session.createCriteria(Reporteavancecontenidotematico.class,
                "reporteavancecontenidotematico");
        //criteria.createAlias("reporte.reporteavancecontenidotematico", "reporteavancecontenidotematico");//Inner Join by default
        //criteria.createAlias("reporteavancecontenidotematico.unidadaprendizajeImparteProfesor", "unidadaprendizajeImparteProfesor",JoinType.RIGHT_OUTER_JOIN);//Inner Join by default
        criteria.createAlias("reporteavancecontenidotematico.unidadaprendizajeImparteProfesor",
                "unidadaprendizajeImparteProfesor");//Inner Join by default
        criteria.createAlias("unidadaprendizajeImparteProfesor.unidadaprendizaje", "unidadaprendizaje");//Inner Join by default
        criteria.createAlias("unidadaprendizajeImparteProfesor.profesor", "profesor");//Inner Join by default                        
        //criteria.setFetchMode("programaeducativo.profesors", FetchMode.JOIN);
        criteria.createAlias("unidadaprendizajeImparteProfesor.grupo", "grupo");//Inner Join by default
        criteria.createAlias("grupo.planestudio", "planestudio");//Inner Join by default
        criteria.createAlias("unidadaprendizaje.cicloescolar", "cicloescolar");//Inner Join by default
        criteria.createAlias("unidadaprendizaje.areaconocimiento", "areaconocimiento");//Inner Join by default
        //criteria.setMaxResults(10);
        criteria.createAlias("areaconocimiento.planestudio", "planestudio2");//Inner Join by default     
        criteria.createAlias("planestudio.programaeducativo", "programaeducativo");//Inner Join by default        

        //criteria.setResultTransformer(DistinctRootEntityResultTransformer.INSTANCE);
        //      criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        //criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", UIPid));      

        //criteria.add(Restrictions);
        if (reporte.clave == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clave));
        }
        if (reporte.acoclave == 0) {

        } else {
            criteria.add(Restrictions.eq("areaconocimiento.acoclave", reporte.acoclave));
        }
        if (reporte.uapclave == 0) {
            //
        } else {
            criteria.add(Restrictions.eq("unidadaprendizaje.uapclave", reporte.uapclave));
        }
        if (reporte.gponumero == 0) {

        } else {
            criteria.add(Restrictions.eq("grupo.gponumero", reporte.gponumero));
        }
        if (reporte.pronumeroEmpleado == 0) {

        } else {
            criteria.add(Restrictions.eq("profesor.pronumeroEmpleado", reporte.pronumeroEmpleado));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }

        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }

        if (reporte.numProfUIPid == 0) {

        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }

        listaUAp = criteria.list();

        //session.close();

        //return listaUAp;
    }
    //--------------------No entregados vacio-----------------------------------------------------------------------------//
    if (reporte.op.equals("NoEntregadoVacio")) {
        criteria = session.createCriteria(UnidadaprendizajeImparteProfesor.class,
                "unidadaprendizajeImparteProfesor");
        //criteria.createAlias("reporte.reporteavancecontenidotematico", "reporteavancecontenidotematico");//Inner Join by default
        //criteria.createAlias("reporteavancecontenidotematico.unidadaprendizajeImparteProfesor", "unidadaprendizajeImparteProfesor");//Inner Join by default
        criteria.createAlias("unidadaprendizajeImparteProfesor.unidadaprendizaje", "unidadaprendizaje");//Inner Join by default
        criteria.createAlias("unidadaprendizajeImparteProfesor.profesor", "profesor");//Inner Join by default                        
        //criteria.setFetchMode("programaeducativo.profesors", FetchMode.JOIN);
        criteria.createAlias("unidadaprendizajeImparteProfesor.grupo", "grupo");//Inner Join by default
        criteria.createAlias("grupo.planestudio", "planestudio");//Inner Join by default
        criteria.createAlias("unidadaprendizaje.cicloescolar", "cicloescolar");//Inner Join by default
        criteria.createAlias("unidadaprendizaje.areaconocimiento", "areaconocimiento");//Inner Join by default
        //criteria.setMaxResults(10);
        criteria.createAlias("areaconocimiento.planestudio", "planestudio2");//Inner Join by default     
        criteria.createAlias("planestudio.programaeducativo", "programaeducativo");//Inner Join by default        

        //criteria.setResultTransformer(DistinctRootEntityResultTransformer.INSTANCE);
        //      criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        //criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", UIPid));      

        //criteria.add(Restrictions);
        if (reporte.clave == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clave));
        }
        if (reporte.acoclave == 0) {

        } else {
            criteria.add(Restrictions.eq("areaconocimiento.acoclave", reporte.acoclave));
        }
        if (reporte.uapclave == 0) {
            //
        } else {
            criteria.add(Restrictions.eq("unidadaprendizaje.uapclave", reporte.uapclave));
        }
        if (reporte.gponumero == 0) {

        } else {
            criteria.add(Restrictions.eq("grupo.gponumero", reporte.gponumero));
        }
        if (reporte.pronumeroEmpleado == 0) {

        } else {
            criteria.add(Restrictions.eq("profesor.pronumeroEmpleado", reporte.pronumeroEmpleado));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }

        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }

        if (reporte.numProfUIPid == 0) {

        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }

        listaUAp = criteria.list();

        //session.close();

        //return listaUAp;
    }
    //--------------------ATiempoYNo-----------------------------------------------------------------------------//
    if (reporte.op.equals("ATiempoYNo")) {
        criteria = session.createCriteria(Reporteavancecontenidotematico.class,
                "reporteavancecontenidotematico");
        //criteria.createAlias("reporte.reporteavancecontenidotematico", "reporteavancecontenidotematico");//Inner Join by default
        criteria.createAlias("reporteavancecontenidotematico.unidadaprendizajeImparteProfesor",
                "unidadaprendizajeImparteProfesor");//Inner Join by default
        criteria.createAlias("unidadaprendizajeImparteProfesor.unidadaprendizaje", "unidadaprendizaje");//Inner Join by default
        criteria.createAlias("unidadaprendizajeImparteProfesor.profesor", "profesor");//Inner Join by default                        
        //criteria.setFetchMode("programaeducativo.profesors", FetchMode.JOIN);
        criteria.createAlias("unidadaprendizajeImparteProfesor.grupo", "grupo");//Inner Join by default
        criteria.createAlias("grupo.planestudio", "planestudio");//Inner Join by default
        criteria.createAlias("unidadaprendizaje.cicloescolar", "cicloescolar");//Inner Join by default
        criteria.createAlias("unidadaprendizaje.areaconocimiento", "areaconocimiento");//Inner Join by default
        //criteria.setMaxResults(10);
        criteria.createAlias("areaconocimiento.planestudio", "planestudio2");//Inner Join by default     
        criteria.createAlias("planestudio.programaeducativo", "programaeducativo");//Inner Join by default        

        //criteria.setResultTransformer(DistinctRootEntityResultTransformer.INSTANCE);
        //quite la siguiente linea para que obtenga resultados de Enviados y Parciales
        //         criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        //criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", UIPid));      

        if (reporte.tipo.equalsIgnoreCase("ATiempo")) {
            criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.tipo.equalsIgnoreCase("FueraTiempo")) {
            criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.tipo.equalsIgnoreCase("EnFechaLimite")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }

        //criteria.add(Restrictions);
        if (reporte.clave == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clave));
        }
        if (reporte.acoclave == 0) {

        } else {
            criteria.add(Restrictions.eq("areaconocimiento.acoclave", reporte.acoclave));
        }
        if (reporte.uapclave == 0) {
            //
        } else {
            criteria.add(Restrictions.eq("unidadaprendizaje.uapclave", reporte.uapclave));
        }
        if (reporte.gponumero == 0) {

        } else {
            criteria.add(Restrictions.eq("grupo.gponumero", reporte.gponumero));
        }
        if (reporte.pronumeroEmpleado == 0) {

        } else {
            criteria.add(Restrictions.eq("profesor.pronumeroEmpleado", reporte.pronumeroEmpleado));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }
        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }

        if (reporte.numProfUIPid == 0) {

        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }

        listaUAp = criteria.list();

        //session.close();

        //return listaUAp;
    }
    //------------------------ConfigSet-----------------------------------------------------------//
    if (reporte.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",reporte.calnumeroReporte));   
        listaUAp = criteria.list();
    }
    //----------------------CompararAreaCon------------------------------------------------------//
    if (reporte.op.equals("CompararAreaCon")) {
        if (reporte.tipo.equalsIgnoreCase("ATiempo") || reporte.tipo.equalsIgnoreCase("FueraTiempo")
                || reporte.tipo.equalsIgnoreCase("Enviado")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        }
        if (reporte.tipo.equalsIgnoreCase("Parcial")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("EnviadoYParcial")) {
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("ATiempo")) {
            criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.tipo.equalsIgnoreCase("FueraTiempo")) {
            criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.clavepe == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clavepe));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }
        if (reporte.acoclave == 0) {

        } else {
            criteria.add(Restrictions.eq("areaconocimiento.acoclave", reporte.acoclave));
        }
        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }
        if (reporte.numProfUIPid == 0) {
        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }
        listaUAp = criteria.list();
    }
    //-----------------------------ProgEducatTodos------------------------------------------------//
    if (reporte.op.equals("ProgEducatTodos")) {
        criteria = session.createCriteria(Planestudio.class, "planestudio");
        criteria.createAlias("planestudio.programaeducativo", "programaeducativo");//Inner Join by default
        listaUAp = criteria.list();
    }
    //-----------------------------PAGC------------------------------------------------//
    if (reporte.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 (reporte.op.equals("CompararProfGrupo")) {
        if (reporte.tipo.equalsIgnoreCase("ATiempo") || reporte.tipo.equalsIgnoreCase("FueraTiempo")
                || reporte.tipo.equalsIgnoreCase("Enviado")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        }
        if (reporte.tipo.equalsIgnoreCase("Parcial")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("EnviadoYParcial")) {
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("ATiempo")) {
            criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.tipo.equalsIgnoreCase("FueraTiempo")) {
            criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.clavepe == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clavepe));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }
        if (reporte.acoclave == 0) {

        } else {
            criteria.add(Restrictions.eq("areaconocimiento.acoclave", reporte.acoclave));
        }
        if (reporte.uapclave == 0) {
            //
        } else {
            criteria.add(Restrictions.eq("unidadaprendizaje.uapclave", reporte.uapclave));
        }
        if (reporte.pronumeroEmpleado == 0) {

        } else {
            criteria.add(Restrictions.eq("profesor.pronumeroEmpleado", reporte.pronumeroEmpleado));
        }
        if (reporte.gponumero == 0) {

        } else {
            criteria.add(Restrictions.eq("grupo.gponumero", reporte.gponumero));
        }
        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }
        if (reporte.numProfUIPid == 0) {
        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }
        listaUAp = criteria.list();
    }
    //------------------------------------CompararProgramaEducativo------------------------------------------//
    if (reporte.op.equals("CompararProgEduc")) {
        if (reporte.tipo.equalsIgnoreCase("ATiempo") || reporte.tipo.equalsIgnoreCase("FueraTiempo")
                || reporte.tipo.equalsIgnoreCase("Enviado")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        }
        if (reporte.tipo.equalsIgnoreCase("Parcial")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("EnviadoYParcial")) {
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("ATiempo")) {
            criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.tipo.equalsIgnoreCase("FueraTiempo")) {
            criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.clavepe == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clavepe));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }
        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }
        if (reporte.numProfUIPid == 0) {
        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }
        listaUAp = criteria.list();
    }
    //------------------------------------PorcentAvanceSolo------------------------------------------//
    if (reporte.op.equals("PorcentAvanceSolo")) {
        //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        if (reporte.tipo.equalsIgnoreCase("ATiempo")) {
            criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.tipo.equalsIgnoreCase("FueraTiempo")) {
            criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.clave == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clave));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }
        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }
        if (reporte.numProfUIPid == 0) {
        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }
        listaUAp = criteria.list();
    }
    //------------------------------------CompararUAGrupo------------------------------------------//      
    if (reporte.op.equals("CompararUAGrupo")) {
        if (reporte.tipo.equalsIgnoreCase("ATiempo") || reporte.tipo.equalsIgnoreCase("FueraTiempo")
                || reporte.tipo.equalsIgnoreCase("Enviado")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
        }
        if (reporte.tipo.equalsIgnoreCase("Parcial")) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("EnviadoYParcial")) {
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Enviado"));
            //criteria.add(Restrictions.eq("reporteavancecontenidotematico.racstatus", "Parcial"));
        }
        if (reporte.tipo.equalsIgnoreCase("ATiempo")) {
            criteria.add(Restrictions.le("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.tipo.equalsIgnoreCase("FueraTiempo")) {
            criteria.add(Restrictions.gt("reporteavancecontenidotematico.racfechaElaboracion", reporte.fecha1));
        }
        if (reporte.clavepe == 0) {

        } else {
            criteria.add(Restrictions.eq("programaeducativo.pedclave", reporte.clavepe));
        }
        if (reporte.pesvigencia == null || reporte.pesvigencia.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("planestudio.pesvigenciaPlan", reporte.pesvigencia));
        }
        if (reporte.cescicloEscolar == null || reporte.cescicloEscolar.equalsIgnoreCase("")) {

        } else {
            criteria.add(Restrictions.eq("cicloescolar.cescicloEscolar", reporte.cescicloEscolar));
        }
        if (reporte.acoclave == 0) {

        } else {
            criteria.add(Restrictions.eq("areaconocimiento.acoclave", reporte.acoclave));
        }
        if (reporte.uapclave == 0) {
            //
        } else {
            criteria.add(Restrictions.eq("unidadaprendizaje.uapclave", reporte.uapclave));
        }
        if (reporte.gponumero == 0) {

        } else {
            criteria.add(Restrictions.eq("grupo.gponumero", reporte.gponumero));
        }
        if (reporte.numRact == 1) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "1"));
        }
        if (reporte.numRact == 2) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "2"));
        }
        if (reporte.numRact == 3) {
            criteria.add(Restrictions.eq("reporteavancecontenidotematico.racnumero", "3"));
        }
        if (reporte.numProfUIPid == 0) {
        } else {
            criteria.add(Restrictions.eq("unidadaprendizajeImparteProfesor.uipid", reporte.numProfUIPid));
        }
        listaUAp = criteria.list();
    }
    session.close();
    return listaUAp;
}

From source file:mx.avanti.siract.integration.persistence.reportesDAOJesus.java

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;/*from   w  w  w.  j  a v  a 2s. c  o m*/
    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;
}

From source file:mx.edu.um.mateo.inventario.dao.impl.ProductoDaoHibernate.java

License:Open Source License

@SuppressWarnings("unchecked")
@Override// w ww  .  j  ava 2s  .c o m
@Transactional(readOnly = true)
public List<Producto> listaParaSalida(String filtro, Long almacenId) {
    Criteria criteria = currentSession().createCriteria(Producto.class);
    criteria.createCriteria("almacen").add(Restrictions.idEq(almacenId));
    filtro = "%" + filtro + "%";
    Disjunction propiedades = Restrictions.disjunction();
    propiedades.add(Restrictions.ilike("sku", filtro, MatchMode.ANYWHERE));
    propiedades.add(Restrictions.ilike("nombre", filtro, MatchMode.ANYWHERE));
    propiedades.add(Restrictions.ilike("descripcion", filtro, MatchMode.ANYWHERE));
    propiedades.add(Restrictions.ilike("marca", filtro, MatchMode.ANYWHERE));
    propiedades.add(Restrictions.ilike("modelo", filtro, MatchMode.ANYWHERE));
    propiedades.add(Restrictions.ilike("ubicacion", filtro, MatchMode.ANYWHERE));
    criteria.add(propiedades);

    propiedades = Restrictions.disjunction();
    propiedades.add(Restrictions.eq("inactivo", Boolean.FALSE));
    propiedades.add(Restrictions.isNull("inactivo"));
    criteria.add(propiedades);

    criteria.add(Restrictions.gt("existencia", BigDecimal.ZERO));
    criteria.setMaxResults(10);
    return criteria.list();
}

From source file:net.databinder.models.hib.CriteriaFilterAndSort.java

License:Open Source License

public void buildUnordered(Criteria criteria) {
    super.buildUnordered(criteria);

    Conjunction conj = Restrictions.conjunction();

    for (Map.Entry<String, String> entry : (Set<Map.Entry<String, String>>) filterMap.entrySet()) {
        // System.out.println(String.format("%s\t%s", entry.getKey(), entry.getValue()));
        String property = entry.getKey();
        String value = entry.getValue();
        if (value == null)
            continue;

        String prop = processProperty(criteria, property);
        Class clazz = PropertyResolver.getPropertyClass(property, beanClass);

        if (String.class.isAssignableFrom(clazz)) {
            String[] items = value.split("\\s+");
            for (String item : items) {
                Disjunction dist = Restrictions.disjunction();
                dist.add(Restrictions.ilike(prop, item, MatchMode.ANYWHERE));
                conj.add(dist);/*from ww  w  . j  av  a2  s. c  o m*/
            }
        } else if (Number.class.isAssignableFrom(clazz)) {
            try {
                Matcher matcher = pattern.matcher(value);
                if (matcher.matches()) {
                    String qualifier = matcher.group(2);
                    value = matcher.group(4);
                    Number num = convertToNumber(value, clazz);
                    if (">".equals(qualifier))
                        conj.add(Restrictions.gt(prop, num));
                    else if ("<".equals(qualifier))
                        conj.add(Restrictions.lt(prop, num));
                    else if (">=".equals(qualifier))
                        conj.add(Restrictions.ge(prop, num));
                    else if ("<=".equals(qualifier))
                        conj.add(Restrictions.le(prop, num));
                } else
                    conj.add(Restrictions.eq(prop, convertToNumber(value, clazz)));
            } catch (ConversionException ex) {
                // ignore filter in this case
            }
        } else if (Boolean.class.isAssignableFrom(clazz)) {
            conj.add(Restrictions.eq(prop, Boolean.parseBoolean(value)));
        }
    }
    criteria.add(conj);
}

From source file:net.firejack.platform.core.store.AbstractStore.java

License:Apache License

protected Criterion getRestrictions(SearchQuery query, Class<?> type) {
    Criterion criterion;/*w  w  w  . ja  va 2  s .com*/
    Object value = query.getValue();
    QueryOperation operation = query.getOperation();
    if (value != null
            && !(QueryOperation.FIELDEQUALS.equals(operation) || QueryOperation.FIELDNOTEQUALS.equals(operation)
                    || QueryOperation.FIELDGREATERTHAN.equals(operation)
                    || QueryOperation.FIELDLESSTHAN.equals(operation))) {
        if (value instanceof Collection) {
            Collection values = (Collection) value;
            if (Integer.class.equals(type)) {
                List<Integer> list = new ArrayList<Integer>();
                for (Object item : values) {
                    list.add(Integer.parseInt(item.toString()));
                }
                value = list;
            } else if (Long.class.equals(type)) {
                List<Long> list = new ArrayList<Long>();
                for (Object item : values) {
                    list.add(Long.parseLong(item.toString()));
                }
                value = list;
            } else if (java.sql.Date.class.equals(type) || Date.class.equals(type)) {
                List<Date> list = new ArrayList<Date>();
                for (Object item : values) {
                    Tuple<Date, QueryOperation> tuple = convertToDate(item, operation);
                    operation = tuple.getValue();
                    list.add(tuple.getKey());
                }
                value = list;
            } else if (Enum.class.isAssignableFrom(type)) {
                List<Enum> enumValues = new ArrayList<Enum>(values.size());
                for (Object item : values) {
                    Enum enumItem = prepareEnumFromSearchCriteria((Class<? extends Enum>) type, item);
                    enumValues.add(enumItem);
                }
                value = enumValues;
            }
        } else {
            if (Integer.class.equals(type)) {
                value = Integer.parseInt(value.toString());
            } else if (Long.class.equals(type)) {
                value = Long.parseLong(value.toString());
            } else if (Double.class.equals(type)) {
                value = Double.parseDouble(value.toString());
            } else if (java.sql.Date.class.equals(type) || Date.class.equals(type)) {
                Tuple<Date, QueryOperation> tuple = convertToDate(value, operation);
                value = tuple.getKey();
                operation = tuple.getValue();
            } else if (Enum.class.isAssignableFrom(type)) {
                value = prepareEnumFromSearchCriteria((Class<? extends Enum>) type, value);
            }
        }
    }

    if (!String.class.equals(type)
            && (QueryOperation.LIKECS.equals(operation) || QueryOperation.LIKECSFIRST.equals(operation)
                    || QueryOperation.LIKE.equals(operation) || QueryOperation.LIKEFIRST.equals(operation))) {
        operation = QueryOperation.EQUALS;
    }

    switch (operation) {
    case LIKECS:
        criterion = Restrictions.like(query.getField(), "%" + value + "%");
        break;
    case LIKECSFIRST:
        criterion = Restrictions.like(query.getField(), value + "%");
        break;
    case LIKE:
        criterion = Restrictions.ilike(query.getField(), "%" + value + "%");
        break;
    case LIKEFIRST:
        criterion = Restrictions.ilike(query.getField(), value + "%");
        break;
    case EQUALS:
        criterion = Restrictions.eq(query.getField(), value);
        break;
    case LESSTHAN:
        criterion = Restrictions.lt(query.getField(), value);
        break;
    case GREATERTHAN:
        criterion = Restrictions.gt(query.getField(), value);
        break;
    case ISNULL:
        criterion = Restrictions.isNull(query.getField());
        break;
    case ISNOTNULL:
        criterion = Restrictions.isNotNull(query.getField());
        break;
    case ISEMPTY:
        criterion = Restrictions.isEmpty(query.getField());
        break;
    case ISNOTEMPTY:
        criterion = Restrictions.isNotEmpty(query.getField());
        break;
    case NOTEQUALS:
        criterion = Restrictions.ne(query.getField(), value);
        break;
    case IN:
        criterion = generateInRestriction(query.getField(), (Collection) value);
        break;
    case NOTIN:
        criterion = Restrictions.not(generateInRestriction(query.getField(), (Collection) value));
        break;
    case FIELDEQUALS:
        criterion = Restrictions.eqProperty(query.getField(), value != null ? value.toString() : "");
        break;
    case FIELDNOTEQUALS:
        criterion = Restrictions.neProperty(query.getField(), value != null ? value.toString() : "");
        break;
    case FIELDGREATERTHAN:
        criterion = Restrictions.gtProperty(query.getField(), value != null ? value.toString() : "");
        break;
    case FIELDLESSTHAN:
        criterion = Restrictions.ltProperty(query.getField(), value != null ? value.toString() : "");
        break;
    default:
        throw new RuntimeException("Operation " + query.getField() + " is not a valid operation");
    }
    return criterion;
}

From source file:net.firejack.platform.core.store.registry.PackageChangesStore.java

License:Apache License

@Override
@Transactional(readOnly = true)//from  ww  w  .  ja  v a  2s .  c o m
public List<PackageChangesModel> findAllLastChanges(Long timestamp) {
    final Date date = new Date();
    date.setTime(timestamp);
    return getHibernateTemplate().executeFind(new HibernateCallback<List<PackageChangesModel>>() {
        public List<PackageChangesModel> doInHibernate(Session session)
                throws HibernateException, SQLException {
            Criteria criteria = session.createCriteria(getClazz());
            criteria.add(Restrictions.gt("created", date));
            criteria.setFetchMode("entity", FetchMode.JOIN);
            criteria.setFetchMode("packageModel", FetchMode.JOIN);
            return criteria.list();
        }
    });
}

From source file:net.longfalcon.newsj.persistence.hibernate.ReleaseDAOImpl.java

License:Open Source License

@Override
@Transactional(readOnly = true, propagation = Propagation.SUPPORTS)
public Long countByCategoriesMaxAgeAndGroup(Collection<Integer> categoryIds, Date maxAge,
        Collection<Integer> excludedCategoryIds, Long groupId) {
    Criteria criteria = sessionFactory.getCurrentSession().createCriteria(Release.class);
    if (!categoryIds.isEmpty()) {
        criteria.add(Restrictions.in("category.id", categoryIds));
    }//from ww  w . j  a v  a  2  s . com
    if (maxAge != null) {
        criteria.add(Restrictions.gt("postDate", maxAge));
    }
    if (excludedCategoryIds != null && !excludedCategoryIds.isEmpty()) {
        criteria.add(Restrictions.not(Restrictions.in("category.id", excludedCategoryIds)));
    }
    if (groupId != null) {
        criteria.add(Restrictions.eq("groupId", groupId));
    }
    criteria.setProjection(Projections.rowCount());

    return (Long) criteria.uniqueResult();
}