Example usage for org.hibernate Session createQuery

List of usage examples for org.hibernate Session createQuery

Introduction

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

Prototype

@Override
    org.hibernate.query.Query createQuery(CriteriaDelete deleteQuery);

Source Link

Usage

From source file:Agente.editaAgente.java

private boolean modifica() {
    Session session = HibernateUtil.getSessionFactory().openSession();
    try {/*from   w  w w  . j  ava  2 s. c  om*/
        session.beginTransaction();
        ic = t_agente.getText();
        Object resp = session.createQuery("from Agente obj where obj.idAgente='" + t_agente.getText()
                + "' and obj.idAgente!='" + ic + "'").uniqueResult();

        actor1 = (Agente) session.get(Agente.class, (Integer.parseInt(t_agente.getText())));

        if (resp == null) {
            Query q = session.createQuery("update Agente obj set obj.nombre='" + t_descripcion.getText()
                    + "', obj.idAgente='" + t_agente.getText() + "'where obj.idAgente='" + ic + "'");
            q.executeUpdate();
            session.getTransaction().commit();
            JOptionPane.showMessageDialog(null, "Registro modificado");
            return true;
        } else {
            JOptionPane.showMessageDialog(null, "No se pueden guardar claves duplicadas");
            return false;
        }
        //}
    } catch (HibernateException he) {
        he.printStackTrace();
        System.out.println(he.hashCode());
        session.getTransaction().rollback();
        return false;
    } finally {
        if (session.isOpen())
            session.close();
    }
}

From source file:aish.vaishno.hibernatesample.FoodOrderDao.java

public void dummy() {
    Session session = HibernateUtil.getSessionFactory().openSession();
    Transaction transaction = session.beginTransaction();
    System.out.println("session: " + session);
    FoodOrder foodOrder = new FoodOrder();
    // foodOrder.setId(4l);
    // foodOrder.setItemName("Pongal");
    //  session.save(foodOrder);
    //  transaction.commit();
    //  session.flush();
    System.out.println("Insertion successful");
    Query query = session.createQuery("select c from FoodOrder c");
    System.out.println("size: " + query.list());
    session.close();//from  w w  w.jav a2s .c o  m
    HibernateUtil.shutdown();
}

From source file:Ajustador.editaAjustador.java

private boolean modifica() {
    Session session = HibernateUtil.getSessionFactory().openSession();
    try {//from  w ww .  j av a2s . c o m
        session.beginTransaction();
        ic = t_ajustador.getText();
        Object resp = session.createQuery("from Ajustador obj where obj.idAjustador='" + t_ajustador.getText()
                + "' and obj.idAjustador!='" + ic + "'").uniqueResult();

        actor1 = (Ajustador) session.get(Ajustador.class, (Integer.parseInt(t_ajustador.getText())));

        if (resp == null) {
            Query q = session.createQuery("update Ajustador obj set obj.nombreAjustador='"
                    + t_descripcion.getText() + "', obj.idAjustador='" + t_ajustador.getText()
                    + "'where obj.idAjustador='" + ic + "'");
            q.executeUpdate();
            session.getTransaction().commit();
            JOptionPane.showMessageDialog(null, "Registro modificado");
            return true;
        } else {
            JOptionPane.showMessageDialog(null, "No se pueden guardar claves duplicadas");
            return false;
        }
        //}
    } catch (HibernateException he) {
        he.printStackTrace();
        System.out.println(he.hashCode());
        session.getTransaction().rollback();
        return false;
    } finally {
        if (session.isOpen())
            session.close();
    }
}

From source file:Almacen.consultaPartidaOrden.java

