Example usage for org.hibernate Session doWork

List of usage examples for org.hibernate Session doWork

Introduction

In this page you can find the example usage for org.hibernate Session doWork.

Prototype

void doWork(Work work) throws HibernateException;

Source Link

Document

Controller for allowing users to perform JDBC related work using the Connection managed by this Session.

Usage

From source file:com.mimp.hibernate.HiberEtapa.java

public ArrayList<Designacion> getListaAdopciones() {

    Session session = sessionFactory.getCurrentSession();
    session.beginTransaction();//from w w w. j  a va2  s.  c  o  m

    final ArrayList<Designacion> allDesig = new ArrayList();

    Work work = new Work() {
        @Override
        public void execute(Connection connection) throws SQLException {
            ExpedienteNna expnna;

            String hql = "{call HE_LISTADESIG_ADOPCION(?)}";
            CallableStatement statement = connection.prepareCall(hql);
            statement.registerOutParameter(1, OracleTypes.CURSOR);
            statement.execute();

            ResultSet rs = (ResultSet) statement.getObject(1);

            while (rs.next()) {
                Designacion tempDesig = new Designacion();
                ExpedienteFamilia tempEF = new ExpedienteFamilia();
                Nna tempNna = new Nna();
                Personal tempPerso = new Personal();
                Unidad tempUA = new Unidad();

                tempDesig.setIddesignacion(rs.getLong(1));
                tempDesig.setNDesignacion(rs.getString(5));
                tempDesig.setPrioridad(rs.getLong(6));
                tempDesig.setFechaPropuesta(rs.getDate(7));
                tempDesig.setFechaConsejo(rs.getDate(8));
                tempDesig.setAceptacionConsejo(rs.getShort(9));
                tempDesig.setTipoPropuesta(rs.getString(10));
                tempDesig.setObs(rs.getString(11));

                tempPerso.setIdpersonal(rs.getLong(4));

                tempUA.setIdunidad(rs.getLong("IDUNIDAD"));
                String hql4 = "{call HE_GET_UNIDAD(?, ?)}";
                CallableStatement statement4 = connection.prepareCall(hql4);
                statement4.setLong(1, tempUA.getIdunidad());
                statement4.registerOutParameter(2, OracleTypes.CURSOR);
                statement4.execute();
                ResultSet rs4 = (ResultSet) statement4.getObject(2);
                if (rs4.next()) {
                    tempUA.setIdunidad(rs4.getLong(1));
                    tempUA.setDepartamento(rs4.getString("DEPARTAMENTO"));
                    tempEF.setUnidad(tempUA);
                }
                statement4.close();

                tempEF.setIdexpedienteFamilia(rs.getLong(2));
                tempEF.setExpediente(rs.getString("EXPEDIENTE"));
                tempEF.setHt(rs.getString("HT"));
                tempEF.setNumeroExpediente(rs.getString("NUMERO_EXPEDIENTE"));
                tempEF.setFechaIngresoDga(rs.getDate("FECHA_INGRESO_DGA"));
                tempEF.setEstado(rs.getString("ESTADO"));
                tempEF.setTupa(rs.getDate("TUPA"));
                tempEF.setNacionalidad(rs.getString("NACIONALIDAD"));
                tempEF.setRnsa(rs.getShort("RNSA"));
                tempEF.setRnaa(rs.getShort("RNAA"));
                tempEF.setTipoFamilia(rs.getString("TIPO_FAMILIA"));
                tempEF.setTipoListaEspera(rs.getString("TIPO_LISTA_ESPERA"));
                tempEF.setHtFicha(rs.getString("HTFICHA"));
                tempEF.setnFicha(rs.getString("NFICHA"));
                tempEF.setFechaIngresoFicha(rs.getDate("FECHA_INGRESO_FICHA"));

                Set<Evaluacion> listaEv = new HashSet<Evaluacion>();

                String hql2 = "{call HE_LISTAEVAL_BY_IDEXPFAM(?,?)}";
                CallableStatement statement2 = connection.prepareCall(hql2);
                statement2.setLong(1, tempEF.getIdexpedienteFamilia());
                statement2.registerOutParameter(2, OracleTypes.CURSOR);
                statement2.execute();

                ResultSet rs2 = (ResultSet) statement2.getObject(2);

                while (rs2.next()) {
                    Evaluacion tempEval = new Evaluacion();
                    tempEval.setIdevaluacion(rs2.getLong("IDEVALUACION"));
                    tempEval.setExpedienteFamilia(tempEF);
                    tempEval.setTipo(rs2.getString("TIPO"));
                    tempEval.setFechaAsignacion(rs2.getDate("FECHA_ASIGNACION"));
                    tempEval.setResultado(rs2.getString("RESULTADO"));
                    tempEval.setFechaResultado(rs2.getDate("FECHA_RESULTADO"));
                    tempEval.setObservacion(rs2.getString("OBSERVACION"));
                    tempEval.setSustento(rs2.getString("SUSTENTO"));
                    tempEval.setNDesignacion(rs2.getString("N_DESIGNACION"));
                    tempEval.setNumEval(rs2.getString("NUM_EVAL"));
                    Set<Resolucion> listaRe = new HashSet<Resolucion>();

                    if (tempEval.getTipo().equals("empatia") || tempEval.getTipo().equals("informe")) {

                        String hql3 = "{call HE_ULTRESOL_LEGAL(?,?)}";
                        CallableStatement statement3 = connection.prepareCall(hql3);
                        statement3.setLong(1, tempEval.getIdevaluacion());
                        statement3.registerOutParameter(2, OracleTypes.CURSOR);
                        statement3.execute();

                        ResultSet rs3 = (ResultSet) statement3.getObject(2);

                        if (rs3.next()) {
                            Resolucion tempResol = new Resolucion();
                            tempResol.setIdresolucion(rs3.getLong("IDRESOLUCION"));
                            tempResol.setTipo(rs3.getString("TIPO"));
                            tempResol.setNumero(rs3.getString("NUMERO"));
                            tempResol.setFechaResol(rs3.getDate("FECHA_RESOL"));
                            tempResol.setFechaNotificacion(rs3.getDate("FECHA_NOTIFICACION"));
                            tempResol.setEvaluacion(tempEval);

                            listaRe.add(tempResol);

                        }
                        rs3.close();
                        statement3.close();

                    }

                    tempEval.setResolucions(listaRe);
                    listaEv.add(tempEval);

                }
                rs2.close();
                statement2.close();

                tempEF.setEvaluacions(listaEv);

                tempNna.setIdnna(rs.getLong("IDNNA"));
                tempNna.setNombre(rs.getString("NOMBRE"));
                tempNna.setApellidoP(rs.getString("APELLIDO_P"));
                tempNna.setApellidoM(rs.getString("APELLIDO_M"));
                tempNna.setSexo(rs.getString("SEXO"));
                tempNna.setFechaNacimiento(rs.getDate("FECHA_NACIMIENTO"));
                tempNna.setEdadAnhos(rs.getShort("EDAD_ANHOS"));
                tempNna.setEdadMeses(rs.getShort("EDAD_MESES"));
                tempNna.setActaNacimiento(rs.getShort("ACTA_NACIMIENTO"));
                tempNna.setCondicionSalud(rs.getString("CONDICION_SALUD"));
                tempNna.setDepartamentoNacimiento(rs.getString("DEPARTAMENTO_NACIMIENTO"));
                tempNna.setProvinciaNacimiento(rs.getString("PROVINCIA_NACIMIENTO"));
                tempNna.setDistritoNacimiento(rs.getString("DISTRITO_NACIMIENTO"));
                tempNna.setPaisNacimiento(rs.getString("PAIS_NACIMIENTO"));
                tempNna.setLugarNac(rs.getString("LUGAR_NAC"));
                tempNna.setFechaResolAbandono(rs.getDate("FECHA_RESOL_ABANDONO"));
                tempNna.setFechaResolConsentida(rs.getDate("FECHA_RESOL_CONSENTIDA"));
                tempNna.setClasificacion(rs.getString("CLASIFICACION"));
                tempNna.setIncesto(rs.getShort("INCESTO"));
                tempNna.setMental(rs.getShort("MENTAL"));
                tempNna.setEpilepsia(rs.getShort("EPILEPSIA"));
                tempNna.setAbuso(rs.getShort("ABUSO"));
                tempNna.setSifilis(rs.getShort("SIFILIS"));
                tempNna.setSeguiMedico(rs.getShort("SEGUI_MEDICO"));
                tempNna.setOperacion(rs.getShort("OPERACION"));
                tempNna.setHiperactivo(rs.getShort("HIPERACTIVO"));
                tempNna.setEspecial(rs.getShort("ESPECIAL"));
                tempNna.setEnfermo(rs.getShort("ENFERMO"));
                tempNna.setMayor(rs.getShort("MAYOR"));
                tempNna.setAdolescente(rs.getShort("ADOLESCENTE"));
                tempNna.setHermano(rs.getShort("HERMANO"));
                tempNna.setNn(rs.getShort("NN"));
                tempNna.setObservaciones(rs.getString("OBSERVACIONES"));
                tempNna.setNResolAband(rs.getString("N_RESOL_ABAND"));
                tempNna.setNResolCons(rs.getString("N_RESOL_CONS"));

                tempDesig.setExpedienteFamilia(tempEF);
                tempDesig.setNna(tempNna);
                tempDesig.setPersonal(tempPerso);

                allDesig.add(tempDesig);
            }
            rs.close();
            statement.close();
        }
    };

    session.doWork(work);

    return allDesig;
}

