Пример #1
0
        /// <summary>
        /// Finalizar la comanda con la facturacion del dinero relacionado con la comanda.
        /// </summary>
        /// <param name="comanda"></param>
        private void cancelarCuenta(Comanda comanda)
        {
            if (comanda.estadoCuenta.estadoCuenta_id.Equals("CXP"))
            {
                //update comanda
                foreach (PagoCuenta item in comanda.obtenerDetallePagos())
                {
                    try
                    {
                        //Actualiza y guarda el pago de la comanda con su respectivo monto
                        PagoCuentaLN.Nuevo(comanda.comanda_id, item);

                        //Actualiza el estado de la cuenta

                        //crea un nuevo objeto 'EstadoCuenta'
                        EstadoCuenta estadoCuenta = new EstadoCuenta();

                        //Selecciona el objeto desde la base de datos
                        estadoCuenta = EstadoCuentaLN.SeleccionarEstadoCuenta("C-SUCCESS");

                        //Se agrega el objeto a la comanda actual
                        comanda.estadoCuenta = estadoCuenta;

                        //Actualiza el estado de la comanda a finalizada
                        comanda.estadoComanda = EstadoComandaLN.SeleccionarEstadoComanda("FIN");

                        //Actualiza el estado de la cuenta a nivel de datos
                        ComandaLN.Modificar(comanda);

                        //Liberar la mesa
                        liberarMesa(comanda);

                        lblErrorMessage.Text     = "La comanda has sido cancelada satisfactoriamente. Espere unos segundos y será redirigido a la página principal de comandas.";
                        lblErrorMessage.CssClass = "alert alert-success";
                        Response.AppendHeader("Refresh", "2;url=reporteFactura.aspx");
                    }
                    catch (Exception ex)
                    {
                        lblErrorMessage.Text = "Ha ocurrido un error al procesar el pago de la comanda.\n" +

                                               "Código de error: " + ex.Message;
                    }
                }
            }
        }