예제 #1
0
        /// <summary>
        /// Gestiona lo necesario para la venta de lo productos seleccionado
        /// esto utilizando un delegado el cual maneja las funciones para
        /// Verificar stock(en caso de que el stock sea menor
        /// a los articulos requeridos lanza una excepcion),modificar el stock
        /// (el cual lanza el evento que genera el ticket) y
        /// genera un archivo .xml con las ventas realizadas.
        /// Dichas funciones se ejecutan invocando al delegado.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>


        private void btnVender_Click(object sender, EventArgs e)
        {
            if (this.textPago.Text != "" && float.Parse(this.textPago.Text) >= ImporteDeVenta)
            {
                List <Producto> productos = ProductosSeleccionados;


                miDelegadoDeVenta  = new DelegadoDeVenta(Venta.VerificarStock);
                miDelegadoDeVenta += Venta.modificarStock;
                miDelegadoDeVenta += Venta.GuardarVentasEnXml;



                try
                {
                    miDelegadoDeVenta.Invoke(productos);
                    string cadena = string.Format("La venta se realizo con exito \n \t \t El vuelto es de un total de {0} $", (float)(Convert.ToDouble(this.textPago.Text)) - ImporteDeVenta);
                    MessageBox.Show(cadena);
                }

                catch (SobrepasaStockException e1)
                {
                    MessageBox.Show(e1.Message);
                }
                catch (EstableciendoConexionException e2)
                {
                    MessageBox.Show(e2.Message);
                }

                finally
                {
                    //string cadena = string.Format("La venta se realizo con exito \n \t \t El vuelto es de un total de {0} $", (float)(Convert.ToDouble(this.textPago.Text)) - ImporteDeVenta);
                    //MessageBox.Show(cadena);
                    this.aux.Clear();
                    this.textPago.Clear();
                    this.lblImporte.Text = "";
                }
            }
            else
            {
                string fallo = "El importe a abonar es mayor al monto de pago cargado.";


                MessageBox.Show(fallo);
            }
        }
예제 #2
0
        /// <summary>
        /// Gestiona lo necesario para la venta de lo productos seleccionado
        /// esto utilizando un delegado el cual maneja las funciones para
        /// Verificar stock(en caso de que el stock sea menor
        /// a los articulos requeridos lanza una excepcion),modificar el stock
        /// (el cual lanza el evento que genera el ticket) y
        /// genera un archivo .xml con las ventas realizadas.
        /// Dichas funciones se ejecutan invocando al delegado.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>


        private void btnVender_Click(object sender, EventArgs e)
        {
            if (float.Parse(this.textPago.Text) >= float.Parse(ImporteDeVenta))
            {
                List <Producto> productos = ProductosSeleccionados;

                //inicializo al delegado
                miDelegadoDeVenta  = new DelegadoDeVenta(Venta.VerificarStock);
                miDelegadoDeVenta += Venta.modificarStock;
                miDelegadoDeVenta += Venta.GuardarVentasEnXml;



                try
                {
                    miDelegadoDeVenta.Invoke(productos);
                }

                catch (SobrepasaStockException e1)
                {
                    MessageBox.Show(e1.Message);
                }
                catch (EstableciendoConexionException e2)
                {
                    MessageBox.Show(e2.Message);
                }

                finally
                {
                    this.aux.Clear();
                    this.textPago.Clear();
                    this.lblImporte.Text = "";
                    MessageBox.Show("Se realizo la venta con exito");
                }
            }
            else
            {
                string fallo = "El importe a abonar es mayor al monto de pago cargado.";


                MessageBox.Show(fallo);
            }
        }