//cancela el viaje seleccionado private void button2_Click(object sender, EventArgs e) { //vacia los campos textBox1.Text = textBox2.Text = textBox3.Text = textBox4.Text = ""; textBox5.Text = textBox6.Text = textBox7.Text = ""; textBox8.Text = comboBox1.Text = ""; viaje selec = comboBox1.SelectedItem as viaje; string empresa = selec.dev_empresa(); //recoge el asiento devuelto... int asiento_devuelto = selec.asientos_libres().Last(); //elimina el viaje bd.usuario_activo.viajes.Remove(selec); //devuelve el asiento al viaje foreach (var item in bd.viajes) { if (item.dev_colectivo() == selec.dev_colectivo()) { item.cargar_asiento(asiento_devuelto); } } //y actualiza los viajes disponibles en el combobox comboBox1.Items.Clear(); foreach (var item in bd.usuario_activo.viajes) { comboBox1.Items.Add(item); } bd.Save(); }
private void button1_Click(object sender, EventArgs e) { try { //instancia las ciudades, empresa y colectivo seleccionados ciudad origen = comboBox3.SelectedItem as ciudad; ciudad destino = comboBox4.SelectedItem as ciudad; Empresa empresa = comboBox5.SelectedItem as Empresa; colectivo colectivo = comboBox6.SelectedItem as colectivo; //se crea strings de fecha y hora de viaje DateTime dt = dateTimePicker1.Value; string fecha = dt.ToShortDateString(); string hora = comboBox1.Text; //se crea string de categoría string categoria = comboBox2.Text; //se crea el viaje usando el constructor viaje nuevo = new viaje(origen, destino, fecha, hora, empresa, colectivo, categoria); bd = nuevo.reservar_colectivo(bd, empresa.nombre, colectivo.patente); //se crean los 30 asientos que tiene un colectivo nuevo.crear_asientos(); //se calcula la distancia del viaje nuevo.calcular_km(); //se calcula el precio por distancia nuevo.calcular_precio(); //se añade el precio por categoría establecida nuevo.establecer_categoria(categoria); nuevo.sumar_categoria(); //se añade a la lista de viajes y se guarda bd.viajes.Add(nuevo); bd.Save(); //regresa a la ventana anterior this.Owner.Show(); this.Close(); } catch { MessageBox.Show("Falta rellenar campos", "¡Error!", MessageBoxButtons.OK, MessageBoxIcon.Warning); } }
//muestra en pantalla los datos del viaje seleccionado private void button2_Click(object sender, EventArgs e) { if (comboBox1.Text != "") { viaje viaje = comboBox1.SelectedItem as viaje; ORIGENtextBox1.Text = viaje.dev_origen(); //ORIGEN DESTINOtextBox1.Text = viaje.dev_destino(); //DESTINO textBox1.Text = viaje.dev_fecha(); //FECHA textBox2.Text = viaje.dev_hora(); //HORA CATEGORIAtextBox2.Text = viaje.dev_categoria(); //CATEGORÍA EPRESAtextBox3.Text = viaje.dev_empresa(); //EMPRESA textBox3.Text = viaje.dev_colectivo(); //COLECTIVO ASIGNADO textBox4.Text = (viaje.devolver_km()).ToString("N2") + " Km."; //DISTANCIA } }
//carga en los campos la información del viaje seleccionado private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { button2.Enabled = true; viaje selec = comboBox1.SelectedItem as viaje; textBox1.Text = selec.dev_origen(); //ORIGEN textBox2.Text = selec.dev_destino(); //DESTINO textBox3.Text = selec.dev_categoria(); //CATEGORIA textBox4.Text = selec.dev_empresa(); //EMPRESA textBox5.Text = selec.dev_fecha(); //FECHA textBox6.Text = selec.dev_hora(); //HORA textBox7.Text = (selec.asientos_libres().Last()).ToString(); //ASIENTO COMPRADO textBox8.Text = selec.devolver_tipo(); //TIPO DE PASAJE }
//muestra en pantalla los datos del viaje seleccionado private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) { viaje nuevo = comboBox1.SelectedItem as viaje; textBox1.Text = nuevo.dev_fecha(); //FECHA textBox2.Text = nuevo.dev_hora(); //HORA CATEGORIAtextBox2.Text = nuevo.dev_categoria(); //CATEGORIA EPRESAtextBox3.Text = nuevo.dev_empresa(); //EMPRESA label10.Text = (nuevo.numero_de_asientos()).ToString(); //N° DE ASIENTOS LIBRES //carga en el combobox la lista de asientos disponibles comboBox4.Items.Clear(); foreach (var item in nuevo.asientos_libres()) { comboBox4.Items.Add(item); } }
//elimina un viaje de la base de datos private void button3_Click(object sender, EventArgs e) { if (comboBox1.Text != "") { //borra el viaje de la base de datos viaje a_borrar = comboBox1.SelectedItem as viaje; bd = a_borrar.liberar_colectivo(bd); bd.viajes.Remove(a_borrar); //vacia los campos ORIGENtextBox1.Text = DESTINOtextBox1.Text = textBox4.Text = textBox1.Text = textBox2.Text = ""; CATEGORIAtextBox2.Text = textBox3.Text = ""; //actualiza el combobox de viajes y cierra la base de datos comboBox1.Items.Clear(); foreach (var item in bd.viajes) { comboBox1.Items.Add(item); } bd.Save(); comboBox1.Text = " "; } }
//elimina un viaje de la lista de viajes comprados public void eliminar_viaje(viaje via) { viajes.Remove(via); }
//añade un viaje a la lista de viajes comprados public void nuevo_viaje(viaje via) { viajes.Add(via); }
//crea el viaje y lo guarda en la lista de viajes comprados private void button1_Click(object sender, EventArgs e) { try { //variable que indica el tipo de pasaje seleccionado string tipo; //variable que indica que se ingresaron todos los campos requeridos bool correcto = false; //controla que se hayan completado los campos correspondientes de acuerdo al tipo de pasaje if (comboBox2.Text != "" && comboBox3.Text != "" && comboBox1.Text != "" && comboBox5.Text != "") { if (comboBox5.Text == "General") { correcto = true; } else { if (comboBox5.Text == "Estudiante") { if (textBox4.Text != "" && textBox5.Text != "" && textBox6.Text != "") { correcto = true; } } else { if (textBox3.Text != "") { correcto = true; } } } //si los campos están completos, crea el viaje para el usuario if (correcto == true) { ciudad o = comboBox2.SelectedItem as ciudad; ciudad d = comboBox3.SelectedItem as ciudad; viaje elegido = comboBox1.SelectedItem as viaje; tipo = comboBox5.Text; //crea objeto viaje recogiendo datos del viaje elegido viaje nuevo = new viaje(o, d, elegido.dev_fecha(), elegido.dev_hora(), elegido.recibir_empresa(), elegido.recibir_colectivo(), elegido.dev_categoria()); //guarda categoria del viaje comprado nuevo.establecer_categoria(CATEGORIAtextBox2.Text); //guarda precio del viaje comprado nuevo.asignar_precio(elegido.devolver_precio()); //guarda el tipo de pasaje elegido if (comboBox5.Text == "Estudiante") { nuevo.asignar_tipo(estudiante.devolver_datos()); } else { if (comboBox5.Text == "Jubilado") { nuevo.asignar_tipo(jubilado.devolver_datos()); } else { nuevo.asignar_tipo(general.devolver_datos()); } } string tipo_pasaje = comboBox5.Text; double precio_descontado; //recibe el precio del viaje double precio_viaje = nuevo.devolver_precio(); //realiza el descuento correspondiente dependiendo del tipo de pasaje if (tipo_pasaje == "General") { precio_descontado = general.aplicar_descuento(precio_viaje); } else { if (tipo_pasaje == "Estudiante") { precio_descontado = estudiante.aplicar_descuento(precio_viaje); } else { precio_descontado = jubilado.aplicar_descuento(precio_viaje); } } nuevo.modificar_precio(precio_descontado); //guarda el asiento elegido en el viaje del usuario, y lo quita de la lista de disponibles int asiento_elegido = int.Parse(comboBox4.Text); elegido.selec_asiento(asiento_elegido); nuevo.cargar_asiento(asiento_elegido); //agrega el viaje a la lista de viajes del usuario activo usuario_gral usuario_activo = bd.usuario_activo; bd.usuario_activo.viajes.Add(nuevo); //guarda y cierra bd.Save(); this.Close(); } //si se ingresaron datos incorrectos, muestra mensaje de error else { MessageBox.Show("Datos incorrectos", "¡Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } //si se ingresaron datos incorrectos, muestra mensaje de error catch { MessageBox.Show("Datos incorrectos", "¡Error!", MessageBoxButtons.OK, MessageBoxIcon.Error); } }