/// <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); } }
/// <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); } }