private void imprimirAutorizar()
        {
            //Genera comprobante  para firmar
            List <OrdenEstadoClass> listaEstados = OrdenEstadoClass.ListarPorOrden(ordenEntrega.Id_orden_entrega);


            OrdenEstadoClass       ultEstadoAutorizado = listaEstados.FindLast(x => x.Estado == EstadoOrden.AUTORIZADO);
            DateTime               fecha      = ultEstadoAutorizado.Fecha;
            frmInformeAutorizacion formulario = new frmInformeAutorizacion();

            formulario.idOrden            = ordenEntrega.Id_orden_entrega;
            formulario.usuario            = ordenEntrega.EstadoActual.Usuario.Nombre_completo;
            formulario.fechaAutorizado    = fecha.ToShortDateString();
            formulario.horaAutorizado     = fecha.ToShortTimeString();
            formulario.nombreBeneficiario = ordenEntrega.Beneficiario.Nombre;
            formulario.dniBeneficiario    = ordenEntrega.Beneficiario.Documento;
            formulario.descripcion        = ordenEntrega.Descripcion;

            formulario.ShowDialog();
            formulario.Close();
            formulario = null;
        }
        private void btnAutorizarOrden_Click(object sender, RoutedEventArgs e)
        {
            /*OrdenEstadoClass nuevoEstado = new OrdenEstadoClass();
             *
             * if (ordenEntrega != null)
             * {
             *  MessageBoxResult msg;
             *  msg = MessageBox.Show("¿Seguro que desea autorizar la orden" + ordenEntrega.Id_orden_entrega + "?", "Confirme autorizar orden", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.No);
             *  if (msg == MessageBoxResult.Yes)
             *  {
             *      nuevoEstado.IdOrdenEntrega = ordenEntrega.Id_orden_entrega;
             *      nuevoEstado.Usuario = MainWindow.usuario_logueado;
             *      nuevoEstado.Estado = EstadoOrden.Autorizado;
             *      nuevoEstado.Fecha = DateTime.Now;
             *
             *      if (nuevoEstado.NuevaOrdenEstado())
             *      {
             *          MessageBox.Show("La orden " + ordenEntrega.Id_orden_entrega + " fue autorizada con éxito!", "Autorizar orden", MessageBoxButton.OK, MessageBoxImage.Information);
             *          ordenEntrega.Estados.Add(nuevoEstado);
             *
             *          actualizarGrillasVentanaPrincipal();
             *          InicializarComponentesModificar();
             *      }
             *      else
             *      {
             *          MessageBox.Show("La orden " + ordenEntrega.Id_orden_entrega + " No se puedo autorizar!", "Autorizar orden", MessageBoxButton.OK, MessageBoxImage.Error);
             *      }
             *  }
             *
             *
             * }
             */
            if (opcion == Opcion.modificar)
            {
                if (modifico)
                {
                    MessageBoxResult msg2;
                    msg2 = MessageBox.Show("¿Desea guardar los cambios?", "Confirme guardar cambios", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.No);
                    if (msg2 == MessageBoxResult.Yes)
                    {
                        guardar();
                    }
                }

                if (ordenEntrega != null)
                {
                    MessageBoxResult msg;
                    msg = MessageBox.Show("¿Seguro que desea autorizar la orden" + ordenEntrega.Id_orden_entrega + "?", "Confirme autorizar orden", MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.No);
                    if (msg == MessageBoxResult.Yes)
                    {
                        DateTime fecha = DateTime.Now;
                        if (ordenEntrega.Autorizar(MainWindow.usuario_logueado, fecha))
                        {
                            MessageBox.Show("La orden " + ordenEntrega.Id_orden_entrega + " fue autorizada con éxito!", "Autorizar orden", MessageBoxButton.OK, MessageBoxImage.Information);

                            //Actualiza la grilla
                            actualizarGrillasVentanaPrincipal();



                            //Genera comprobante  para firmar

                            frmInformeAutorizacion formulario = new frmInformeAutorizacion();

                            formulario.idOrden            = ordenEntrega.Id_orden_entrega;
                            formulario.usuario            = ordenEntrega.EstadoActual.Usuario.Nombre_completo;
                            formulario.fechaAutorizado    = fecha.ToShortDateString();
                            formulario.horaAutorizado     = fecha.ToShortTimeString();
                            formulario.nombreBeneficiario = ordenEntrega.Beneficiario.Nombre;
                            formulario.dniBeneficiario    = ordenEntrega.Beneficiario.Documento;
                            formulario.descripcion        = ordenEntrega.Descripcion;

                            formulario.ShowDialog();
                            formulario.Close();
                            formulario = null;


                            actualizarGrillasVentanaPrincipal();
                            InicializarComponentesModificar();
                        }
                        else
                        {
                            MessageBox.Show("La orden " + ordenEntrega.Id_orden_entrega + " No se puedo autorizar!", "Autorizar orden", MessageBoxButton.OK, MessageBoxImage.Error);
                        }
                    }
                }
            }
        }