public void busca(String tipo, String valor, String movimiento, String complemento, String complemento2) {
    Session session = HibernateUtil.getSessionFactory().openSession();
    try {//from w ww  .  java 2s.c  om
        session.beginTransaction().begin();
        if (tipo.compareTo("Compaa") == 0) {
            Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                    java.lang.String.class, java.lang.String.class, java.lang.String.class,
                    java.lang.String.class, java.lang.Double.class, java.lang.Double.class,
                    java.lang.Double.class };
            if (t_orden.getText().compareTo("") != 0) {
                if (movimiento.compareTo("Entrada") == 0) {
                    String[] columnas = new String[] { "Id", "N", "#", "N Parte", "Descripcin", "Medida",
                            "Autorizados", "X Surtir", "Entrada" };
                    Query query = session.createQuery(
                            "SELECT DISTINCT part FROM Partida part " + "where part.ordenByIdOrden.idOrden="
                                    + Integer.parseInt(t_orden.getText()) + " and part.so=" + true);
                    List partidas = query.list();

                    model = new MyModel(partidas.size(), columnas, types);
                    t_datos.setModel(model);
                    for (int a = 0; a < partidas.size(); a++) {
                        Partida par = (Partida) partidas.get(a);
                        Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                        double entradas = 0, devoluciones = 0;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 4)
                                entradas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 4)
                                devoluciones += mov[b].getCantidad();
                        }
                        double total_almacen = entradas - devoluciones;
                        double total = par.getCantidadAut() - total_almacen;
                        model.setValueAt(par.getIdPartida(), a, 0);
                        model.setValueAt(par.getIdEvaluacion(), a, 1);
                        model.setValueAt(par.getSubPartida(), a, 2);
                        if (par.getEjemplar() != null)
                            model.setValueAt(par.getEjemplar().getIdParte(), a, 3);
                        else
                            model.setValueAt("", a, 3);
                        model.setValueAt(par.getCatalogo().getNombre(), a, 4);
                        model.setValueAt(par.getMed(), a, 5);
                        model.setValueAt(par.getCantidadAut(), a, 6);
                        model.setValueAt(total, a, 7);
                        model.setValueAt(0.0d, a, 8);
                    }
                }
                if (movimiento.compareTo("Salida") == 0) {
                    String[] columnas = new String[] { "Id", "N", "#", "N Parte", "Descripcin", "Medida",
                            "Autorizados", "En almacen", "Devolucin" };
                    Query query = session.createQuery("SELECT DISTINCT part FROM Partida part "
                            + "LEFT JOIN FETCH part.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                            + "where alm.operacion=4 and part.ordenByIdOrden.idOrden="
                            + Integer.parseInt(t_orden.getText()));
                    List partidas = query.list();
                    model = new MyModel(partidas.size(), columnas, types);
                    t_datos.setModel(model);
                    for (int a = 0; a < partidas.size(); a++) {
                        Partida par = (Partida) partidas.get(a);
                        Movimiento[] mov = (Movimiento[]) session.createCriteria(Movimiento.class)
                                .add(Restrictions.eq("partida.idPartida", par.getIdPartida())).list()
                                .toArray(new Movimiento[0]);
                        double entradas = 0, devoluciones = 0, entregadas = 0, devueltas = 0;
                        ;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 4)
                                entradas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 4)
                                devoluciones += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 5)
                                devueltas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 5)
                                entregadas += mov[b].getCantidad();
                        }
                        double total_Pedido = entradas - devoluciones;
                        double total_operario = entregadas - devueltas;
                        double total = total_Pedido - total_operario;
                        model.setValueAt(par.getIdPartida(), a, 0);
                        model.setValueAt(par.getIdEvaluacion(), a, 1);
                        model.setValueAt(par.getSubPartida(), a, 2);
                        if (par.getEjemplar() != null)
                            model.setValueAt(par.getEjemplar().getIdParte(), a, 3);
                        else
                            model.setValueAt("", a, 3);
                        model.setValueAt(par.getCatalogo().getNombre(), a, 4);
                        model.setValueAt(par.getMed(), a, 5);
                        model.setValueAt(par.getCantidadAut(), a, 6);
                        model.setValueAt(total, a, 7);
                        model.setValueAt(0.0d, a, 8);
                    }
                }
            }
        }
        if (tipo.compareTo("Operarios") == 0) {
            if (t_orden != null) {
                if (movimiento.compareTo("Entrada") == 0) {
                    Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.String.class, java.lang.Double.class,
                            java.lang.Double.class };
                    String[] columnas = new String[] { "Id", "Partida", "Tipo", "N Parte", "Descripcin",
                            "Medida", "Operario", "Entregadas" };
                    /*Query query = session.createQuery("SELECT DISTINCT part FROM Partida part "
                        + "LEFT JOIN FETCH part.movimientos movPart "
                        + "LEFT JOIN movPart.almacen alm "
                        + "where alm.operacion=5 and part.ordenByIdOrden.idOrden="+Integer.parseInt(t_orden.getText()));
                    List partidas = query.list();
                            
                    Query query1 = session.createQuery("SELECT DISTINCT partEx FROM PartidaExterna partEx "
                        + "LEFT JOIN FETCH partEx.movimientos movEx "
                        + "LEFT JOIN movEx.almacen alm "
                        + "where alm.operacion=5 and partEx.pedido.partida.ordenByIdOrden.idOrden="+Integer.parseInt(t_orden.getText()));
                    List partidasExternas = query1.list();*/
                    String q1 = "SELECT DISTINCT part FROM Partida part "
                            + "LEFT JOIN FETCH part.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                            + "where alm.operacion=5 and part.ordenByIdOrden.idOrden="
                            + Integer.parseInt(t_orden.getText()) + complemento;

                    /*String q2="SELECT DISTINCT partEx FROM PartidaExterna partEx "
                        + "LEFT JOIN FETCH partEx.movimientos movEx "
                        + "LEFT JOIN movEx.almacen alm "
                        + "where alm.operacion=5 and partEx.pedido.partida.ordenByIdOrden.idOrden="+Integer.parseInt(t_orden.getText())+complemento2;*/
                    String q2 = "SELECT DISTINCT partEx FROM PartidaExterna partEx "
                            + "LEFT JOIN FETCH partEx.movimientos movEx " + "LEFT JOIN movEx.almacen alm "
                            + "where alm.operacion in (3, 5) and partEx.pedido.orden.idOrden="
                            + Integer.parseInt(t_orden.getText()) + complemento2;

                    Query query = session.createQuery(q1);
                    List partidas = query.list();

                    Query query1 = session.createQuery(q2);
                    List partidasExternas = query1.list();

                    model = new MyModel(partidas.size() + partidasExternas.size(), columnas, types);
                    t_datos.setModel(model);

                    for (int a = 0; a < partidas.size(); a++) {
                        Partida par = (Partida) partidas.get(a);
                        Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                        double entregadas = 0, devueltas = 0;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 5)
                                devueltas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 5)
                                entregadas += mov[b].getCantidad();
                        }
                        double total = entregadas - devueltas;
                        model.setValueAt(par.getIdPartida(), a, 0);
                        model.setValueAt(par.getIdEvaluacion() + "-" + par.getSubPartida(), a, 1);
                        if (par.getPedido() == null)
                            model.setValueAt("COM.", a, 2);
                        else
                            model.setValueAt("PED.", a, 2);
                        if (par.getEjemplar() != null)
                            model.setValueAt(par.getEjemplar().getIdParte(), a, 3);
                        else
                            model.setValueAt("", a, 3);
                        model.setValueAt(par.getCatalogo().getNombre(), a, 4);
                        model.setValueAt(par.getMed(), a, 5);
                        model.setValueAt(total, a, 6);
                        model.setValueAt(0.0d, a, 7);
                    }

                    for (int a = 0; a < partidasExternas.size(); a++) {
                        PartidaExterna par = (PartidaExterna) partidasExternas.get(a);
                        Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                        double entregadas = 0, devueltas = 0;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 5)
                                devueltas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 5)
                                entregadas += mov[b].getCantidad();
                        }
                        double total = entregadas - devueltas;
                        model.setValueAt(par.getIdPartidaExterna(), a + partidas.size(), 0);
                        //model.setValueAt(par.getPedido().getPartida().getIdEvaluacion()+"-"+par.getPedido().getPartida().getSubPartida(), a+partidas.size(), 1);
                        model.setValueAt("-", a + partidas.size(), 1);
                        model.setValueAt("ADI.", a + partidas.size(), 2);
                        if (par.getNoParte() != null)
                            model.setValueAt(par.getNoParte(), a + partidas.size(), 3);
                        else
                            model.setValueAt("", a + partidas.size(), 3);
                        //model.setValueAt(par.getPedido().getPartida().getCatalogo().getNombre()+"/"+par.getDescripcion(), a+partidas.size(), 4);
                        model.setValueAt(par.getDescripcion(), a + partidas.size(), 4);
                        model.setValueAt(par.getUnidad(), a + partidas.size(), 5);
                        model.setValueAt(total, a + partidas.size(), 6);
                        model.setValueAt(0.0d, a + partidas.size(), 7);
                    }
                }
                if (movimiento.compareTo("Salida") == 0) {
                    Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.Double.class, java.lang.Double.class,
                            java.lang.Double.class, java.lang.Boolean.class };
                    String[] columnas = new String[] { "Id", "Partida", "Tipo", "N Parte", "Descripcin",
                            "Medida", "Existencias", "Operario", "Entregadas", "Solicita" };
                    /*Query query = session.createQuery("SELECT DISTINCT part FROM Partida part "
                        + "LEFT JOIN FETCH part.movimientos movPart "
                        + "LEFT JOIN movPart.almacen alm "
                        + "where part.ordenByIdOrden.idOrden="+Integer.parseInt(t_orden.getText())
                        + " and alm!="+null);
                    List partidas = query.list();
                            
                    Query query1 = session.createQuery("SELECT DISTINCT partEx FROM PartidaExterna partEx "
                        + "LEFT JOIN FETCH partEx.movimientos movEx "
                        + "LEFT JOIN movEx.almacen alm "
                        + "where alm.operacion in (3, 5) and partEx.pedido.partida.ordenByIdOrden.idOrden="+Integer.parseInt(t_orden.getText()));
                    List partidasExternas = query1.list();*/

                    String q1 = "SELECT DISTINCT part FROM Partida part "
                            + "LEFT JOIN FETCH part.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                            + "where part.ordenByIdOrden.idOrden=" + Integer.parseInt(t_orden.getText())
                            + " and alm!=" + null + complemento;

                    /*String q2="SELECT DISTINCT partEx FROM PartidaExterna partEx "
                        + "LEFT JOIN FETCH partEx.movimientos movEx "
                        + "LEFT JOIN movEx.almacen alm "
                        + "where alm.operacion in (3, 5) and partEx.pedido.partida.ordenByIdOrden.idOrden="+Integer.parseInt(t_orden.getText())+complemento2;*/
                    String q2 = "SELECT DISTINCT partEx FROM PartidaExterna partEx "
                            + "LEFT JOIN FETCH partEx.movimientos movEx " + "LEFT JOIN movEx.almacen alm "
                            + "where alm.operacion in (3, 5) and partEx.pedido.orden.idOrden="
                            + Integer.parseInt(t_orden.getText()) + complemento2;

                    Query query = session.createQuery(q1);
                    List partidas = query.list();

                    Query query1 = session.createQuery(q2);
                    List partidasExternas = query1.list();

                    model = new MyModel(partidas.size() + partidasExternas.size(), columnas, types);
                    t_datos.setModel(model);
                    for (int a = 0; a < partidas.size(); a++) {
                        Partida par = (Partida) partidas.get(a);
                        Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                        double entradas = 0, devoluciones = 0, entregadas = 0, devueltas = 0;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            //Entradas por pedido interno
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 1)
                                entradas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 1)
                                devoluciones += mov[b].getCantidad();
                            //entrada por compaia
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 4)
                                entradas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 4)
                                devoluciones += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 5)
                                devueltas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 5)
                                entregadas += mov[b].getCantidad();
                        }
                        double total_Pedido = entradas - devoluciones;
                        double total_operario = entregadas - devueltas;
                        double total = total_Pedido - total_operario;
                        model.setValueAt(par.getIdPartida(), a, 0);
                        model.setValueAt(par.getIdEvaluacion() + "-" + par.getSubPartida(), a, 1);
                        if (par.getPedido() == null)
                            model.setValueAt("COM.", a, 2);
                        else
                            model.setValueAt("PED.", a, 2);
                        if (par.getEjemplar() != null)
                            model.setValueAt(par.getEjemplar().getIdParte(), a, 3);
                        else
                            model.setValueAt("", a, 3);
                        model.setValueAt(par.getCatalogo().getNombre(), a, 4);
                        model.setValueAt(par.getMed(), a, 5);
                        model.setValueAt(total, a, 6);
                        model.setValueAt(total_operario, a, 7);
                        model.setValueAt(0.0d, a, 8);
                        //model.setValueAt(par.getPerdidases().size(), a, 9);
                        model.setValueAt(par.getOp(), a, 9);
                    }
                    for (int a = 0; a < partidasExternas.size(); a++) {
                        PartidaExterna par = (PartidaExterna) partidasExternas.get(a);
                        Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                        double entradas = 0, devoluciones = 0, entregadas = 0, devueltas = 0;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 3)
                                entradas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 3)
                                devoluciones += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 5)
                                devueltas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 5)
                                entregadas += mov[b].getCantidad();
                        }
                        double total_Pedido = entradas - devoluciones;
                        double total_operario = entregadas - devueltas;
                        double total = total_Pedido - total_operario;
                        model.setValueAt(par.getIdPartidaExterna(), a + partidas.size(), 0);
                        //model.setValueAt(par.getPedido().getPartida().getIdEvaluacion()+"-"+par.getPedido().getPartida().getSubPartida(), a+partidas.size(), 1);
                        model.setValueAt("-", a + partidas.size(), 1);
                        model.setValueAt("ADI.", a + partidas.size(), 2);
                        if (par.getNoParte() != null)
                            model.setValueAt(par.getNoParte(), a + partidas.size(), 3);
                        else
                            model.setValueAt("", a + partidas.size(), 3);
                        //model.setValueAt(par.getPedido().getPartida().getCatalogo().getNombre()+"/"+par.getDescripcion(), a+partidas.size(), 4);
                        model.setValueAt(par.getDescripcion(), a + partidas.size(), 4);
                        model.setValueAt(par.getUnidad(), a + partidas.size(), 5);
                        model.setValueAt(total, a + partidas.size(), 6);
                        model.setValueAt(total_operario, a + partidas.size(), 7);
                        model.setValueAt(0.0d, a + partidas.size(), 8);
                        //model.setValueAt(0, a+partidas.size(), 9);
                        model.setValueAt(par.getOp(), a + partidas.size(), 9);
                    }
                }
            }
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    if (session != null)
        if (session.isOpen())
            session.close();
    formatoTabla();
}

