Exemplo n.º 1
0
        private void button1_Click(object sender, EventArgs e)
        {
            DataBase.GetInstance().Transaccion_Comenzar();

            ClienteDAO cl_dao = new ClienteDAO();
            Cliente responsable = cl_dao.Cliente_FindByDni(Convert.ToInt32(txtDni.Text));
            if (responsable == null)
                responsable = new Cliente();

            responsable.Dni = Convert.ToInt32(txtDni.Text);
            responsable.Nombre = txtNombre.Text;
            responsable.Apellido = txtApellido.Text;
            responsable.Direccion = txtDireccion.Text;
            responsable.Mail = txtMail.Text;
            responsable.Telefono = Convert.ToInt32(txtTelefono.Text);
            responsable.FechaNac = new DateTime(cmbAnio.SelectedIndex + 1900, cmbMes.SelectedIndex + 1, (int)cmbDia.SelectedValue);

            cl_dao.Guardar_cliente(responsable);

            string base64Guid = Guid.NewGuid().ToString().Replace("-", "").Substring(0, 8).ToUpper();
            detalle.PNR = base64Guid;
            detalle.FechaCompra = DateTime.Now;
            detalle.Responsable_Pago = responsable;
            if (rdbTarjeta.Checked)
            {
                if (txtTC_Venc.Text.Length != 4)
                {
                    MessageBox.Show("El vencimiento de la tarjeta es invalido");
                    return;
                }

                detalle.TC_Numero = Convert.ToInt32(txtTC_Numero.Text);
                detalle.TC_Tipo = cmbTC_Tipo.SelectedValue.ToString();
                detalle.Cuotas = Convert.ToInt32(cmbTC_Cuotas.SelectedValue);
                detalle.TC_Vencimiento = txtTC_Venc.Text;
                detalle.MedioPago = "TC";
            }
            else
            {
                detalle.MedioPago = "Efectivo";
            }

            new DetalleCompraDAO().Guardar_detalleCompra(detalle);
            PasajeDAO pasaje_dao = new PasajeDAO();
            foreach (Pasaje p in pasajes)
            {
                pasaje_dao.Guardar_pasaje(p);
            }
            if (paquete != null)
                new PaqueteDAO().Guardar_paquete(paquete);

            DataBase.GetInstance().Transaccion_Commit();
            MessageBox.Show("Gracias por su compra. Su PNR es: " + base64Guid);
            Main form = new Main();
            form.Show();
            this.Hide();
        }