From source file:com.mimp.hibernate.HiberEtapa.java

public void deleteResolucion(Resolucion temp) {

    Session session = sessionFactory.getCurrentSession();
    session.beginTransaction();//from w ww  . ja v a  2 s .  c  om

    final Long idR = temp.getIdresolucion();

    Work work = new Work() {
        @Override
        public void execute(Connection connection) throws SQLException {

            String hql = "{call HE_DELETE_RESOL(?)}";
            CallableStatement statement = connection.prepareCall(hql);
            statement.setLong(1, idR);

            statement.execute();
            statement.close();
        }
    };

    session.doWork(work);

}

From source file:com.mimp.hibernate.HiberEtapa.java

public void deleteEvaluacion(Evaluacion temp) {

    Session session = sessionFactory.getCurrentSession();
    session.beginTransaction();//from  w  ww. j ava 2  s. c  om

    final Long idE = temp.getIdevaluacion();

    Work work = new Work() {
        @Override
        public void execute(Connection connection) throws SQLException {

            String hql = "{call HE_DELETE_EVAL(?)}";
            CallableStatement statement = connection.prepareCall(hql);
            statement.setLong(1, idE);

            statement.execute();
            statement.close();
        }
    };

    session.doWork(work);

}

From source file:com.mimp.hibernate.HiberEtapa.java