From source file:Almacen.consultaPartidaPedido.java

public void busca(String tipo, String valor, String movimiento) {
    Session session = HibernateUtil.getSessionFactory().openSession();
    try {/*from w  w  w. j a  v a 2 s  .  co m*/
        session.beginTransaction().begin();
        if (tipo.compareTo("Pedido") == 0) {
            Pedido pedido = (Pedido) session.get(Pedido.class, Integer.parseInt(t_pedido.getText()));
            if (valor.compareTo("Interno") == 0) {
                session.beginTransaction().begin();
                if (movimiento.compareTo("Entrada") == 0) {
                    String[] columnas = new String[] { "Id", "N", "#", "N Parte", "Descripcin", "Medida",
                            "Pedidos", "X Surtir", "Entrada", "Costo c/u", "Total" }; //,"OK"}; //para antes de entrada
                    Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.Double.class, java.lang.Double.class,
                            java.lang.Double.class, java.lang.Double.class, java.lang.Double.class
                            //, java.lang.Boolean.class //para antes de entrada
                    };
                    Query query = session.createQuery("SELECT DISTINCT par FROM Partida par "
                            + "LEFT JOIN FETCH par.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                            + "where par.pedido.idPedido=" + Integer.parseInt(t_pedido.getText())); //where alm.operacion=1 and 
                    //+ "and par.pedido!="+null);
                    List partidas = query.list();
                    model = new MyModel(partidas.size(), columnas, types);
                    t_datos.setModel(model);
                    for (int a = 0; a < partidas.size(); a++) {
                        Partida par = (Partida) partidas.get(a);
                        Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                        double entradas = 0, devoluciones = 0;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 1)
                                entradas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 1)
                                devoluciones += mov[b].getCantidad();
                        }
                        double total_almacen = entradas - devoluciones;
                        double total = par.getCantPcp() - total_almacen;

                        model.setValueAt(par.getIdPartida(), a, 0);
                        model.setValueAt(par.getIdEvaluacion(), a, 1);
                        model.setValueAt(par.getSubPartida(), a, 2);
                        if (par.getEjemplar() != null)
                            model.setValueAt(par.getEjemplar().getIdParte(), a, 3);
                        else
                            model.setValueAt("", a, 3);
                        model.setValueAt(par.getCatalogo().getNombre(), a, 4);
                        model.setValueAt(par.getMed(), a, 5);
                        model.setValueAt(par.getCantPcp(), a, 6);
                        model.setValueAt(total, a, 7);
                        model.setValueAt(0.0d, a, 8);

                        if (par.getPcp() != null)
                            model.setValueAt(par.getPcp(), a, 9);
                        else
                            model.setValueAt(par.getPcp(), a, 9);
                        model.setValueAt(0.0d, a, 10);
                        //model.setValueAt(par.getOp(), a, 11); //para antes de entrada
                    }
                }
                if (movimiento.compareTo("Salida") == 0) {
                    String[] columnas = new String[] { "Id", "N", "#", "N Parte", "Descripcin", "Medida",
                            "Pedidos", "En almacen", "Devolucin", "Costo c/u", "Total" };
                    Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.String.class, java.lang.String.class,
                            java.lang.String.class, java.lang.Double.class, java.lang.Double.class,
                            java.lang.Double.class, java.lang.Double.class, java.lang.Double.class };
                    Query query = session.createQuery("SELECT DISTINCT par FROM Partida par "
                            + "LEFT JOIN FETCH par.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                            + "where alm.operacion=1 and par.pedido.idPedido="
                            + Integer.parseInt(t_pedido.getText()));
                    //+ "and par.pedido!="+null);
                    List partidas = query.list();
                    model = new MyModel(partidas.size(), columnas, types);
                    t_datos.setModel(model);
                    for (int a = 0; a < partidas.size(); a++) {
                        Partida par = (Partida) partidas.get(a);
                        Movimiento[] mov = (Movimiento[]) session.createCriteria(Movimiento.class)
                                .add(Restrictions.eq("partida.idPartida", par.getIdPartida())).list()
                                .toArray(new Movimiento[0]);
                        double entradas = 0.0d, devoluciones = 0.0d, entregadas = 0.0d, devueltas = 0.0d;
                        for (int b = 0; b < mov.length; b++) {
                            Almacen alm = mov[b].getAlmacen();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 1)
                                entradas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 1)
                                devoluciones += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 5)
                                devueltas += mov[b].getCantidad();
                            if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 5)
                                entregadas += mov[b].getCantidad();
                        }
                        double total_Pedido = entradas - devoluciones;
                        double total_operario = entregadas - devueltas;
                        double total = total_Pedido - total_operario;
                        model.setValueAt(par.getIdPartida(), a, 0);
                        model.setValueAt(par.getIdEvaluacion(), a, 1);
                        model.setValueAt(par.getSubPartida(), a, 2);
                        if (par.getEjemplar() != null)
                            model.setValueAt(par.getEjemplar().getIdParte(), a, 3);
                        else
                            model.setValueAt("", a, 3);
                        model.setValueAt(par.getCatalogo().getNombre(), a, 4);
                        model.setValueAt(par.getMed(), a, 5);
                        model.setValueAt(par.getCantPcp(), a, 6);
                        model.setValueAt(total, a, 7);
                        model.setValueAt(0.0d, a, 8);
                        if (par.getPcp() != null)
                            model.setValueAt(par.getPcp(), a, 9);
                        else
                            model.setValueAt(par.getPcp(), a, 9);
                        model.setValueAt(0.0d, a, 10);
                    }
                }
                session.beginTransaction().commit();
            }

            if (valor.compareTo("Externo") == 0) {
                try {
                    session.beginTransaction().begin();
                    if (movimiento.compareTo("Entrada") == 0) {
                        String[] columnas = new String[] { "Id", "N Parte", "Descripcin", "Medida",
                                "Pedidos", "X Surtir", "Entrada", "Costo c/u", "Total" };
                        Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                                java.lang.String.class, java.lang.String.class, java.lang.Double.class,
                                java.lang.Double.class, java.lang.Double.class, java.lang.Double.class,
                                java.lang.Double.class };
                        Query query = session.createQuery("SELECT DISTINCT part FROM PartidaExterna part "
                                + "where part.pedido.idPedido=" + Integer.parseInt(t_pedido.getText()));
                        //+ "and part.pedido!="+null);
                        List partidas = query.list();
                        model = new MyModel(partidas.size(), columnas, types);
                        t_datos.setModel(model);
                        for (int a = 0; a < partidas.size(); a++) {
                            PartidaExterna par = (PartidaExterna) partidas.get(a);
                            Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                            double entradas = 0.0d, devoluciones = 0.0d;
                            for (int b = 0; b < mov.length; b++) {
                                Almacen alm = mov[b].getAlmacen();
                                if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 2)
                                    entradas += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 2)
                                    devoluciones += mov[b].getCantidad();
                            }
                            double total_almacen = entradas - devoluciones;
                            double total = par.getCantidad() - total_almacen;
                            model.setValueAt(par.getIdPartidaExterna(), a, 0);
                            if (par.getNoParte() != null)
                                model.setValueAt(par.getNoParte(), a, 1);
                            else
                                model.setValueAt("", a, 1);
                            model.setValueAt(par.getDescripcion(), a, 2);
                            model.setValueAt(par.getUnidad(), a, 3);
                            model.setValueAt(par.getCantidad(), a, 4);
                            model.setValueAt(total, a, 5);
                            model.setValueAt(0.0d, a, 6);
                            model.setValueAt(par.getCosto(), a, 7);
                            model.setValueAt(0.0d, a, 8);
                        }
                    }
                    if (movimiento.compareTo("Salida") == 0) {
                        String[] columnas = new String[] { "Id", "N Parte", "Descripcin", "Medida",
                                "Pedidos", "En almacen", "Devolucin", "Costo c/u", "Total" };
                        Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                                java.lang.String.class, java.lang.String.class, java.lang.Double.class,
                                java.lang.Double.class, java.lang.Double.class, java.lang.Double.class,
                                java.lang.Double.class };
                        Query query = session.createQuery("SELECT DISTINCT part FROM PartidaExterna part "
                                + "LEFT JOIN FETCH part.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                                + "where alm.operacion=2 and part.pedido.idPedido="
                                + Integer.parseInt(t_pedido.getText()));
                        //+ "and part.pedido!="+null);
                        List partidas = query.list();
                        model = new MyModel(partidas.size(), columnas, types);
                        t_datos.setModel(model);
                        for (int a = 0; a < partidas.size(); a++) {
                            PartidaExterna par = (PartidaExterna) partidas.get(a);
                            Movimiento[] mov = (Movimiento[]) session
                                    .createCriteria(Movimiento.class).add(Restrictions
                                            .eq("partidaExterna.idPartidaExterna", par.getIdPartidaExterna()))
                                    .list().toArray(new Movimiento[0]);
                            double entradas = 0, devoluciones = 0, entregadas = 0, devueltas = 0;
                            ;
                            for (int b = 0; b < mov.length; b++) {
                                Almacen alm = mov[b].getAlmacen();
                                if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 2)
                                    entradas += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 2)
                                    devoluciones += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 6)
                                    devueltas += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 6)
                                    entregadas += mov[b].getCantidad();
                            }
                            double total_Pedido = entradas - devoluciones;
                            double total_operario = entregadas - devueltas;
                            double total = total_Pedido - total_operario;
                            model.setValueAt(par.getIdPartidaExterna(), a, 0);
                            if (par.getNoParte() != null)
                                model.setValueAt(par.getNoParte(), a, 1);
                            else
                                model.setValueAt("", a, 1);
                            model.setValueAt(par.getDescripcion(), a, 2);
                            model.setValueAt(par.getUnidad(), a, 3);
                            model.setValueAt(par.getCantidad(), a, 4);
                            model.setValueAt(total, a, 5);
                            model.setValueAt(0.0d, a, 6);

                            if (par.getCosto() != null)
                                model.setValueAt(par.getCosto(), a, 7);
                            else
                                model.setValueAt(0.0d, a, 7);
                            model.setValueAt(0.0d, a, 8);
                        }
                    }
                    session.beginTransaction().commit();
                } catch (Exception e) {
                    e.printStackTrace();
                    session.beginTransaction().rollback();
                } finally {
                    if (session.isOpen() == true)
                        session.close();
                }
            }

            if (valor.compareTo("Adicional") == 0) {
                try {
                    session.beginTransaction().begin();
                    if (movimiento.compareTo("Entrada") == 0) {
                        String[] columnas = new String[] { "Id", "N", "#", "N Parte", "Descripcin",
                                "Medida", "Pedidos", "X Surtir", "Entrada", "Costo c/u", "Total" };//, "Ok"};//para antes de entrada
                        Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                                java.lang.String.class, java.lang.String.class, java.lang.String.class,
                                java.lang.String.class, java.lang.Double.class, java.lang.Double.class,
                                java.lang.Double.class, java.lang.Double.class, java.lang.Double.class
                                //, java.lang.Boolean.class //para antes de entrada
                        };
                        Query query = session.createQuery("SELECT DISTINCT part FROM PartidaExterna part "
                                + "where part.pedido.idPedido=" + Integer.parseInt(t_pedido.getText()));
                        List partidas = query.list();
                        model = new MyModel(partidas.size(), columnas, types);
                        t_datos.setModel(model);
                        for (int a = 0; a < partidas.size(); a++) {
                            PartidaExterna par = (PartidaExterna) partidas.get(a);
                            Movimiento[] mov = (Movimiento[]) par.getMovimientos().toArray(new Movimiento[0]);
                            double entradas = 0, devoluciones = 0;
                            for (int b = 0; b < mov.length; b++) {
                                Almacen alm = mov[b].getAlmacen();
                                if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 3)
                                    entradas += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 3)
                                    devoluciones += mov[b].getCantidad();
                            }
                            double total_almacen = entradas - devoluciones;
                            double total = par.getCantidad() - total_almacen;
                            model.setValueAt(par.getIdPartidaExterna(), a, 0);
                            //model.setValueAt(par.getPedido().getPartida().getIdEvaluacion(), a, 1);
                            //model.setValueAt(par.getPedido().getPartida().getSubPartida(), a, 2);
                            model.setValueAt(0, a, 1);
                            model.setValueAt(0, a, 2);
                            if (par.getNoParte() != null)
                                model.setValueAt(par.getNoParte(), a, 3);
                            else
                                model.setValueAt("", a, 3);
                            //model.setValueAt(par.getPedido().getPartida().getCatalogo().getNombre()+"/"+par.getDescripcion(), a, 4);
                            model.setValueAt(par.getDescripcion(), a, 4);
                            model.setValueAt(par.getUnidad(), a, 5);
                            model.setValueAt(par.getCantidad(), a, 6);
                            model.setValueAt(total, a, 7);
                            model.setValueAt(0.0d, a, 8);
                            model.setValueAt(par.getCosto(), a, 9);
                            model.setValueAt(0.0d, a, 10);
                            //model.setValueAt(par.getOp(), a, 11); //para antes de entrada
                        }
                    }
                    if (movimiento.compareTo("Salida") == 0) {
                        String[] columnas = new String[] { "Id", "N", "#", "N Parte", "Descripcin",
                                "Medida", "Pedidos", "En almacen", "Devolucin", "Costo c/u", "Total" };
                        Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                                java.lang.String.class, java.lang.String.class, java.lang.String.class,
                                java.lang.String.class, java.lang.Double.class, java.lang.Double.class,
                                java.lang.Double.class, java.lang.Double.class, java.lang.Double.class };
                        Query query = session.createQuery("SELECT DISTINCT part FROM PartidaExterna part "
                                + "LEFT JOIN FETCH part.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                                + "where alm.operacion=3 and part.pedido.idPedido="
                                + Integer.parseInt(t_pedido.getText()) + "and part.pedido!=" + null);
                        List partidas = query.list();
                        model = new MyModel(partidas.size(), columnas, types);
                        t_datos.setModel(model);
                        for (int a = 0; a < partidas.size(); a++) {
                            PartidaExterna par = (PartidaExterna) partidas.get(a);
                            Movimiento[] mov = (Movimiento[]) session
                                    .createCriteria(Movimiento.class).add(Restrictions
                                            .eq("partidaExterna.idPartidaExterna", par.getIdPartidaExterna()))
                                    .list().toArray(new Movimiento[0]);
                            double entradas = 0, devoluciones = 0, entregadas = 0, devueltas = 0;
                            ;
                            for (int b = 0; b < mov.length; b++) {
                                Almacen alm = mov[b].getAlmacen();
                                if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 3)
                                    entradas += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 3)
                                    devoluciones += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 5)
                                    devueltas += mov[b].getCantidad();
                                if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 5)
                                    entregadas += mov[b].getCantidad();
                            }
                            double total_Pedido = entradas - devoluciones;
                            double total_operario = entregadas - devueltas;
                            double total = total_Pedido - total_operario;
                            model.setValueAt(par.getIdPartidaExterna(), a, 0);
                            //model.setValueAt(par.getPedido().getPartida().getIdEvaluacion(), a, 1);
                            //model.setValueAt(par.getPedido().getPartida().getSubPartida(), a, 2);
                            model.setValueAt("", a, 1);
                            model.setValueAt("", a, 2);
                            if (par.getNoParte() != null)
                                model.setValueAt(par.getNoParte(), a, 3);
                            else
                                model.setValueAt("", a, 3);
                            //model.setValueAt(par.getPedido().getPartida().getCatalogo().getNombre()+"/"+par.getDescripcion(), a, 4);
                            model.setValueAt(par.getDescripcion(), a, 4);
                            model.setValueAt(par.getUnidad(), a, 5);
                            model.setValueAt(par.getCantidad(), a, 6);
                            model.setValueAt(total, a, 7);
                            model.setValueAt(0.0d, a, 8);
                            model.setValueAt(par.getCosto(), a, 9);
                            model.setValueAt(0.0d, a, 10);
                        }
                    }
                    session.beginTransaction().commit();
                } catch (Exception e) {
                    e.printStackTrace();
                    session.beginTransaction().rollback();
                } finally {
                    if (session.isOpen() == true)
                        session.close();
                }
            }
        }

        if (tipo.compareTo("Venta") == 0) {
            Pedido pedido = (Pedido) session.get(Pedido.class, Integer.parseInt(t_pedido.getText()));
            session.beginTransaction().begin();
            if (movimiento.compareTo("Entrada") == 0) {
                Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                        java.lang.String.class, java.lang.String.class, java.lang.Double.class,
                        java.lang.Double.class };
                String[] columnas = new String[] { "Id", "N Parte", "Descripcin", "Medida", "Entregados",
                        "Devueltos" };
                Query query = session.createQuery("SELECT DISTINCT part FROM PartidaExterna part "
                        + "LEFT JOIN FETCH part.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                        + "where alm.operacion=2 and part.pedido.idPedido="
                        + Integer.parseInt(t_pedido.getText()) + "and part.pedido!=" + null);
                List partidas = query.list();
                model = new MyModel(partidas.size(), columnas, types);
                t_datos.setModel(model);
                for (int a = 0; a < partidas.size(); a++) {
                    PartidaExterna par = (PartidaExterna) partidas.get(a);
                    Movimiento[] mov = (Movimiento[]) session.createCriteria(Movimiento.class)
                            .add(Restrictions.eq("partidaExterna.idPartidaExterna", par.getIdPartidaExterna()))
                            .list().toArray(new Movimiento[0]);
                    double entregados = 0.0d, devoluciones = 0.0d;
                    for (int b = 0; b < mov.length; b++) {
                        Almacen alm = mov[b].getAlmacen();
                        if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 6)
                            devoluciones += mov[b].getCantidad();
                        if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 6)
                            entregados += mov[b].getCantidad();
                    }
                    double total = entregados - devoluciones;
                    model.setValueAt(par.getIdPartidaExterna(), a, 0);
                    if (par.getNoParte() != null)
                        model.setValueAt(par.getNoParte(), a, 1);
                    else
                        model.setValueAt("", a, 1);
                    model.setValueAt(par.getDescripcion(), a, 2);
                    model.setValueAt(par.getUnidad(), a, 3);
                    model.setValueAt(total, a, 4);
                    model.setValueAt(0.0d, a, 5);
                }
            }
            if (movimiento.compareTo("Salida") == 0) {
                Class[] types = new Class[] { java.lang.String.class, java.lang.String.class,
                        java.lang.String.class, java.lang.String.class, java.lang.Double.class,
                        java.lang.Double.class, java.lang.Double.class, java.lang.Double.class };
                String[] columnas = new String[] { "Id", "N Parte", "Descripcin", "Medida", "Pedidos",
                        "Entregadas", "Existencias", "Salida" };
                Query query = session.createQuery("SELECT DISTINCT part FROM PartidaExterna part "
                        + "LEFT JOIN FETCH part.movimientos movPart " + "LEFT JOIN movPart.almacen alm "
                        + "where alm.operacion=2 and part.pedido.idPedido="
                        + Integer.parseInt(t_pedido.getText()) + "and part.pedido!=" + null);
                List partidas = query.list();
                model = new MyModel(partidas.size(), columnas, types);
                t_datos.setModel(model);
                for (int a = 0; a < partidas.size(); a++) {
                    PartidaExterna par = (PartidaExterna) partidas.get(a);
                    Movimiento[] mov = (Movimiento[]) session.createCriteria(Movimiento.class)
                            .add(Restrictions.eq("partidaExterna.idPartidaExterna", par.getIdPartidaExterna()))
                            .list().toArray(new Movimiento[0]);
                    double entradas = 00.d, devoluciones = 0.0d, entregadas = 0.0d, devueltas = 0.0d;
                    for (int b = 0; b < mov.length; b++) {
                        Almacen alm = mov[b].getAlmacen();
                        if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 2)
                            entradas += mov[b].getCantidad();
                        if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 2)
                            devoluciones += mov[b].getCantidad();
                        if (alm.getTipoMovimiento() == 1 && alm.getOperacion() == 6)
                            devueltas += mov[b].getCantidad();
                        if (alm.getTipoMovimiento() == 2 && alm.getOperacion() == 6)
                            entregadas += mov[b].getCantidad();
                    }
                    double total_Existencias = entradas - devoluciones;
                    double total_cliente = entregadas - devueltas;
                    double total = total_Existencias - total_cliente;
                    model.setValueAt(par.getIdPartidaExterna(), a, 0);
                    if (par.getNoParte() != null)
                        model.setValueAt(par.getNoParte(), a, 1);
                    else
                        model.setValueAt("", a, 1);
                    model.setValueAt(par.getDescripcion(), a, 2);
                    model.setValueAt(par.getUnidad(), a, 3);
                    model.setValueAt(par.getCantidad(), a, 4);
                    model.setValueAt(total_cliente, a, 5);
                    model.setValueAt(total, a, 6);
                    model.setValueAt(0.0d, a, 7);
                }
            }
            session.beginTransaction().commit();
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    if (session != null)
        if (session.isOpen())
            session.close();
    formatoTabla(tipo, valor, movimiento);
}

