Esempio n. 1
0
        private void btnRealizarCompra_Click(object sender, EventArgs e)
        {
            if (cmbClientes.SelectedItem == null || txtPersonaResponsable.Text == "")
            {
                MessageBox.Show("Revise los datos faltantes.");
            }
            else
            {
                if (cmbEnvio.SelectedIndex == 0 && (txtCalle.Text == "" || txtAltura.Text == ""))
                {
                    MessageBox.Show("Revise los datos faltantes.");
                }
                else
                {
                    DateTime fechaHora = new DateTime();
                    fechaHora = DateTime.Now;
                    int          idCliente = cmbClientes.SelectedIndex;
                    int          nroCompra = Comercio.RegistrarNuevaCompra(int.Parse(datosEmpleado[0]), idCliente, Comercio.Carrito);
                    int          nroEnvio;
                    StreamWriter sw = File.CreateText($"Ticket Nro{nroCompra}.txt");
                    sw.WriteLine("Kwik-E-Mart - Recibo X");
                    sw.WriteLine("---------------------------");
                    sw.WriteLine($"{fechaHora}");
                    sw.WriteLine("---------------------------");
                    sw.WriteLine($"Usted ha sido atendido por: {lblDataNombreVendedor.Text} {lblDataApellidoVendedor.Text}");
                    sw.WriteLine("---------------------------");
                    sw.WriteLine($"Cliente: {cmbClientes.SelectedItem.ToString()}");
                    sw.WriteLine("---------------------------");
                    sw.WriteLine("Producto Nro Descripcion Cantidad PrecioU Subtotal");
                    foreach (Producto item in Comercio.Carrito)
                    {
                        sw.WriteLine($"{item.NroProducto} {item.Descripcion} {item.Cantidad} {item.Precio} {item.Subtotal}");
                    }
                    switch (cmbEnvio.SelectedIndex)
                    {
                    case 0:
                        nroEnvio = Comercio.EnvioADomicilio.Count;
                        EnvioADomicilio aDomicilio = new EnvioADomicilio(nroEnvio, nroCompra, txtPersonaResponsable.Text, txtCalle.Text, int.Parse(txtAltura.Text), envio);
                        Comercio.AgregarEnvioDomicilio(aDomicilio);
                        sw.WriteLine(aDomicilio.ObtenerEnvio());
                        break;

                    case 1:
                        nroEnvio = Comercio.EnvioRetLocal.Count;
                        EnvioRetLocal retiraEnLocal = new EnvioRetLocal(nroEnvio, nroCompra, txtPersonaResponsable.Text);
                        Comercio.AgregarRetiroEnLocal(retiraEnLocal);
                        sw.WriteLine(retiraEnLocal.ObtenerEnvio());
                        break;

                    default:
                        break;
                    }
                    sw.WriteLine("---------------------------");
                    sw.WriteLine($"Subtotal: {subTotal.ToString("#.##")}");
                    sw.WriteLine($"Descuentos: {descuento.ToString("#.##")}");
                    sw.WriteLine($"Total: {total.ToString("#.##")}");
                    sw.WriteLine("---------------------------");
                    sw.WriteLine("Gracias, vuelva prontossss!");
                    sw.WriteLine("---------------------------");
                    sw.Close();
                    System.Diagnostics.Process.Start($"Ticket Nro{nroCompra}.txt");
                    SoundPlayer sp = new SoundPlayer($"{path}\\resources\\audio\\CompraFinalizada.wav");
                    sp.Play();
                    MessageBox.Show($"Gracias, vuelva prontossss!");
                    Close();
                }
            }
        }