public void crearEstudioCaso(EstudioCaso temp) {

    Session session = sessionFactory.getCurrentSession();
    session.beginTransaction();//w ww  . j ava  2  s.co m

    final Long idN = temp.getNna().getIdnna();
    final Long idExp = temp.getExpedienteFamilia().getIdexpedienteFamilia();
    final String ord = temp.getOrden();
    final Long prior = temp.getPrioridad();
    final Long nsol = temp.getNSolicitud();

    Work work = new Work() {
        @Override
        public void execute(Connection connection) throws SQLException {

            String hql = "{call HE_CREAR_ESTUDIO(?,?,?,?,?)}";
            CallableStatement statement = connection.prepareCall(hql);
            statement.setLong(1, idN);
            statement.setLong(2, idExp);
            statement.setString(3, ord);
            statement.setLong(4, prior);
            statement.setLong(5, nsol);

            statement.execute();
            statement.close();
        }
    };

    session.doWork(work);

}

From source file:com.mimp.hibernate.HiberEtapa.java

public void updateEstudioCaso(EstudioCaso temp) {

    Session session = sessionFactory.getCurrentSession();

    final Long idEs = temp.getIdestudioCaso();
    final Date fechaEst = temp.getFechaEstudio();
    final Date fechaSol = temp.getFechaSolAdop();
    final String res = temp.getResultado();
    final Long nsol = temp.getNSolicitud();

    Work work = new Work() {
        @Override/* ww w .ja v a 2  s  . c o  m*/
        public void execute(Connection connection) throws SQLException {

            String hql = "{call HE_UPDATE_ESTUDIO(?,?,?,?,?)}";
            CallableStatement statement = connection.prepareCall(hql);
            statement.setLong(1, idEs);
            statement.setDate(2, (java.sql.Date) fechaEst);
            statement.setDate(3, (java.sql.Date) fechaSol);
            statement.setString(4, res);
            statement.setLong(5, nsol);
            statement.execute();
            statement.close();
        }
    };

    session.doWork(work);

}