From source file:Almacen.Reporte2.java

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
    // TODO add your handling code here:
    Class[] t1 = new Class[] { java.lang.String.class, java.lang.String.class, java.lang.String.class,
            java.lang.String.class, java.lang.String.class, java.lang.String.class, java.lang.String.class };
    boolean[] e1 = new boolean[] { false, false, false, false, false, false, false };
    if (t_busca.getText().compareTo("") != 0) {
        String consulta = "SELECT mov from Movimiento mov " + "LEFT JOIN mov.partida par "
                + "LEFT JOIN par.ordenByIdOrden ord " + "where ord.idOrden='" + t_busca.getText();

        String consultaEx = "SELECT mov from Movimiento mov " + "LEFT JOIN mov.partidaExterna pex "
                + "LEFT JOIN pex.pedido ped " + "LEFT JOIN ped.orden ord " + "where ord.idOrden='"
                + t_busca.getText() + "'";

        if (cb_tipo.getSelectedItem().toString().compareTo("PROVEEDORES") == 0) {
            consulta += "' and mov.almacen.operacion in (1,3) order By mov.partida.idEvaluacion, mov.partida.subPartida asc";
            consultaEx += " and mov.almacen.operacion in (1,3)";
        } else {/*from  w  ww . j av  a2 s. c om*/
            consulta += "' and mov.almacen.operacion=5 order By mov.partida.idEvaluacion, mov.partida.subPartida asc";
            consultaEx += " and mov.almacen.operacion=5";
        }

        Session session = HibernateUtil.getSessionFactory().openSession();
        try {
            session.beginTransaction();
            Query q = session.createQuery(consulta);
            Query qEx = session.createQuery(consultaEx);
            List resultList = q.list();
            List resultListEx = qEx.list();

            if (resultList.size() > 0 || resultListEx.size() > 0) {
                t_datos1.setModel(
                        ModeloTablaReporte(resultList.size() + resultListEx.size(), columnas1, t1, e1, model1));
                model1 = (DefaultTableModel) t_datos1.getModel();
                int i = 0;
                for (int a = 0; a < resultList.size(); a++) {
                    Movimiento mov = (Movimiento) resultList.get(a);
                    Almacen alm = mov.getAlmacen();
                    Partida par = mov.getPartida();
                    model1.setValueAt("" + par.getIdEvaluacion() + "-" + par.getSubPartida(), i, 0);
                    model1.setValueAt(par.getCatalogo().getNombre(), i, 1);
                    model1.setValueAt(mov.getCantidad(), i, 2);
                    model1.setValueAt(alm.getEntrego(), i, 3);
                    model1.setValueAt(alm.getFecha().toString(), i, 4);
                    model1.setValueAt("" + alm.getIdAlmacen(), i, 5);
                    //model1.setValueAt(""+alm.getTipoMovimiento(), i, 6);
                    if (alm.getOperacion() == 5) {
                        if (alm.getTipoMovimiento() == 1) {
                            model1.setValueAt("D.Operarios", i, 6);
                        } else {
                            model1.setValueAt("S.Operarios", i, 6);
                        }
                    } else {
                        if (alm.getTipoMovimiento() == 1) {
                            model1.setValueAt("E.Proveedor", i, 6);
                        } else {
                            model1.setValueAt("S.Proveedor", i, 6);
                        }
                    }
                    i++;
                }

                for (int b = 0; b < resultListEx.size(); b++) {
                    Movimiento mov = (Movimiento) resultListEx.get(b);
                    Almacen alm = mov.getAlmacen();
                    PartidaExterna par = mov.getPartidaExterna();
                    model1.setValueAt("-", i, 0);
                    model1.setValueAt(par.getDescripcion(), i, 1);
                    model1.setValueAt(mov.getCantidad(), i, 2);
                    model1.setValueAt(alm.getEntrego(), i, 3);
                    model1.setValueAt(alm.getFecha().toString(), i, 4);
                    model1.setValueAt("" + alm.getIdAlmacen(), i, 5);
                    //model.setValueAt(""+alm.getTipoMovimiento(), i, 6);
                    if (alm.getOperacion() == 5) {
                        if (alm.getTipoMovimiento() == 1) {
                            model1.setValueAt("D.Operarios", i, 6);
                        } else {
                            model1.setValueAt("S.Operarios", i, 6);
                        }
                    } else {
                        if (alm.getTipoMovimiento() == 1) {
                            model1.setValueAt("E.Proveedor", i, 6);
                        } else {
                            model1.setValueAt("S.Proveedor", i, 6);
                        }
                    }
                    i++;
                }
            } else {
                t_datos1.setModel(ModeloTablaReporte(0, columnas1, t1, e1, model1));
            }
            t_busca.requestFocus();
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (session != null)
            if (session.isOpen())
                session.close();
    } else {
        t_datos1.setModel(ModeloTablaReporte(0, columnas1, t1, e1, model1));
    }
    formatoTabla1();
}

From source file:Almacen.Reporte2.java

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
    // TODO add your handling code here:
    String consulta = "SELECT DISTINCT obj from Almacen obj where obj.operacion<5 ";
    if (t_fecha1.getText().compareTo("AAAA-MM-DD") != 0)
        consulta += "and obj.fecha >= '" + t_fecha1.getText() + "' ";
    if (t_fecha2.getText().compareTo("AAAA-MM-DD") != 0)
        consulta += "and obj.fecha <= '" + t_fecha2.getText() + "'";

    Session session = HibernateUtil.getSessionFactory().openSession();
    try {/*ww w  . ja va  2 s  . c  o  m*/
        session.beginTransaction();
        Query q = session.createQuery(consulta);
        List resultList = q.list();
        model = (DefaultTableModel) t_datos.getModel();
        if (resultList.size() > 0) {
            model.getDataVector().removeAllElements();
            for (Object o : resultList) {
                Almacen actor = (Almacen) o;
                Object[] renglon = new Object[10];

                if (actor.getPedido() != null) {
                    renglon[0] = "" + actor.getPedido().getIdPedido();
                    renglon[1] = "" + actor.getPedido().getProveedorByIdProveedor().getNombre();
                } else {
                    renglon[0] = "-";
                    renglon[1] = "" + actor.getEntrego();
                }
                renglon[2] = actor.getFecha().toString();
                renglon[3] = actor.getIdAlmacen();
                if (actor.getTipoMovimiento() == 1) {
                    if (actor.getOperacion() == 1) {
                        renglon[4] = "Entrada";
                        renglon[5] = "P. Interno";
                        Movimiento[] mov = (Movimiento[]) actor.getMovimientos().toArray(new Movimiento[0]);
                        if (mov.length > 0) {
                            renglon[6] = "" + mov[0].getPartida().getOrdenByIdOrden().getIdOrden();
                            double tot = 0.0d;
                            for (int x = 0; x < mov.length; x++) {
                                tot += mov[x].getPartida().getCantPcp() * mov[x].getPartida().getPcp();
                            }
                            renglon[7] = BigDecimal.valueOf(tot).setScale(2, RoundingMode.HALF_UP)
                                    .doubleValue();
                        }
                    }
                    if (actor.getOperacion() == 2) {
                        renglon[4] = "Entrada";
                        renglon[5] = "P. Externo";
                        //renglon[5]=actor.getPedido().getOrden().getIdOrden();
                        renglon[6] = "Ext";
                        Movimiento[] mov = (Movimiento[]) actor.getMovimientos().toArray(new Movimiento[0]);
                        if (mov.length > 0) {
                            double tot = 0.0d;
                            for (int x = 0; x < mov.length; x++) {
                                tot += mov[x].getPartidaExterna().getCantidad()
                                        * mov[x].getPartidaExterna().getCosto();
                            }
                            renglon[7] = BigDecimal.valueOf(tot).setScale(2, RoundingMode.HALF_UP)
                                    .doubleValue();
                        }
                    }
                    if (actor.getOperacion() == 3) {
                        renglon[4] = "Entrada";
                        renglon[5] = "P. Adicional";
                        renglon[6] = "" + actor.getPedido().getOrden().getIdOrden();
                        Movimiento[] mov = (Movimiento[]) actor.getMovimientos().toArray(new Movimiento[0]);
                        if (mov.length > 0) {
                            double tot = 0.0d;
                            for (int x = 0; x < mov.length; x++) {
                                tot += mov[x].getPartidaExterna().getCantidad()
                                        * mov[x].getPartidaExterna().getCosto();
                            }
                            renglon[7] = BigDecimal.valueOf(tot).setScale(2, RoundingMode.HALF_UP)
                                    .doubleValue();
                        }
                    }
                    if (actor.getOperacion() == 4) {
                        renglon[4] = "Entrada";
                        renglon[5] = "Compaia";
                        Movimiento[] mov = (Movimiento[]) actor.getMovimientos().toArray(new Movimiento[0]);
                        if (mov.length > 0) {
                            renglon[6] = "" + mov[0].getPartida().getOrdenByIdOrden().getIdOrden();
                            double tot = 0.0d;
                            /*for(int x=0; x<mov.length; x++)
                            {
                            tot+=mov[x].getPartida().getCantPcp()*mov[x].getPartida().getPcp();
                            }*/
                            renglon[7] = BigDecimal.valueOf(tot).setScale(2, RoundingMode.HALF_UP)
                                    .doubleValue();
                        }
                    }
                } else {

                    if (actor.getOperacion() == 1) {
                        renglon[4] = "Devolucin";
                        renglon[5] = "P. Interno";
                        Movimiento[] mov = (Movimiento[]) actor.getMovimientos().toArray(new Movimiento[0]);
                        if (mov.length > 0) {
                            renglon[6] = "" + mov[0].getPartida().getOrdenByIdOrden().getIdOrden();
                            double tot = 0.0d;
                            for (int x = 0; x < mov.length; x++) {
                                tot += mov[x].getPartida().getCantPcp() * mov[x].getPartida().getPcp();
                            }
                            renglon[7] = BigDecimal.valueOf(tot).setScale(2, RoundingMode.HALF_UP)
                                    .doubleValue();
                        }
                    }
                    if (actor.getOperacion() == 2) {
                        renglon[4] = "Devolucin";
                        renglon[5] = "P. Externo";
                        renglon[6] = "Ext";
                        Movimiento[] mov = (Movimiento[]) actor.getMovimientos().toArray(new Movimiento[0]);
                        if (mov.length > 0) {
                            double tot = 0.0d;
                            for (int x = 0; x < mov.length; x++) {
                                tot += mov[x].getPartidaExterna().getCantidad()
                                        * mov[x].getPartidaExterna().getCosto();
                            }
                            renglon[7] = BigDecimal.valueOf(tot).setScale(2, RoundingMode.HALF_UP)
                                    .doubleValue();
                        }
                    }
                    if (actor.getOperacion() == 3) {
                        renglon[4] = "Devolucin";
                        renglon[5] = "P. Adicional";
                        renglon[6] = "" + actor.getPedido().getOrden().getIdOrden();
                        Movimiento[] mov = (Movimiento[]) actor.getMovimientos().toArray(new Movimiento[0]);
                        if (mov.length > 0) {
                            double tot = 0.0d;
                            for (int x = 0; x < mov.length; x++) {
                                tot += mov[x].getPartidaExterna().getCantidad()
                                        * mov[x].getPartidaExterna().getCosto();
                            }
                            renglon[7] = BigDecimal.valueOf(tot).setScale(2, RoundingMode.HALF_UP)
                                    .doubleValue();
                        }
                    }
                    if (actor.getOperacion() == 4) {
                        renglon[4] = "Devolucin";
                        renglon[5] = "Compaia";
                        Movimiento[] mov = (Movimiento[]) actor.getMovimientos().toArray(new Movimiento[0]);
                        if (mov.length > 0) {
                            renglon[6] = "" + mov[0].getPartida().getOrdenByIdOrden().getIdOrden();
                            double tot = 0.0d;
                            /*for(int x=0; x<mov.length; x++)
                            {
                            tot+=mov[x].getPartida().getCantPcp()*mov[x].getPartida().getPcp();
                            }*/
                            renglon[7] = BigDecimal.valueOf(tot).setScale(2, RoundingMode.HALF_UP)
                                    .doubleValue();
                        }
                    }
                }
                if (actor.getTipoDocumento().compareTo("R") == 0)
                    renglon[8] = "Remisin";
                else
                    renglon[8] = "Factura";
                renglon[9] = actor.getDocumento();
                model.addRow(renglon);
            }
        } else
            model.getDataVector().removeAllElements();
        t_datos.revalidate();
    } catch (Exception e) {
        e.printStackTrace();
    }
    if (session != null)
        if (session.isOpen())
            session.close();
}

