Example #1
0
        //para borrar colectivos de la lista
        private void button4_Click(object sender, EventArgs e)
        {
            colectivo colectivo = comboBox2.SelectedItem as colectivo;

            //si libre=true, el colectivo no tiene un viaje asignado
            bool libre = true;

            //verifica que el colectivo no este asignado a un viaje. Si lo está, muestra mensaje de error
            foreach (var item in bd.viajes)
            {
                if (item.recibir_colectivo() == colectivo)
                {
                    MessageBox.Show("No se puede eliminar un colectivo asignado a un viaje. Debe cancelar el viaje primero.", "¡Invalido!",
                                    MessageBoxButtons.OK, MessageBoxIcon.Error);
                    libre = false;
                }
            }

            //si el colectivo esta libre, lo quita de la lista
            if (libre == true)
            {
                comboBox2.Items.Remove(colectivo);
                empresa.colectivos.Remove(colectivo);
            }
            comboBox2.Text = "";
        }
 //constructor
 public viaje(ciudad origen, ciudad destino, string fecha, string hora, Empresa empresa, colectivo colectivo, string categoria)
 {
     this.empresa   = empresa;
     this.origen    = origen;
     this.destino   = destino;
     this.fecha     = fecha;
     this.hora      = hora;
     this.colectivo = colectivo;
     asientos       = new List <int>();
 }
Example #3
0
        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);
            }
        }
Example #4
0
        //añade el colectivo y actualiza el combobox de colectivos
        private void button7_Click(object sender, EventArgs e)
        {
            //añade al combobox la nueva matrícula
            string nueva_matricula = textBox6.Text;

            comboBox2.Items.Add(nueva_matricula);

            //añade el colectivo a la empresa
            colectivo nuevo = new colectivo();

            nuevo.patente = textBox6.Text;
            empresa.colectivos.Add(nuevo);

            //oculta el textbox de añadir colectivo
            textBox6.Text    = "";
            textBox6.Visible = button7.Visible = false;
        }
        private void button1_Click(object sender, EventArgs e)
        {
            //verifica que se haya ingresado una matrícula válida
            if (textBox1.Text != "" && textBox1.Text != " " && textBox1.Text != "  " && textBox1.Text != "   ")
            {
                //crea el colectivo con la matrícula indicada
                colectivo nuevo = new colectivo();
                nuevo.patente = textBox1.Text;

                //abre la base de datos y guarda el colectivo creado para poder añadirlo a la empresa más adelante
                Basededatos bd = new Basededatos();
                bd = Archivo.Open();
                bd.colectivo.Add(nuevo);

                //guarda la base de datos
                bd.Save();
            }

            //cierra la ventana
            this.Close();
        }
 //reserva el colectivo asignado e impide que se pueda usar para otros viajes
 public Basededatos reservar_colectivo(Basededatos bd, string empresa, string patente_colectivo)
 {
     //busca coimcidencias de empresa
     foreach (var item in bd.empresas)
     {
         if (item.nombre == empresa)
         {
             //busca coincidencias de colectivo
             foreach (var item2 in item.colectivos)
             {
                 if (item2.patente == patente_colectivo)
                 {
                     //le asigna el estado "NO DISPONIBLE"
                     colectivo = item2;
                     item2.modificar_estado(false);
                 }
             }
         }
     }
     return(bd);
 }