From source file:com.mimp.hibernate.HiberEtapa.java

public void crearPostAdopcion(PostAdopcion temp) {

    Session session = sessionFactory.getCurrentSession();

    final Long idFam = temp.getFamilia().getIdfamilia();
    final Date fechaResol = temp.getFechaResolucion();
    final Long idNna = temp.getidNna();

    Work work = new Work() {
        @Override/*from   ww w. jav a  2s  . c  o  m*/
        public void execute(Connection connection) throws SQLException {

            String hql = "{call HE_SAVE_POST(?,?,?)}";
            CallableStatement statement = connection.prepareCall(hql);
            statement.setLong(1, idFam);
            statement.setDate(2, (java.sql.Date) fechaResol);
            statement.setLong(3, idNna);
            statement.execute();
            statement.close();
        }
    };

    session.doWork(work);

}

From source file:com.mimp.hibernate.HiberEtapa.java

public void updatePostAdopcion(PostAdopcion temp) {

    Session session = sessionFactory.getCurrentSession();

    final Long idpost = temp.getIdpostAdopcion();
    final Long idFam = temp.getFamilia().getIdfamilia();
    final Long numInfor = temp.getNumeroInformes();
    final Date fechaResol = temp.getFechaResolucion();
    final Long idNna = temp.getidNna();

    Work work = new Work() {
        @Override//from  ww  w.  j  a  va 2s .  c  om
        public void execute(Connection connection) throws SQLException {

            String hql = "{call HE_UPDATE_POST_ADOPCION(?,?,?,?,?)}";
            CallableStatement statement = connection.prepareCall(hql);
            statement.setLong(1, idpost);
            statement.setLong(2, idFam);
            statement.setLong(3, numInfor);
            statement.setDate(4, (java.sql.Date) fechaResol);
            statement.setLong(5, idNna);
            statement.execute();
            statement.close();
        }
    };

    session.doWork(work);

}

From source file:com.mimp.hibernate.HiberEtapa.java

public void crearInformePost(InformePostAdoptivo temp) {

    Session session = sessionFactory.getCurrentSession();

    final Long idpost = temp.getPostAdopcion().getIdpostAdopcion();
    final Long idpersonal = temp.getPersonal().getIdpersonal();
    final String estado = temp.getEstado();
    final String numero_informe = temp.getNumeroInforme();
    final Date fecha_rec_proy = temp.getFechaRecepcionProyectado();
    final Date fecha_rec = temp.getFechaRecepcion();
    final Date fecha_info = temp.getFechaInforme();
    final Date fecha_act = temp.getFechaActa();
    final String obs = temp.getObs();

    Work work = new Work() {
        @Override//from w w w .  j a v  a  2  s.co  m
        public void execute(Connection connection) throws SQLException {

            String hql = "{call HE_SAVE_INFORME_POST(?,?,?,?,?,?,?,?,?)}";
            CallableStatement statement = connection.prepareCall(hql);
            statement.setLong(1, idpost);
            statement.setLong(2, idpersonal);
            statement.setString(3, estado);
            statement.setString(4, numero_informe);
            statement.setDate(5, (java.sql.Date) fecha_rec_proy);
            statement.setDate(6, (java.sql.Date) fecha_rec);
            statement.setDate(7, (java.sql.Date) fecha_info);
            statement.setDate(8, (java.sql.Date) fecha_act);
            statement.setString(9, obs);
            statement.execute();
            statement.close();
        }
    };

    session.doWork(work);

}

