Advertisement
Guest User

Untitled

a guest
Jun 27th, 2017
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.30 KB | None | 0 0
  1. private void parsearMovimientosStock(String listaMovStock, Flete newFlete, Session s) {
  2.         try {
  3.             DOMParser parser = new DOMParser();
  4.             parser.parse(new InputSource(new java.io.StringReader(listaMovStock)));
  5.            
  6.             Document document = parser.getDocument();
  7.             Node node = document.getFirstChild();
  8.             NodeList nodes = node.getChildNodes();
  9.            
  10.             int i = 0;
  11.             while(i<nodes.getLength()){
  12.                 Node nodeAux = nodes.item(i);
  13.                 if(nodeAux.hasAttributes()){
  14.                     NamedNodeMap atributos = nodeAux.getAttributes();
  15.                    
  16.                    
  17.                     String idStock = atributos.getNamedItem("id_stock").getNodeValue();
  18.                     int idStockInt = 0;
  19.                     if(!idStock.equals("")){
  20.                         idStockInt = Integer.valueOf(idStock);
  21.                     }
  22.                     String accion= atributos.getNamedItem("accion").getNodeValue();
  23.                    
  24.                     if(accion.equals("insertar")){
  25.                         MovimientoStock movimientoStock = new MovimientoStock();
  26.                        
  27.                         DetachedCriteria criteria = DetachedCriteria.forClass(Stock.class);
  28.                         criteria.add(Restrictions.eq("id", idStockInt));
  29.                         List list = getHibernateTemplate().findByCriteria(criteria);
  30.                            
  31.                         if(!list.isEmpty()){
  32.                             Stock stockSearching = (Stock)list.get(0);
  33.                             Calendar dateActual = new GregorianCalendar();
  34.                             movimientoStock.setHora(dateActual.get(Calendar.HOUR_OF_DAY));
  35.                             movimientoStock.setMinutos(dateActual.get(Calendar.MINUTE));
  36.                             movimientoStock.setSegundos(dateActual.get(Calendar.SECOND));
  37.                             movimientoStock.setCantidad(Float.valueOf(atributos.getNamedItem("cantidad").getNodeValue()));
  38.                             movimientoStock.setOperacion("Sustraccion");
  39.                             movimientoStock.setFecha(new java.util.Date());
  40.                            
  41.                             DetachedCriteria criteriaUnidad = DetachedCriteria.forClass(Unidad.class);
  42.                             criteriaUnidad.add(Restrictions.eq("id", Integer.valueOf(atributos.getNamedItem("id_unidad").getNodeValue())));
  43.                             List listUnidad = getHibernateTemplate().findByCriteria(criteriaUnidad);
  44.                             if(!listUnidad.isEmpty()){
  45.                                 Unidad unidadNodo= (Unidad)listUnidad.get(0);
  46.                                 movimientoStock.setUnidad(unidadNodo);
  47.                             }
  48.                             //movimientoStock.setUnidad(s.getUnidad());
  49.                             movimientoStock.setResponsable(s.getGlobal().getUsuario().getPersona());
  50.                             movimientoStock.setInstitucion(s.getGlobal().getInstitucion());
  51.                             movimientoStock.setTipoMovimiento(1);//Sustraccion
  52.                             movimientoStock.setObservaciones("Movimiento realizado con flete - "+atributos.getNamedItem("observaciones").getNodeValue());
  53.                             movimientoStock.setLabor(null);
  54.                             //movimientoStock.setCodigo("0067800");
  55.                             movimientoStock.setStock(stockSearching);
  56.                             movimientoStock.setFlete(newFlete);
  57.                            
  58.                             if(stockSearching.getUnidad().getTipoUnidad().getId()==movimientoStock.getUnidad().getTipoUnidad().getId()){
  59.                                 if(!stockSearching.actualizarCantidad(movimientoStock.getCantidad(),1,movimientoStock.getUnidad().getMultiplicidad())){
  60.                                     //Error no pudo insertar por falta de stock
  61.                                 }
  62.                             }
  63.                                
  64.                         }
  65.                        
  66.                         newFlete.getMovimientosStocks().add(movimientoStock);
  67.                        
  68.                     }
  69.                 }
  70.                 i++;
  71.             }
  72.         }catch (NumberFormatException e){
  73.             err = 100;
  74.         } catch (SAXException e) {
  75.             e.printStackTrace();
  76.         } catch (IOException e) {
  77.             e.printStackTrace();
  78.         }
  79.        
  80.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement