@Override public Almacen actualiza(Almacen almacen, Usuario usuario) { Session session = currentSession(); if (usuario != null) { almacen.setEmpresa(usuario.getEmpresa()); } try { // Actualiza la almacen log.debug("Actualizando almacen"); session.update(almacen); session.flush(); } catch (NonUniqueObjectException e) { try { session.merge(almacen); } catch (Exception ex) { log.error("No se pudo actualizar la almacen", ex); throw new RuntimeException("No se pudo actualizar la almacen", ex); } } if (usuario != null) { usuario.setAlmacen(almacen); } session.flush(); return almacen; }
@Override public Almacen crea(Almacen almacen, Usuario usuario) { Session session = currentSession(); if (usuario != null) { almacen.setEmpresa(usuario.getEmpresa()); } session.save(almacen); if (usuario != null) { usuario.setAlmacen(almacen); session.save(usuario); } TipoProducto tipoProducto = new TipoProducto("TIPO1", "TIPO1", almacen); session.save(tipoProducto); reporteDao.inicializaAlmacen(almacen); session.flush(); return almacen; }