From source file:com.mimp.hibernate.HiberEtapa.java

public void updateInformePost(InformePostAdoptivo temp) {

    Session session = sessionFactory.getCurrentSession();

    final Long idinfo_post = temp.getIdinformePostAdoptivo();
    final Long idpost = temp.getPostAdopcion().getIdpostAdopcion();
    final Long idpersonal = temp.getPersonal().getIdpersonal();
    final String estado = temp.getEstado();
    final String numero_informe = temp.getNumeroInforme();
    final Date fecha_rec_proy = temp.getFechaRecepcionProyectado();
    final Date fecha_rec = temp.getFechaRecepcion();
    final Date fecha_info = temp.getFechaInforme();
    final Date fecha_act = temp.getFechaActa();
    final String obs = temp.getObs();

    Work work = new Work() {
        @Override//w  w  w .  j a  v  a2 s  .  c o  m
        public void execute(Connection connection) throws SQLException {

            String hql = "{call HE_UPDATE_INFO_POST(?,?,?,?,?,?,?,?,?,?)}";
            CallableStatement statement = connection.prepareCall(hql);
            statement.setLong(1, idinfo_post);
            statement.setLong(2, idpost);
            statement.setLong(3, idpersonal);
            statement.setString(4, estado);
            statement.setString(5, numero_informe);
            statement.setDate(6, (java.sql.Date) fecha_rec_proy);
            statement.setDate(7, (java.sql.Date) fecha_rec);
            statement.setDate(8, (java.sql.Date) fecha_info);
            statement.setDate(9, (java.sql.Date) fecha_act);
            statement.setString(10, obs);
            statement.execute();
            statement.close();
        }
    };

    session.doWork(work);

}

From source file:com.mimp.hibernate.HiberEtapa.java

public ArrayList<ExpedienteFamilia> getListaEspera() {

    Session session = sessionFactory.getCurrentSession();
    session.beginTransaction();/*w  ww. j a va 2  s.c  o  m*/

    final ArrayList<ExpedienteFamilia> allEspera = new ArrayList();

    Work work = new Work() {
        @Override
        public void execute(Connection connection) throws SQLException {

            String hql = "{call HE_GET_LISTA_ESPERA(?)}";
            CallableStatement statement = connection.prepareCall(hql);
            statement.registerOutParameter(1, OracleTypes.CURSOR);
            statement.execute();

            temp_expediente = (ResultSet) statement.getObject(1);

            while (temp_expediente.next()) {
                ExpedienteFamilia expFamilia = new ExpedienteFamilia();
                Familia fam = new Familia();
                Unidad unidad = new Unidad();
                Personal personal = new Personal();

                expFamilia.setIdexpedienteFamilia(temp_expediente.getLong(1));
                if (temp_expediente.getLong(2) != 0) {

                    String hql2 = "{call HE_GETFAMILIA(?, ?)}";
                    CallableStatement statement2 = connection.prepareCall(hql2);
                    statement2.setLong(1, temp_expediente.getLong(2));
                    statement2.registerOutParameter(2, OracleTypes.CURSOR);
                    statement2.execute();
                    temp2 = (ResultSet) statement2.getObject(2);
                    while (temp2.next()) {
                        fam.setIdfamilia(temp2.getLong(1));
                        expFamilia.setFamilia(fam);
                    }
                    temp2.close();
                    statement2.close();
                }
                if (temp_expediente.getLong(3) != 0) {

                    String hql3 = "{call HE_GET_UNIDAD(?, ?)}";
                    CallableStatement statement3 = connection.prepareCall(hql3);
                    statement3.setLong(1, temp_expediente.getLong(3));
                    statement3.registerOutParameter(2, OracleTypes.CURSOR);
                    statement3.execute();
                    temp2 = (ResultSet) statement3.getObject(2);
                    while (temp2.next()) {
                        unidad.setIdunidad(temp2.getLong(1));
                        unidad.setDepartamento(temp2.getString("DEPARTAMENTO"));
                        expFamilia.setUnidad(unidad);
                    }
                    temp2.close();
                    statement3.close();
                }
                expFamilia.setNumero(temp_expediente.getLong(4));
                expFamilia.setExpediente(temp_expediente.getString(5));
                expFamilia.setHt(temp_expediente.getString(6));
                expFamilia.setNumeroExpediente(temp_expediente.getString(7));
                expFamilia.setFechaIngresoDga(temp_expediente.getDate(8));
                expFamilia.setEstado(temp_expediente.getString(9));
                expFamilia.setTupa(temp_expediente.getDate(10));
                expFamilia.setNacionalidad(temp_expediente.getString(11));
                expFamilia.setRnsa(temp_expediente.getShort(12));
                expFamilia.setRnaa(temp_expediente.getShort(13));
                expFamilia.setTipoFamilia(temp_expediente.getString(14));
                expFamilia.setTipoListaEspera(temp_expediente.getString(15));
                expFamilia.setHtFicha(temp_expediente.getString(16));
                expFamilia.setnFicha(temp_expediente.getString(17));
                expFamilia.setFechaIngresoFicha(temp_expediente.getDate(18));

                Set<Evaluacion> listaEv = new HashSet<Evaluacion>();

                String hql2 = "{call HE_GET_LISTA_EVALUACIONES(?,?)}";
                CallableStatement statement2 = connection.prepareCall(hql2);
                statement2.setLong(1, expFamilia.getIdexpedienteFamilia());
                statement2.registerOutParameter(2, OracleTypes.CURSOR);
                statement2.execute();

                ResultSet rs2 = (ResultSet) statement2.getObject(2);

                while (rs2.next()) {
                    Evaluacion tempEval = new Evaluacion();
                    tempEval.setIdevaluacion(rs2.getLong("IDEVALUACION"));
                    tempEval.setExpedienteFamilia(expFamilia);

                    tempEval.setTipo(rs2.getString("TIPO"));
                    tempEval.setFechaAsignacion(rs2.getDate("FECHA_ASIGNACION"));
                    tempEval.setResultado(rs2.getString("RESULTADO"));
                    tempEval.setFechaResultado(rs2.getDate("FECHA_RESULTADO"));
                    tempEval.setObservacion(rs2.getString("OBSERVACION"));
                    tempEval.setSustento(rs2.getString("SUSTENTO"));
                    tempEval.setNDesignacion(rs2.getString("N_DESIGNACION"));
                    tempEval.setNumEval(rs2.getString("NUM_EVAL"));
                    Set<Resolucion> listaRe = new HashSet<Resolucion>();

                    if (tempEval.getTipo().equals("legal")) {

                        String hql3 = "{call HE_GET_RESOLUCION_APTA(?,?)}";
                        CallableStatement statement3 = connection.prepareCall(hql3);
                        statement3.setLong(1, tempEval.getIdevaluacion());
                        statement3.registerOutParameter(2, OracleTypes.CURSOR);
                        statement3.execute();

                        ResultSet rs3 = (ResultSet) statement3.getObject(2);

                        if (rs3.next()) {
                            Resolucion tempResol = new Resolucion();
                            tempResol.setIdresolucion(rs3.getLong("IDRESOLUCION"));
                            tempResol.setTipo(rs3.getString("TIPO"));
                            tempResol.setNumero(rs3.getString("NUMERO"));
                            tempResol.setFechaResol(rs3.getDate("FECHA_RESOL"));
                            tempResol.setFechaNotificacion(rs3.getDate("FECHA_NOTIFICACION"));
                            tempResol.setEvaluacion(tempEval);

                            listaRe.add(tempResol);

                        }
                        rs3.close();
                        statement3.close();

                    }

                    tempEval.setResolucions(listaRe);
                    listaEv.add(tempEval);

                }
                rs2.close();
                statement2.close();

                expFamilia.setEvaluacions(listaEv);
                allEspera.add(expFamilia);
            }
            temp_expediente.close();
            statement.close();
        }
    };

    session.doWork(work);

    return allEspera;
}