Example usage for org.hibernate Query setResultTransformer

List of usage examples for org.hibernate Query setResultTransformer

Introduction

In this page you can find the example usage for org.hibernate Query setResultTransformer.

Prototype

@Deprecated
Query<R> setResultTransformer(ResultTransformer transformer);

Source Link

Document

Set a strategy for handling the query results.

Usage

From source file:Compras.consultaPedido.java

private void r_autorizarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_r_autorizarActionPerformed
    if (this.r_autorizar.isSelected() == true) {
        session = HibernateUtil.getSessionFactory().openSession();
        try {/* ww  w .  jav  a  2s .  c om*/
            session.beginTransaction().begin();
            pedido = (Pedido) session.get(Pedido.class, Integer.parseInt(t_pedido.getText()));
            usr = (Usuario) session.get(Usuario.class, usr.getIdUsuario());
            if (usr.getAutorizarPedidos() == true) {
                if (pedido.getUsuarioByAutorizo2() == null
                        || pedido.getUsuarioByAutorizo2().getIdUsuario().compareTo(usr.getIdUsuario()) != 0) {
                    pedido.setUsuarioByAutorizo(usr);
                    Date fecha_autorizo = new Date();
                    DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
                    String valor = dateFormat.format(fecha_autorizo);
                    String[] fecha = valor.split("-");
                    String[] hora = fecha[2].split(":");
                    String[] aux = hora[0].split(" ");
                    fecha[2] = aux[0];
                    hora[0] = aux[1];
                    Calendar calendario = Calendar.getInstance();
                    calendario.set(Integer.parseInt(fecha[2]), Integer.parseInt(fecha[1]) - 1,
                            Integer.parseInt(fecha[0]), Integer.parseInt(hora[0]), Integer.parseInt(hora[1]),
                            Integer.parseInt(hora[2]));
                    pedido.setFechaAutorizo(calendario.getTime());
                    session.beginTransaction().commit();
                    busca();
                    this.b_compra.setEnabled(true);
                    this.b_pedidos.setEnabled(true);
                    session = HibernateUtil.getSessionFactory().openSession();
                    usr = (Usuario) session.get(Usuario.class, usr.getIdUsuario());
                    r_autorizar.setText(usr.getEmpleado().getNombre());
                    JOptionPane.showMessageDialog(this, "El pedido fue autorizado con exito");
                    session.close();
                } else {
                    this.r_autorizar.setSelected(false);
                    JOptionPane.showMessageDialog(this, "El mismo usuario no puede autorizar 2 veces");
                }
            } else {
                this.r_autorizar.setSelected(false);
                JOptionPane.showMessageDialog(this, "Acceso denegado");
            }
        } catch (Exception e) {
            e.printStackTrace();
            r_autorizar.setSelected(false);
            session.beginTransaction().rollback();
            JOptionPane.showMessageDialog(this, "Error al autorizar el pedido.");
        } finally {
            if (session.isOpen() == true)
                session.close();
        }
    } else//chacar si ya se recibio productos no quitar*******************
    {
        session = HibernateUtil.getSessionFactory().openSession();
        try {
            session.beginTransaction().begin();
            usr = (Usuario) session.get(Usuario.class, usr.getIdUsuario());
            pedido = (Pedido) session.get(Pedido.class, pedido.getIdPedido());
            if (usr.getAutorizarPedidos() == true
                    && pedido.getUsuarioByAutorizo().getIdUsuario().compareTo(usr.getIdUsuario()) == 0) {
                Query query2 = session.createSQLQuery(
                        "select ( (select if( sum(movimiento.cantidad) is null, 0, sum(movimiento.cantidad)) as can "
                                + "from movimiento inner join almacen on movimiento.id_almacen=almacen.id_almacen where id_pedido="
                                + pedido.getIdPedido()
                                + " and almacen.tipo_movimiento=1 and almacen.operacion in (1, 2, 3)) " + "- "
                                + "(select if( sum(movimiento.cantidad) is null, 0, sum(movimiento.cantidad)) as can "
                                + "from movimiento inner join almacen on movimiento.id_almacen=almacen.id_almacen where id_pedido="
                                + pedido.getIdPedido()
                                + " and almacen.tipo_movimiento=2 and almacen.operacion in (1, 2, 3))) as almacen;");
                query2.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
                ArrayList resp = (ArrayList) query2.list();
                java.util.HashMap map = (java.util.HashMap) resp.get(0);
                if (Double.parseDouble(map.get("almacen").toString()) == 0.0d) {
                    pedido.setUsuarioByAutorizo(null);
                    pedido.setFechaAutorizo(null);
                    session.beginTransaction().commit();
                    r_autorizar.setText("Autorizacion 1");
                    this.b_compra.setEnabled(true);
                    this.b_pedidos.setEnabled(true);
                    JOptionPane.showMessageDialog(this, "Se elimin la autorizacion del pedido con exito");
                } else {
                    this.r_autorizar.setSelected(true);
                    JOptionPane.showMessageDialog(this, "El pedido ya tiene movimientos en el almacen");
                }
            } else {
                this.r_autorizar.setSelected(true);
                JOptionPane.showMessageDialog(this, "Acceso denegado");
            }
        } catch (Exception e) {
            e.printStackTrace();
            this.r_autorizar.setSelected(true);
            session.beginTransaction().rollback();
            JOptionPane.showMessageDialog(this, "Error al al quitar la autorizacion del pedido.");
        } finally {
            if (session.isOpen() == true)
                session.close();
        }
    }
}

From source file:Compras.consultaPedido.java

private void r_autorizar2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_r_autorizar2ActionPerformed
    // TODO add your handling code here:
    if (this.r_autorizar2.isSelected() == true) {
        session = HibernateUtil.getSessionFactory().openSession();
        try {// www  .jav  a  2s  . co  m
            session.beginTransaction().begin();
            pedido = (Pedido) session.get(Pedido.class, Integer.parseInt(t_pedido.getText()));
            usr = (Usuario) session.get(Usuario.class, usr.getIdUsuario());
            if (usr.getAutorizarPedidos() == true) {
                if (pedido.getUsuarioByAutorizo() == null
                        || pedido.getUsuarioByAutorizo().getIdUsuario().compareTo(usr.getIdUsuario()) != 0) {
                    pedido.setUsuarioByAutorizo2(usr);
                    Date fecha_autorizo2 = new Date();
                    DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
                    String valor = dateFormat.format(fecha_autorizo2);
                    String[] fecha = valor.split("-");
                    String[] hora = fecha[2].split(":");
                    String[] aux = hora[0].split(" ");
                    fecha[2] = aux[0];
                    hora[0] = aux[1];
                    Calendar calendario = Calendar.getInstance();
                    calendario.set(Integer.parseInt(fecha[2]), Integer.parseInt(fecha[1]) - 1,
                            Integer.parseInt(fecha[0]), Integer.parseInt(hora[0]), Integer.parseInt(hora[1]),
                            Integer.parseInt(hora[2]));
                    pedido.setFechaAutorizo2(calendario.getTime());
                    session.beginTransaction().commit();
                    this.b_compra.setEnabled(true);
                    this.b_pedidos.setEnabled(true);
                    r_autorizar2.setText(usr.getEmpleado().getNombre());
                    JOptionPane.showMessageDialog(this, "El pedido fue autorizado con exito");
                } else {
                    r_autorizar2.setSelected(false);
                    JOptionPane.showMessageDialog(this, "El mismo usuario no puede autorizar 2 veces");
                }
            } else {
                r_autorizar2.setSelected(false);
                JOptionPane.showMessageDialog(this, "Acceso denegado");
            }
        } catch (Exception e) {
            e.printStackTrace();
            r_autorizar2.setSelected(false);
            session.beginTransaction().rollback();
            JOptionPane.showMessageDialog(this, "Error al autorizar el pedido.");
        } finally {
            if (session.isOpen() == true)
                session.close();
        }
    } else//chacar si ya se recibio productos no quitar*******************
    {
        session = HibernateUtil.getSessionFactory().openSession();
        try {
            session.beginTransaction().begin();
            pedido = (Pedido) session.get(Pedido.class, Integer.parseInt(t_pedido.getText()));
            usr = (Usuario) session.get(Usuario.class, usr.getIdUsuario());
            Query query2 = session.createSQLQuery(
                    "select ( (select if( sum(movimiento.cantidad) is null, 0, sum(movimiento.cantidad)) as can "
                            + "from movimiento inner join almacen on movimiento.id_almacen=almacen.id_almacen where id_pedido="
                            + pedido.getIdPedido()
                            + " and almacen.tipo_movimiento=1 and almacen.operacion in (1, 2, 3)) " + "- "
                            + "(select if( sum(movimiento.cantidad) is null, 0, sum(movimiento.cantidad)) as can "
                            + "from movimiento inner join almacen on movimiento.id_almacen=almacen.id_almacen where id_pedido="
                            + pedido.getIdPedido()
                            + " and almacen.tipo_movimiento=2 and almacen.operacion in (1, 2, 3))) as almacen;");
            query2.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
            ArrayList resp = (ArrayList) query2.list();
            java.util.HashMap map = (java.util.HashMap) resp.get(0);
            if (Double.parseDouble(map.get("almacen").toString()) == 0.0d) {
                if (usr.getAutorizarPedidos() == true
                        && pedido.getUsuarioByAutorizo2().getIdUsuario().compareTo(usr.getIdUsuario()) == 0) {
                    pedido.setUsuarioByAutorizo2(null);
                    pedido.setFechaAutorizo2(null);
                    session.beginTransaction().commit();
                    r_autorizar2.setText("Autorizacion 2");
                    this.b_compra.setEnabled(true);
                    this.b_pedidos.setEnabled(true);
                    JOptionPane.showMessageDialog(this, "Se elimin la autorizacin del pedido con exito");
                } else {
                    r_autorizar2.setSelected(true);
                    JOptionPane.showMessageDialog(this, "Acceso denegado");
                }
            } else {
                r_autorizar2.setSelected(true);
                JOptionPane.showMessageDialog(this, "El pedido ya tiene movimientos en el almacen");
            }
        } catch (Exception e) {
            e.printStackTrace();
            r_autorizar2.setSelected(true);
            session.beginTransaction().rollback();
            JOptionPane.showMessageDialog(this, "Error al al quitar la autorizacin del pedido.");
        } finally {
            if (session.isOpen() == true)
                session.close();
        }
    }
}

From source file:Compras.EliminaPedido.java

