//binariza la base de datos y guarda en el archivo
        public static void Save(Basededatos bd)
        {
            FileStream      file     = new FileStream(Properties.Settings.Default.pathdb, FileMode.OpenOrCreate);
            BinaryFormatter formater = new BinaryFormatter();

            formater.Serialize(file, bd);
            file.Close();
        }
        //borra los colectivos sin asignar a empresa de la base de datos
        public crear_empresa()
        {
            InitializeComponent();
            Basededatos bd = Archivo.Open();

            bd.colectivo.Clear();
            bd.Save();
        }
        //abre el archivo guardado y lo carga en una clase de tipo Basededatos
        public static Basededatos Open()
        {
            FileStream      file      = new FileStream(Properties.Settings.Default.pathdb, FileMode.OpenOrCreate);
            BinaryFormatter formater  = new BinaryFormatter();
            Basededatos     resultado = formater.Deserialize(file) as Basededatos;

            file.Close();
            return(resultado);
        }
 public lista_usuarios()
 {
     //inicializa cargando el comboBox con los datos almacenados en el archivo
     InitializeComponent();
     bd = Archivo.Open();
     foreach (var item in bd.usuarios)
     {
         comboBox1.Items.Add(item);
     }
 }
        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                //verifica que los campos obligatorios no estén vacíos
                if (textBox1.Text != "" && textBox2.Text != "" && textBox7.Text != "" && textBox8.Text != "" &&
                    textBox4.Text != "")
                {
                    // crea un objeto usuario usando el constructor
                    usuario_gral nuevo = new usuario_gral(textBox1.Text, textBox3.Text, int.Parse(textBox2.Text),
                                                          Convert.ToInt64(textBox4.Text), textBox6.Text, textBox5.Text, textBox7.Text, textBox8.Text);

                    //abre la base de datos
                    Basededatos bd = Archivo.Open();

                    //esta variable es para controlar que no exista el usuario
                    bool disponible = true;

                    //se busca coincidencias de usuarios en la lista de usuarios guardada
                    foreach (var item in bd.usuarios)
                    {
                        if (item.usuario == textBox7.Text)
                        {
                            disponible = false;
                        }
                    }

                    //si no existe el usuario, se añade a la base de datos
                    if (disponible == true)
                    {
                        bd.usuarios.Add(nuevo);
                        bd.Save();
                        this.Close();
                    }
                    //si ya existe el usuario, se solicita cambiar el mismo
                    else
                    {
                        MessageBox.Show("Nombre de Usuario no disponible. Seleccione otro.", "¡Advertencia!", MessageBoxButtons.OK,
                                        MessageBoxIcon.Exclamation);
                    }
                }
                //si falta rellenar campos obligatorios, se muestra mensaje de error
                else
                {
                    MessageBox.Show("Los campos marcados con * son obligatorios.", "¡Error!",
                                    MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            catch
            //si se ingresó un telefono o dni de formato incorrecto, se muestra mensaje de error
            {
                MessageBox.Show("Ha ingresado un DNI y/o Teléfono incorrectos", "¡Error!",
                                MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Beispiel #6
0
        public modificar_viaje()
        {
            InitializeComponent();

            //abre el archivo y carga el combobox con los viajes existentes
            bd = Archivo.Open();
            foreach (var item in bd.viajes)
            {
                comboBox1.Items.Add(item);
            }
        }
        private void button1_Click(object sender, EventArgs e)
        {
            if (textBox1.Text != "")
            {
                //crea un objeto empresa usando el constructor
                Empresa nueva = new Empresa(textBox1.Text, textBox2.Text, textBox3.Text, textBox4.Text,
                                            textBox5.Text, textBox7.Text);

                //esta variable se usa para ver si el nombre de la empresa esta disponible
                bool disponible = true;

                //abre la base de datos
                Basededatos bd = Archivo.Open();

                //revisa que no exista una empresa con el mismo nombre
                foreach (var item in bd.empresas)
                {
                    if (item.nombre == textBox1.Text)
                    {
                        disponible = false;
                    }
                }

                //si no existe la empresa, le asigna los colectivos y la guarda en el archivo
                if (disponible == true)
                {
                    //asigna los colectivos a la empresa
                    foreach (var item in bd.colectivo)
                    {
                        nueva.colectivos.Add(item);
                    }

                    //agrega la empresa a la lista de empresas
                    bd.empresas.Add(nueva);
                    bd.Save();

                    this.Close();
                }
                //si ya existe la empresa, muestra un mensaje de error
                else
                {
                    MessageBox.Show("Ya existe una empresa con ese nombre.", "¡Error!",
                                    MessageBoxButtons.OK, MessageBoxIcon.Stop);
                }
            }
            //si no se asigna un nombre a la empresa, no se puede crear la misma
            else
            {
                MessageBox.Show("La empresa debe tener al menos un nombre", "¡Error!",
                                MessageBoxButtons.OK, MessageBoxIcon.Stop);
            }
        }
Beispiel #8
0
        public ver_viajes()
        {
            InitializeComponent();

            //abre el archivo y carga en el combobox la lista de viajes comprados por el usuario
            bd = Archivo.Open();
            List <viaje> viajes = bd.usuario_activo.viajes;

            foreach (var item in viajes)
            {
                comboBox1.Items.Add(item);
            }
        }
        //inicializa la ventana abriendo la base de datos y cargando los combobox de origen y destino
        public seleccionar_viaje()
        {
            InitializeComponent();
            bd = Archivo.Open();

            //carga los combobox de origen y destino con las ciudades disponibles
            foreach (var item in bd.ciudades)
            {
                comboBox2.Items.Add(item);
                comboBox2.Sorted = true;
                comboBox3.Items.Add(item);
                comboBox3.Sorted = true;
            }
        }
Beispiel #10
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);
            }
        }
        public eliminar_ciudad()
        {
            InitializeComponent();

            //abre el archivo
            bd = Archivo.Open();

            //carga en el combobox la lista de ciudades
            foreach (var item in bd.ciudades)
            {
                comboBox1.Items.Add(item);
                comboBox1.Sorted = true;
            }
        }
Beispiel #12
0
        public modif_empresa()
        {
            InitializeComponent();

            //abre la base de datos y carga en el combobox las empresas existentes
            bd = Archivo.Open();

            foreach (var item in bd.empresas)
            {
                comboBox1.Items.Add(item);
                comboBox1.Sorted = true;
            }
            comboBox1.Text = "";
            bd.Save();
        }
Beispiel #13
0
        //inicia sesión
        private void button2_Click(object sender, EventArgs e)
        {
            bool        valido = false;
            menuadmin   admin;
            menuusuario nuevo;

            //verifica si es el administrador
            if (textBox1.Text == "admin" && textBox2.Text == "pass")
            {
                admin = new menuadmin();
                admin.Show();
            }

            else
            {
                //busca coincidencias de usuario y contraseña
                Basededatos bd = Archivo.Open();
                foreach (var item in bd.usuarios)
                {
                    if (item.contraseña == textBox2.Text && item.usuario == textBox1.Text)
                    {
                        valido            = true;
                        bd.usuario_activo = item;
                    }
                }

                //si encuentra coincidencia, abre ventana de usuario
                if (valido == true)
                {
                    nuevo = new menuusuario();
                    nuevo.Show();
                }

                // si no, muestra mensaje de error
                else
                {
                    MessageBox.Show("Usuario o contraseña inválidos", "¡Error!", MessageBoxButtons.OK,
                                    MessageBoxIcon.Warning);
                }
                bd.Save();
            }
            textBox1.Text = textBox2.Text = "";
        }
 //si el viaje se cancela, se libera el colectivo para ser usado por otros viajes
 public Basededatos liberar_colectivo(Basededatos bd)
 {
     //busca coincidencias de empresa
     foreach (var item in bd.empresas)
     {
         if (item.nombre == empresa.nombre)
         {
             //si encuentra, busca coincidencias de colectivo
             foreach (var item2 in item.colectivos)
             {
                 if (item2.patente == colectivo.patente)
                 {
                     //le asigna el estado DISPONIBLE
                     item2.modificar_estado(true);
                 }
             }
         }
     }
     return(bd);
 }
 //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);
 }
        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();
        }
        public Modif_datos_pers()
        {
            InitializeComponent();

            //abre la base de datos y carga el usuario activo
            Basededatos  bd = Archivo.Open();
            usuario_gral us = bd.usuario_activo;

            //muestra en pantalla los datos del usuario activo
            textBox1.Text = us.nombre;
            textBox5.Text = us.nacimiento;
            textBox8.Text = us.email;
            textBox6.Text = us.usuario;
            textBox2.Text = (us.dni).ToString();
            textBox3.Text = us.domicilio;
            textBox4.Text = (us.telefono).ToString();
            textBox7.Text = us.contraseña;

            //cierra la base de datos
            bd.Save();
        }
Beispiel #18
0
        //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 = " ";
            }
        }
Beispiel #19
0
 //inicializo la ventana abriendo la base de datos
 public nueva_ciudad()
 {
     InitializeComponent();
     bd = Archivo.Open();
 }