コード例 #1
0
 protected void OnComprobanteAutorizando(object sender, ComprobanteAutorizandoArgs args)
 {
     if (ComprobanteAutorizando != null)
     {
         ComprobanteAutorizando.Invoke(sender, args);
     }
 }
コード例 #2
0
        public virtual void ConfirmarComprobante(ComprobanteBase comprobante)
        {
            //Validaciones
            if (comprobante.Estado == ComprobanteEstado.Confirmado)
            {
                throw new UserFriendlyException("Comprobante ya confirmado");
            }

            if (comprobante.Estado == ComprobanteEstado.Anulado)
            {
                throw new UserFriendlyException("Comprobante anulado");
            }

            ConfirmarComprobanteValidar(comprobante);

            if (comprobante.Talonario != null)
            {
                comprobante.NumerarAutomatico( );
                comprobante.Talonario.UltimoNumero = comprobante.Numero;
            }

            var args = new ComprobanteAutorizandoArgs {
                Autorizado = true, Comprobante = comprobante
            };

            OnComprobanteAutorizando(comprobante, args);

            if (!args.Autorizado)
            {
                return;
            }

            comprobante.Estado = ComprobanteEstado.Confirmado;

            ConfirmarComprobanteAfter(comprobante);
        }