Example #1
0
  public FacturaAlmacen actualiza(FacturaAlmacen otraFactura, Usuario usuario)
      throws NoEstaAbiertaException {
    FacturaAlmacen factura =
        (FacturaAlmacen) currentSession().get(FacturaAlmacen.class, otraFactura.getId());
    switch (factura.getEstatus().getNombre()) {
      case Constantes.ABIERTA:
        Session session = currentSession();
        factura.setVersion(otraFactura.getVersion());
        factura.setFecha(otraFactura.getFecha());
        factura.setComentarios(otraFactura.getComentarios());
        factura.setIva(otraFactura.getIva());
        factura.setTotal(otraFactura.getTotal());
        factura.setCliente(otraFactura.getCliente());
        Date fecha = new Date();
        factura.setFechaModificacion(fecha);
        session.update(factura);

        audita(factura, usuario, Constantes.ACTUALIZAR, fecha);

        session.flush();
        return factura;
      default:
        throw new NoEstaAbiertaException("No se puede actualizar una factura que no este abierta");
    }
  }