private void b_eliminarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_b_eliminarActionPerformed

    if (this.usr.getEliminaPedidos() == true) {
        if (t_pedido.getText().compareTo("") != 0) {
            if (r_autorizar.isSelected() == false && r_autorizar2.isSelected() == false) {
                int opt = JOptionPane.showConfirmDialog(this, "Confirma que deseas eliminar el pedido!");
                if (opt == 0) {
                    session = HibernateUtil.getSessionFactory().openSession();
                    try {
                        session.beginTransaction().begin();
                        Pedido ped = (Pedido) session.get(Pedido.class, Integer.parseInt(t_pedido.getText()));

                        //ver si tiene entradas 
                        String consulta = "select id_pedido as id, " + "if(tipo_pedido='Interno', "
                                + "(select if( sum(movimiento.cantidad) is null, 0, sum(movimiento.cantidad)) as can from partida inner join movimiento on partida.id_partida=movimiento.id_partida inner join almacen on movimiento.id_almacen=almacen.id_almacen where partida.id_pedido=id and almacen.tipo_movimiento=1 and almacen.operacion=1) "
                                + "-(select if( sum(movimiento.cantidad) is null, 0, sum(movimiento.cantidad)) as can from partida inner join movimiento on partida.id_partida=movimiento.id_partida inner join almacen on movimiento.id_almacen=almacen.id_almacen where partida.id_pedido=id and almacen.tipo_movimiento=2 and almacen.operacion=1), "
                                + " (select if( sum(movimiento.cantidad) is null, 0, sum(movimiento.cantidad)) as can from partida_externa inner join movimiento on partida_externa.id_partida_externa=movimiento.id_externos inner join almacen on movimiento.id_almacen=almacen.id_almacen where partida_externa.id_pedido=id and almacen.tipo_movimiento=1 and almacen.operacion in (2, 3)) "
                                + "-(select if( sum(movimiento.cantidad) is null, 0, sum(movimiento.cantidad)) as can from partida_externa inner join movimiento on partida_externa.id_partida_externa=movimiento.id_externos inner join almacen on movimiento.id_almacen=almacen.id_almacen where partida_externa.id_pedido=id and almacen.tipo_movimiento=2 and almacen.operacion in (2, 3)) ) as almacen2 "
                                + "from pedido inner join empleado on pedido.comprador=empleado.id_empleado where pedido.id_pedido = '"
                                + t_pedido.getText() + "'";
                        Query query = session.createSQLQuery(consulta);
                        query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
                        ArrayList pedidos = (ArrayList) query.list();
                        double existencias = 0.0d;
                        for (int a = 0; a < pedidos.size(); a++) {
                            java.util.HashMap map = (java.util.HashMap) pedidos.get(a);
                            existencias = Double.parseDouble(map.get("almacen2").toString());
                        }/* ww w . j  a  v  a2s .  c  o m*/
                        if (existencias == 0.0d) {
                            if (c_tipo.getSelectedItem().toString().compareTo("Interno") == 0) {
                                Partida[] partidas = (Partida[]) ped.getPartidas().toArray(new Partida[0]);
                                for (int ren = 0; ren < partidas.length; ren++) {
                                    partidas[ren].setPedido(null);
                                    session.update(partidas[ren]);
                                }
                                ped = (Pedido) session.get(Pedido.class, Integer.parseInt(t_pedido.getText()));
                                Almacen[] almacen = (Almacen[]) ped.getAlmacens().toArray(new Almacen[0]);
                                for (int alm = 0; alm < ped.getAlmacens().size(); alm++) {
                                    session.delete(almacen[alm]);
                                }
                                session.delete(ped);
                                session.beginTransaction().commit();
                                h = new Herramientas(usr, menu);
                                h.session(sessionPrograma);
                                h.desbloqueaOrden();
                                h.desbloqueaPedido();
                                JOptionPane.showMessageDialog(this, "Pedido eliminado!");
                                Integral padre = (Integral) this.getTopLevelAncestor();
                                int pos = 0;
                                for (int a = 0; a < padre.P_pestana.getTabCount(); a++) {
                                    if (padre.P_pestana.getTitleAt(a).compareTo("Eliminar Pedido") == 0)
                                        pos = a;
                                }
                                if (pos >= 0)
                                    padre.P_pestana.remove(pos);
                            }
                            if (c_tipo.getSelectedItem().toString().compareTo("Externo") == 0) {
                                OrdenExterna ordex = (OrdenExterna) session.get(OrdenExterna.class,
                                        ped.getOrdenExterna().getIdOrden());
                                session.delete(ordex);
                                Almacen[] almacen = (Almacen[]) ped.getAlmacens().toArray(new Almacen[0]);
                                for (int alm = 0; alm < ped.getAlmacens().size(); alm++) {
                                    session.delete(almacen[alm]);
                                }
                                session.delete(ped);
                                session.beginTransaction().commit();
                                h = new Herramientas(usr, menu);
                                h.session(sessionPrograma);
                                h.desbloqueaOrden();
                                h.desbloqueaPedido();
                                JOptionPane.showMessageDialog(this, "Pedido eliminado!");
                                Integral padre = (Integral) this.getTopLevelAncestor();
                                int pos = 0;
                                for (int a = 0; a < padre.P_pestana.getTabCount(); a++) {
                                    if (padre.P_pestana.getTitleAt(a).compareTo("Eliminar Pedido") == 0)
                                        pos = a;
                                }
                                if (pos >= 0)
                                    padre.P_pestana.remove(pos);
                            }
                            if (c_tipo.getSelectedItem().toString().compareTo("Adicional") == 0) {
                                Almacen[] almacen = (Almacen[]) ped.getAlmacens().toArray(new Almacen[0]);
                                for (int alm = 0; alm < ped.getAlmacens().size(); alm++) {
                                    session.delete(almacen[alm]);
                                }
                                session.delete(ped);
                                session.beginTransaction().commit();
                                h = new Herramientas(usr, menu);
                                h.session(sessionPrograma);
                                h.desbloqueaOrden();
                                h.desbloqueaPedido();
                                JOptionPane.showMessageDialog(this, "Pedido eliminado!");
                                Integral padre = (Integral) this.getTopLevelAncestor();
                                int pos = 0;
                                for (int a = 0; a < padre.P_pestana.getTabCount(); a++) {
                                    if (padre.P_pestana.getTitleAt(a).compareTo("Eliminar Pedido") == 0)
                                        pos = a;
                                }
                                if (pos >= 0)
                                    padre.P_pestana.remove(pos);
                            }
                        } else {
                            JOptionPane.showMessageDialog(this,
                                    "El pedido tiene " + existencias + " en el almacen!");
                        }
                    } catch (Exception e) {
                        e.printStackTrace();
                        session.getTransaction().rollback();
                        JOptionPane.showMessageDialog(this, "Error al eliminar el pedido!");
                    } finally {
                        if (session.isOpen())
                            session.close();
                    }
                }
            } else
                JOptionPane.showMessageDialog(this, "No se puede eliminar pedidos autorizados!");
        } else
            JOptionPane.showMessageDialog(this, "Seleccione primero un pedido!");
    } else
        JOptionPane.showMessageDialog(null, "Acceso denegado!");
}

From source file:Contabilidad.asiento1.java