From source file:Anbulategi.GaixoaDAOHibernate.java

@Override
public List<Errezeta> lortuErrezetak(int GSZ) {
    Session session = HibernateUtil.getSessionFactory().getCurrentSession();
    try {/*from w w  w  .j  a  v a  2  s  . c  o  m*/
        session.beginTransaction();
        String hql = "From Errezeta errezeta where gaixoa.GSZ = ?";
        Query kontsulta = session.createQuery(hql).setParameter(0, GSZ);
        List<Errezeta> set = kontsulta.list();
        session.getTransaction().commit();
        return set;
    } catch (Exception ex) {
        ex.printStackTrace();
        session.getTransaction().rollback();
        return null;
    }
}

From source file:Anbulategi.GaixoaDAOHibernate.java

@Override
public List<bajaTxostena> lortuBajaTxostenak(int GSZ) {
    Session session = HibernateUtil.getSessionFactory().getCurrentSession();
    try {//  w  w w .j  a va2  s . co  m
        session.beginTransaction();
        String hql = "From bajaTxostena Baja where baja.GSZ = ?";
        Query kontsulta = session.createQuery(hql).setParameter(0, GSZ);
        List<bajaTxostena> set = kontsulta.list();

        session.getTransaction().commit();
        return set;
    } catch (Exception ex) {
        ex.printStackTrace();
        session.getTransaction().rollback();
        return null;
    }
}

From source file:Anbulategi.GaixoaDAOHibernate.java

@Override
public boolean gaixoaDago(Gaixoa ga) {
    Session session = HibernateUtil.getSessionFactory().getCurrentSession();
    try {//from   ww w.ja va2 s .  c  o m
        session.beginTransaction();
        String hql = "From Gaixoa gaixo where gaixo.GSZ = ?";
        Query kontsulta = session.createQuery(hql).setParameter(0, ga.getGSZ());
        List<Gaixoa> lista = kontsulta.list();
        session.getTransaction().commit();
        return !lista.isEmpty();
    } catch (Exception ex) {
        ex.printStackTrace();
        session.getTransaction().rollback();
        return false;
    }
}