public void llena_cuentas() {
    Session session = HibernateUtil.getSessionFactory().openSession();
    try {/*from  www .ja  v a2  s  . com*/
        Query query = session.createSQLQuery("select id_cuentas, saldo, nombre from cuentas;");
        query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
        ArrayList datos = (ArrayList) query.list();
        cuenta = new DefaultTableModel(null, getColumnas_Cuentas());
        tabla_cuentas.setModel(cuenta);
        if (datos.size() > 0) {
            cuenta.getDataVector().removeAllElements();
            Object[] objeto = new Object[3];

            for (int i = 0; i < datos.size(); i++) {
                java.util.HashMap map = (java.util.HashMap) datos.get(i);
                objeto[0] = map.get("id_cuentas");
                objeto[1] = map.get("saldo");
                objeto[2] = map.get("nombre");
                cuenta.addRow(objeto);
            }
        } else {
            cuenta = new DefaultTableModel(null, getColumnas_Cuentas());
            tabla_cuentas.setModel(cuenta);

        }
    } catch (Exception e) {
        e.printStackTrace();
    } finally {
        if (session.isOpen() == true) {
            session.close();
        }
    }
}

From source file:Contabilidad.Egresos.java

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
    // TODO add your handling code here:
    Session session = HibernateUtil.getSessionFactory().openSession();
    try {/*from w  ww .  j  a v a 2  s .c  om*/
        ArrayList listaConsulta = new ArrayList();
        ArrayList listaProveedor = new ArrayList();
        session.beginTransaction().begin();
        Query query_proveedor = session.createSQLQuery(
                "select distinct reclamo.id_proveedor as id, proveedor.cta_prov as cta FROM reclamo LEFT JOIN asiento on reclamo.id_reclamo=asiento.id_reclamo left join proveedor on proveedor.id_proveedor=reclamo.id_proveedor where asiento.excel_pago is null;");
        query_proveedor.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
        listaProveedor = (ArrayList) query_proveedor.list();

        lista = new ArrayList();
        cb_poliza.removeAllItems();
        cb_poliza.addItem("TODAS");
        t_mes.setText("");

        panel_pago.removeAll();
        panel_pago.repaint();
        panel_pago.updateUI();

        for (int li = 0; li < listaProveedor.size(); li++) {
            Query qr = session.createSQLQuery(
                    "select if(max(poliza)+1 is null, 1, max(poliza)+1) as poliza from excel where year(fecha)=year(now()) and month(fecha)=month(now()) and tipo='Eg';");
            qr.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
            listaConsulta = (ArrayList) qr.list();
            java.util.HashMap poliza = (java.util.HashMap) listaConsulta.get(0);

            java.util.HashMap proveedor = (java.util.HashMap) listaProveedor.get(li);
            Query query = session.createQuery(
                    "SELECT DISTINCT asi FROM Asiento asi LEFT JOIN asi.reclamo rec where asi.usuarioPago is null AND rec.pagoReclamo is not null AND rec.proveedor.idProveedor="
                            + proveedor.get("id").toString());
            Asiento[] lista_asientos = (Asiento[]) query.list().toArray(new Asiento[0]);
            System.out.println(lista_asientos.length);
            if (lista_asientos.length > 0) {
                cb_poliza.addItem(poliza.get("poliza").toString());
                Date fecha = new Date();
                Calendar calendario = Calendar.getInstance();
                t_mes.setText("" + (calendario.get(Calendar.MONTH) + 1));

                Excel excel = new Excel();
                for (i = 0; i < lista_asientos.length; i++) {
                    Registro[] registros_d = (Registro[]) session.createCriteria(Registro.class)
                            .createAlias("asiento", "asc")
                            .add(Restrictions.eq("asc.idAsiento", lista_asientos[i].getIdAsiento()))
                            .add(Restrictions.eq("tipoAsiento", "Dr")).add(Restrictions.eq("tipo", "d"))
                            .addOrder(Order.desc("tipo")).addOrder(Order.asc("idRegistro")).list()
                            .toArray(new Registro[0]);
                    Registro[] registros_a = (Registro[]) session.createCriteria(Registro.class)
                            .createAlias("asiento", "asc")
                            .add(Restrictions.eq("asc.idAsiento", lista_asientos[i].getIdAsiento()))
                            .add(Restrictions.eq("tipoAsiento", "Dr")).add(Restrictions.eq("tipo", "a"))
                            .add(Restrictions.like("cuentas.idCuentas", "2110-", MatchMode.START))
                            .addOrder(Order.desc("tipo")).addOrder(Order.asc("idRegistro")).list()
                            .toArray(new Registro[0]);
                    usr = (Usuario) session.get(Usuario.class, usr.getIdUsuario());

                    ArchivoFactura factura = (ArchivoFactura) session.createCriteria(ArchivoFactura.class)
                            .createAlias("reclamo", "rec")
                            .add(Restrictions.eq("rec.idReclamo",
                                    lista_asientos[i].getReclamo().getIdReclamo()))
                            .add(Restrictions.eq("estatus", "v")).uniqueResult();
                    ArchivoNota nota = (ArchivoNota) session.createCriteria(ArchivoNota.class)
                            .createAlias("reclamo", "rec")
                            .add(Restrictions.eq("rec.idReclamo",
                                    lista_asientos[i].getReclamo().getIdReclamo()))
                            .add(Restrictions.eq("estatus", "v")).uniqueResult();

                    Cuentas gastos_pagados = (Cuentas) session.createCriteria(Cuentas.class)
                            .add(Restrictions.eq("idCuentas", "6100-000-000")).uniqueResult();
                    Cuentas iva_gastos_16 = (Cuentas) session.createCriteria(Cuentas.class)
                            .add(Restrictions.eq("idCuentas", "1191-005-000")).uniqueResult();
                    Cuentas comp_pag_16 = (Cuentas) session.createCriteria(Cuentas.class)
                            .add(Restrictions.eq("idCuentas", "5200-002-000")).uniqueResult();
                    Cuentas iva_comp_16 = (Cuentas) session.createCriteria(Cuentas.class)
                            .add(Restrictions.eq("idCuentas", "1191-004-000")).uniqueResult();
                    Cuentas cuenta_proveedor = (Cuentas) session.get(Cuentas.class,
                            proveedor.get("cta").toString());
                    PagoReclamo pagoReclamo = lista_asientos[i].getReclamo().getPagoReclamo();
                    //sacar la cuenta de pago reclamo agregar liga
                    Cuentas bancos = (Cuentas) session.createCriteria(Cuentas.class)
                            .add(Restrictions.eq("idCuentas", "1120-001-000")).uniqueResult();

                    if (i == 0)//Registro del excel
                    {
                        excel.setPoliza(Integer.parseInt(poliza.get("poliza").toString()));
                        excel.setFecha(fecha);
                        excel.setConcepto("Pago a proveedores");
                        excel.setTipo("Eg");
                        session.save(excel);
                    }
                    //Registro de Asiento
                    Asiento asiento = (Asiento) session.get(Asiento.class, lista_asientos[i].getIdAsiento());
                    asiento.setFechaPago(fecha);
                    asiento.setUsuarioPago(usr);
                    asiento.setExcelPago(excel);
                    session.update(asiento);

                    //***************Registro de Asientos************************
                    double suma = 0.0d;
                    for (int h = 0; h < registros_d.length; h++) {
                        Cuentas aux = (Cuentas) session.get(Cuentas.class,
                                registros_d[h].getCuentas().getIdCuentas());
                        if (aux.getIdCuentas().compareTo(cuenta_proveedor.getIdCuentas()) != 0) {
                            Registro registro = new Registro();
                            registro.setAsiento(asiento);
                            registro.setCuentas(aux);
                            registro.setDepto("0");
                            registro.setConcepto(aux.getNombre());
                            registro.setCantidad(BigDecimal.valueOf(registros_d[h].getCantidad())
                                    .setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
                            registro.setCambio(registros_d[h].getCambio());
                            registro.setTipo("a");
                            registro.setTipoAsiento("Eg");
                            session.save(registro);

                            if (aux.getIdCuentas().compareTo("5300-002-000") == 0) {
                                Registro reg_compra_pago_16 = new Registro();
                                reg_compra_pago_16.setAsiento(asiento);
                                reg_compra_pago_16.setCuentas(comp_pag_16);
                                reg_compra_pago_16.setDepto("0");
                                reg_compra_pago_16.setConcepto(comp_pag_16.getNombre());
                                reg_compra_pago_16.setCantidad(BigDecimal.valueOf(registros_d[h].getCantidad())
                                        .setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
                                reg_compra_pago_16.setCambio(registros_d[h].getCambio());
                                reg_compra_pago_16.setTipo("d");
                                reg_compra_pago_16.setTipoAsiento("Eg");
                                session.save(reg_compra_pago_16);

                                Registro reg_iva_compra_pago_16 = new Registro();
                                reg_iva_compra_pago_16.setAsiento(asiento);
                                reg_iva_compra_pago_16.setCuentas(iva_comp_16);
                                reg_iva_compra_pago_16.setDepto("0");
                                reg_iva_compra_pago_16.setConcepto(iva_comp_16.getNombre());
                                reg_iva_compra_pago_16
                                        .setCantidad(BigDecimal.valueOf(registros_d[h].getCantidad() * 0.16d)
                                                .setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
                                reg_iva_compra_pago_16.setCambio(registros_d[h].getCambio());
                                reg_iva_compra_pago_16.setTipo("d");
                                reg_iva_compra_pago_16.setTipoAsiento("Eg");
                                session.save(reg_iva_compra_pago_16);
                            } else {
                                if (aux.getIdCuentas().contains("1190-") == false) {
                                    suma += registros_d[h].getCantidad();
                                }
                            }
                        }
                    }
                    for (int g = 0; g < registros_a.length; g++) {
                        System.out.println(registros_a[g].getConcepto());
                        Cuentas prov = (Cuentas) session.get(Cuentas.class,
                                registros_a[g].getCuentas().getIdCuentas());
                        Registro reg_proveedor = new Registro();
                        reg_proveedor.setAsiento(asiento);
                        reg_proveedor.setCuentas(prov);
                        reg_proveedor.setDepto("0");
                        reg_proveedor.setConcepto(prov.getNombre());
                        reg_proveedor.setCantidad(BigDecimal.valueOf(pagoReclamo.getCantidad())
                                .setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
                        reg_proveedor.setCambio(1.00d);
                        reg_proveedor.setTipo("d");
                        reg_proveedor.setTipoAsiento("Eg");
                        session.save(reg_proveedor);

                        Registro reg_bancos = new Registro();
                        reg_bancos.setAsiento(asiento);
                        reg_bancos.setCuentas(bancos);
                        reg_bancos.setDepto("0");
                        reg_bancos.setConcepto("BANCOS");
                        reg_bancos.setCantidad(BigDecimal.valueOf(pagoReclamo.getCantidad())
                                .setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
                        reg_bancos.setCambio(1.00d);
                        reg_bancos.setTipo("a");
                        reg_bancos.setTipoAsiento("Eg");
                        session.save(reg_bancos);
                    }
                    if (suma > 0.0d) {
                        Registro reg_gasto = new Registro();
                        reg_gasto.setAsiento(asiento);
                        reg_gasto.setCuentas(gastos_pagados);
                        reg_gasto.setDepto("0");
                        reg_gasto.setConcepto(gastos_pagados.getNombre());
                        reg_gasto.setCantidad(
                                BigDecimal.valueOf(suma).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
                        reg_gasto.setCambio(1.00d);
                        reg_gasto.setTipo("d");
                        reg_gasto.setTipoAsiento("Eg");
                        session.save(reg_gasto);

                        Registro reg_iva_gasto = new Registro();
                        reg_iva_gasto.setAsiento(asiento);
                        reg_iva_gasto.setCuentas(iva_gastos_16);
                        reg_iva_gasto.setDepto("0");
                        reg_iva_gasto.setConcepto(iva_gastos_16.getNombre());
                        reg_iva_gasto.setCantidad(BigDecimal.valueOf(suma * 0.16d)
                                .setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
                        reg_iva_gasto.setCambio(1.00d);
                        reg_iva_gasto.setTipo("d");
                        reg_iva_gasto.setTipoAsiento("Eg");
                        session.save(reg_iva_gasto);
                    }
                    lista.add(asiento);
                }
            }
        }
        session.beginTransaction().commit();
        for (int l = 0; l < lista.size(); l++) {
            Asiento aux = (Asiento) lista.get(l);
            asiento1 m = new asiento1(this.usr, aux, i, estado, this.sessionPrograma, "Eg");
            panel_pago.add(m);
            m.setVisible(true);
        }
        panel_pago.setAutoscrolls(true);
        panel_pago.repaint();
        panel_pago.updateUI();
    } catch (Exception e) {
        session.beginTransaction().rollback();
        cb_poliza.removeAllItems();
        t_mes.setText("");
        panel_pago.removeAll();
        panel_pago.setAutoscrolls(true);
        panel_pago.repaint();
        panel_pago.updateUI();
        e.printStackTrace();
    }
    if (session != null)
        if (session.isOpen())
            session.close();
}

From source file:Contabilidad.Provision.java

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
    // TODO add your handling code here:
    Session session = HibernateUtil.getSessionFactory().openSession();
    try {//www  .  j a v a 2  s  .c o m
        ArrayList listaConsulta = new ArrayList();
        ArrayList listaProveedor = new ArrayList();
        session.beginTransaction().begin();
        Query query_proveedor = session.createSQLQuery(
                "select distinct reclamo.id_proveedor as id FROM reclamo LEFT JOIN asiento on reclamo.id_reclamo=asiento.id_reclamo where reclamo.fecha_aceptado is not null AND asiento.id_reclamo is null");
        query_proveedor.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
        listaProveedor = (ArrayList) query_proveedor.list();

        lista = new ArrayList();
        cb_poliza.removeAllItems();
        cb_poliza.addItem("TODAS");
        t_mes.setText("");

        panel_provision.removeAll();
        panel_provision.setAutoscrolls(true);
        panel_provision.repaint();
        panel_provision.updateUI();

        for (int li = 0; li < listaProveedor.size(); li++) {
            Query qr = session.createSQLQuery(
                    "select if(max(poliza)+1 is null, 1, max(poliza)+1) as poliza from excel where year(fecha)=year(now()) and month(fecha)=month(now()) and tipo='Dr';");
            qr.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
            listaConsulta = (ArrayList) qr.list();
            java.util.HashMap poliza = (java.util.HashMap) listaConsulta.get(0);

            java.util.HashMap proveedor = (java.util.HashMap) listaProveedor.get(li);
            Query query = session.createQuery(
                    "SELECT DISTINCT rec FROM Reclamo rec LEFT JOIN FETCH rec.asientos lista where rec.fechaAceptado is not null AND lista.reclamo is null and rec.proveedor.idProveedor="
                            + proveedor.get("id").toString());
            Reclamo[] rec = (Reclamo[]) query.list().toArray(new Reclamo[0]);

            if (rec.length > 0) {
                cb_poliza.addItem(poliza.get("poliza").toString());
                Date fecha = new Date();
                Calendar calendario = Calendar.getInstance();
                t_mes.setText("" + (calendario.get(Calendar.MONTH) + 1));

                Excel excel = new Excel();
                for (i = 0; i < rec.length; i++) {
                    Reclamo rec1 = rec[i];
                    usr = (Usuario) session.get(Usuario.class, usr.getIdUsuario());

                    Cuentas cuenta_prov = rec1.getProveedor().getCuentasByCtaProv();
                    Cuentas cuenta_gasto = rec1.getProveedor().getCuentasByCtaGasto();
                    ArchivoFactura factura = (ArchivoFactura) session.createCriteria(ArchivoFactura.class)
                            .createAlias("reclamo", "rec")
                            .add(Restrictions.eq("rec.idReclamo", rec1.getIdReclamo()))
                            .add(Restrictions.eq("estatus", "v")).uniqueResult();
                    ArchivoNota nota = (ArchivoNota) session.createCriteria(ArchivoNota.class)
                            .createAlias("reclamo", "rec")
                            .add(Restrictions.eq("rec.idReclamo", rec1.getIdReclamo()))
                            .add(Restrictions.eq("estatus", "v")).uniqueResult();
                    Cuentas iva_x_acreditar = (Cuentas) session.createCriteria(Cuentas.class)
                            .add(Restrictions.eq("idCuentas", "1190-002-000")).uniqueResult();
                    Cuentas iva_compras = (Cuentas) session.createCriteria(Cuentas.class)
                            .add(Restrictions.eq("idCuentas", "1191-004-000")).uniqueResult();

                    if (i == 0)//Registro del excel
                    {
                        excel.setPoliza(Integer.parseInt(poliza.get("poliza").toString()));
                        excel.setFecha(fecha);
                        excel.setConcepto("Provision de pagos");
                        excel.setTipo("Dr");
                        session.save(excel);
                    }
                    //Registro de Asiento
                    Asiento asiento = new Asiento();
                    asiento.setReclamo(rec[i]);
                    asiento.setFechaProvision(fecha);
                    asiento.setUsuarioProvision(usr);
                    asiento.setExcelProvision(excel);
                    session.save(asiento);

                    //***************Registro de Asientos************************
                    //registro de compras
                    Registro r1 = new Registro();
                    r1.setAsiento(asiento);
                    r1.setCuentas(cuenta_gasto);
                    r1.setDepto("0");
                    r1.setConcepto("REC:" + factura.getReclamo().getIdReclamo() + " FAC:" + factura.getFolio()
                            + " " + factura.getReclamo().getProveedor().getNombre());
                    r1.setCantidad(BigDecimal.valueOf(factura.getSubTotal())
                            .setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
                    r1.setCambio(factura.getCambio());
                    r1.setTipo("d");
                    r1.setTipoAsiento("Dr");
                    session.save(r1);

                    //registro de iva
                    Registro r2 = new Registro();
                    r2.setAsiento(asiento);
                    r2.setCuentas(iva_x_acreditar);
                    r2.setDepto("0");
                    r2.setConcepto(iva_x_acreditar.getNombre());
                    r2.setCantidad(BigDecimal.valueOf(factura.getIva()).setScale(2, BigDecimal.ROUND_HALF_UP)
                            .doubleValue());
                    r2.setCambio(factura.getCambio());
                    r2.setTipo("d");
                    r2.setTipoAsiento("Dr");
                    session.save(r2);

                    //Registro de proveedores
                    double total = factura.getIva() + factura.getSubTotal();
                    Registro r3 = new Registro();
                    r3.setAsiento(asiento);
                    r3.setCuentas(cuenta_prov);
                    r3.setDepto("0");
                    r3.setConcepto(cuenta_prov.getNombre());
                    r3.setCantidad(
                            BigDecimal.valueOf(total).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
                    r3.setCambio(factura.getCambio());
                    r3.setTipo("a");
                    r3.setTipoAsiento("Dr");
                    session.save(r3);

                    if (nota != null) {
                        //Registro de proveedores
                        double total_nota = nota.getIva() + nota.getSubTotal();
                        Registro r4 = new Registro();
                        r4.setAsiento(asiento);
                        r4.setCuentas(cuenta_prov);
                        r4.setDepto("0");
                        r4.setConcepto(cuenta_prov.getNombre());
                        r4.setCantidad(BigDecimal.valueOf(total_nota).setScale(2, BigDecimal.ROUND_HALF_UP)
                                .doubleValue());
                        r4.setCambio(factura.getCambio());
                        r4.setTipo("d");
                        r4.setTipoAsiento("Dr");
                        session.save(r4);

                        //registro de compras
                        Cuentas dev_compra = (Cuentas) session.createCriteria(Cuentas.class)
                                .add(Restrictions.eq("idCuentas", "5400-001-000")).uniqueResult();
                        Registro r5 = new Registro();
                        r5.setAsiento(asiento);
                        r5.setCuentas(dev_compra);
                        r5.setDepto("0");
                        r5.setConcepto(dev_compra.getNombre());
                        r5.setCantidad(BigDecimal.valueOf(nota.getSubTotal())
                                .setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue());
                        r5.setCambio(nota.getCambio());
                        r5.setTipo("a");
                        r5.setTipoAsiento("Dr");
                        session.save(r5);

                        //registro de iva
                        Registro r6 = new Registro();
                        r6.setAsiento(asiento);
                        r6.setCuentas(iva_compras);
                        r6.setDepto("0");
                        r6.setConcepto(iva_compras.getNombre());
                        r6.setCantidad(BigDecimal.valueOf(nota.getIva()).setScale(2, BigDecimal.ROUND_HALF_UP)
                                .doubleValue());
                        r6.setCambio(nota.getCambio());
                        r6.setTipo("a");
                        r6.setTipoAsiento("Dr");
                        session.save(r6);
                    }
                    lista.add(asiento);
                }
            }
        }
        session.beginTransaction().commit();
        for (int l = 0; l < lista.size(); l++) {
            Asiento aux = (Asiento) lista.get(l);
            asiento1 m = new asiento1(this.usr, aux, i, estado, this.sessionPrograma, "Dr");
            panel_provision.add(m);
            m.setVisible(true);
        }
        panel_provision.setAutoscrolls(true);
        panel_provision.repaint();
        panel_provision.updateUI();
    } catch (Exception e) {
        session.beginTransaction().rollback();
        cb_poliza.removeAllItems();
        t_mes.setText("");
        panel_provision.removeAll();
        panel_provision.setAutoscrolls(true);
        panel_provision.repaint();
        panel_provision.updateUI();
        e.printStackTrace();
    }
    if (session != null)
        if (session.isOpen())
            session.close();
}

From source file:core.dao.PagesDAOHibernate.java

License:Apache License

@Override
@Transactional(readOnly = true)/*from   w  w  w .jav a  2s .  c o  m*/
public List<T> getPagesChildrenRecurciveOrderedWhere(String[] properties, String[] propPseudonyms,
        String[] propertyNames, Object[][] propertyValues, String[] orderBy, String[] orderHow, Long first_id) {
    //creating table for results
    List<T> rez = new ArrayList<T>();
    AliasToBeanResultTransformer pagesTransformer = new AliasToBeanResultTransformer(persistentClass);
    //forming HQL-----------------------------------------------------------
    StringBuilder baseHQL = new StringBuilder();
    common.hibernate.HQLPartGenerator.getValuesListWithAliases(properties, propPseudonyms, baseHQL);
    baseHQL.append(" FROM ");
    baseHQL.append(this.entityName);
    common.hibernate.HQLPartGenerator.getWhereManyColumnsManyValues(propertyNames, propertyValues, baseHQL);
    //----------------------------------------------------------------------
    Session sess = this.getSessionFactory().getCurrentSession();
    List<T> temp;
    {
        //selecting base entities
        StringBuilder hql = new StringBuilder(baseHQL);
        if (propertyNames == null)
            hql.append(" WHERE");
        else
            hql.append(" AND");
        if (first_id == null) {
            hql.append(" id_pages is null");
        } else {
            hql.append(" id = ");
            hql.append(first_id);
        }
        common.hibernate.HQLPartGenerator.getOrderBy(orderBy, orderHow, hql);

        Query q = sess.createQuery(hql.toString());
        common.hibernate.HQLPartGenerator.appendWherePropertiesValues(propertyValues, q);

        temp = q.setResultTransformer(pagesTransformer).list();
    }

    //deleting instance with given id and setting layer
    for (int i = 0; i < temp.size(); i++) {
        temp.get(i).setLayer(Long.valueOf(0));
    }

    //completing hql forming
    if (propertyNames == null)
        baseHQL.append(" WHERE");
    else
        baseHQL.append(" AND");
    baseHQL.append(" id_pages = :id_pages");
    common.hibernate.HQLPartGenerator.getOrderBy(orderBy, orderHow, baseHQL);
    String hql = baseHQL.toString();
    baseHQL = null;

    while (temp.size() > 0) {
        //getting first element
        T currRow = temp.remove(0);

        Query q = sess.createQuery(hql.toString());
        common.hibernate.HQLPartGenerator.appendWherePropertiesValues(propertyValues, q);
        List<T> children = q.setParameter("id_pages", currRow.getId()).setResultTransformer(pagesTransformer)
                .list();

        //setting layer
        for (int i = 0; i < children.size(); i++) {
            children.get(i).setLayer(currRow.getLayer() + 1);
        }
        temp.addAll(0, children);
        rez.add(currRow);
    }
    return rez;
}

From source file:corner.orm.hibernate.impl.PaginatedEntityService.java

License:Apache License

/**
 * /*from   w  w w.j  ava 2s  .  c  om*/
 * magic paginate method.
 * eg:
 * <code>
 *  options.setPage(2);
 *
 *
 *  paginate(Member.class,new Object[]{"email=?","asdf@asdf.net"},"userName desc",options)
        
 *  paginate(Member.class,"email='asdf@asdf.net'","userName desc",options)
 *
 *  List conditions = new ArrayList();
 *  conditions.add("userName=? and password=?");
 *  conditions.add(userName);
 *  conditions.add(password);
 *  paginate(Member.class,conditions,"userName desc",options)
 * 
 * </code>
 * Magic conditions query criteria
 * @param persistClass persistence class
 * @param conditions query criteria
 * @param order order by sql
 * @param options pagination options.
 * @return include result and totalRecord.
 */
public PaginationList paginate(final Class<?> persistClass, final Object conditions, final String order,
        final PaginationOptions options) {
    final Iterable con = typeCoercer.coerce(conditions, Iterable.class);

    return (PaginationList) this.template.execute(new HibernateCallback() {
        /**
         * @see org.springframework.orm.hibernate3.HibernateCallback#doInHibernate(org.hibernate.Session)
         */
        @Override
        public Object doInHibernate(Session session) throws HibernateException, SQLException {
            final Iterator it = con == null ? null : con.iterator();

            String conditionHQL = buildConditionHQL(persistClass, it).toString();

            //query list
            final StringBuffer queryHQL = new StringBuffer(conditionHQL);
            appendOrder(queryHQL, order);
            queryHQL.insert(0, SELECT_ID_CLAUSE);

            Query query = session.createQuery(queryHQL.toString());

            //count query
            final StringBuffer countHQL = new StringBuffer(conditionHQL);
            countHQL.insert(0, "select count(*) ");
            Query countQuery = session.createQuery(countHQL.toString());

            if (it != null) {
                int i = 0;
                while (it.hasNext()) {
                    Object obj = it.next();
                    query.setParameter(i, obj);
                    countQuery.setParameter(i, obj);
                    i++;
                }
            }
            //get perpage
            int perPage = options.getPerPage();
            int page = options.getPage();
            if (page < 1) {
                page = 1;
            }
            query.setFirstResult((page - 1) * perPage);
            query.setMaxResults(perPage);
            //query total record number
            options.setTotalRecord((Long) countQuery.iterate().next());

            ResultTransformer transformer = new LazyLoadEntityTransformer(session, persistClass);
            query.setResultTransformer(transformer);

            PaginationList list = new PaginationList(query.list().iterator(), options);

            return list;

        }
    });
}

From source file:corner.orm.hibernate.impl.PaginatedEntityService.java

License:Apache License

public Iterator find(final Class<?> persistClass, final Object conditions, final String order, final int start,
        final int offset) {
    return (Iterator) this.template.execute(new HibernateCallback() {
        /**/*  w ww.j av a  2 s.  c o  m*/
         * @see org.springframework.orm.hibernate3.HibernateCallback#doInHibernate(org.hibernate.Session)
         */
        @Override
        public Object doInHibernate(final Session session) throws HibernateException, SQLException {
            Iterable con = typeCoercer.coerce(conditions, Iterable.class);
            final Iterator it = con == null ? null : con.iterator();
            final StringBuffer sb = buildConditionHQL(persistClass, it);
            appendOrder(sb, order);
            sb.insert(0, SELECT_ID_CLAUSE);
            Query query = session.createQuery(sb.toString());
            if (it != null) {
                int i = 0;
                while (it.hasNext()) {
                    query.setParameter(i++, it.next());
                }
            }
            query.setFirstResult(start);
            query.setMaxResults(offset);

            ResultTransformer transformer = new LazyLoadEntityTransformer(session, persistClass);
            query.setResultTransformer(transformer);
            List list = query.list();
            return list.iterator();
        }
    });
}

From source file:Dao.DaoTCurso.java

@Override
public List<Curso> getCursosModulos(boolean estado) throws Exception {
    this.sesion = null;
    this.tx = null;
    iniciaOperacion();//  ww  w  . j  a  v a2  s.co  m
    String consulta = "";
    Usuario usuario = (Usuario) FacesContext.getCurrentInstance().getExternalContext().getSessionMap()
            .get("usuario");

    if (usuario.getTipoUsuario().getDescripcion().equals("Profesor(a)")
            || usuario.getTipoUsuario().getDescripcion().equals("Docente")
            || usuario.getTipoUsuario().getDescripcion().equals("PROFESOR(A)")
            || usuario.getTipoUsuario().getDescripcion().equals("DOCENTE")) {
        consulta = "and user.id = " + usuario.getId() + "";
    } else {
        consulta = "";
    }

    String hql = "from Curso c inner join fetch c.modulos modul inner join fetch modul.usuario user "
            + "inner join fetch modul.promocion pr where c.estado = '1' "
            + "and (year(current_date) >= year(pr.fechaInicio) and year(current_date)<= year(pr.fechaFin)) "
            + "" + consulta + " " + "order by c.descripcion asc";
    Query query = sesion.createQuery(hql);
    query.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
    List<Curso> lstCursos = (List<Curso>) query.list();
    sesion.close();
    return lstCursos;
}