예제 #1
0
        public void ChargementDonnees()     // Chargement de tous les contenus des fichiers dans les listes
        {
            listCli  = new List <Client>();
            listVeh  = new List <Vehicule>();
            listLoca = new List <Location>();
            try
            {
                CreationFichierSiNonExistant();
                StreamReader fluxLec = new StreamReader("FichierClient.txt");   // Chargement du FichierClient dans la liste listCli
                while (fluxLec.EndOfStream == false)
                {
                    string[] tab = fluxLec.ReadLine().Split(';');
                    Client   cli = new Client(Convert.ToUInt32(tab[0]), tab[1], tab[2], tab[3], Convert.ToUInt32(tab[4]), Convert.ToBoolean(tab[5]), Convert.ToBoolean(tab[6]), Convert.ToBoolean(tab[7]), Convert.ToBoolean(tab[8]));

                    listCli.Add(cli);
                }
                fluxLec.Close();

                fluxLec = new StreamReader("FichierVehicule.txt");        // Chargement du FichierVehicule dans la liste listVeh
                while (fluxLec.EndOfStream == false)
                {
                    string[] tab = fluxLec.ReadLine().Split(';');
                    Vehicule veh = null;
                    if (tab.Length == 10)
                    {
                        veh = new Moto(Convert.ToUInt32(tab[0]), tab[1], tab[2], Convert.ToInt32(tab[3]), tab[4], Convert.ToInt32(tab[5]), tab[6], tab[7], Convert.ToDouble(tab[8]), Convert.ToInt32(tab[9]));
                    }
                    else if (tab.Length == 11)
                    {
                        veh = new Camion(Convert.ToUInt32(tab[0]), tab[1], tab[2], Convert.ToInt32(tab[3]), tab[4], Convert.ToInt32(tab[5]), tab[6], tab[7], Convert.ToDouble(tab[8]), Convert.ToInt32(tab[9]), Convert.ToDouble(tab[10]));
                    }
                    else if (tab.Length == 12)
                    {
                        veh = new Voiture(Convert.ToUInt32(tab[0]), tab[1], tab[2], Convert.ToInt32(tab[3]), tab[4], Convert.ToInt32(tab[5]), tab[6], tab[7], Convert.ToDouble(tab[8]), Convert.ToInt32(tab[9]), Convert.ToInt32(tab[10]), tab[11]);
                    }
                    listVeh.Add(veh);
                }
                fluxLec.Close();

                fluxLec = new StreamReader("FichierLocation.txt");       // Chargement du FichierLocation dans la liste listLoca
                while (fluxLec.EndOfStream == false)
                {
                    string[] tab  = fluxLec.ReadLine().Split(';');
                    Vehicule veh  = null;
                    Client   cli  = null;
                    Trajet   tra  = null;
                    Location loca = null;
                    if (tab.Length == 26)
                    {
                        veh  = new Moto(Convert.ToUInt32(tab[0]), tab[1], tab[2], Convert.ToInt32(tab[3]), tab[4], Convert.ToInt32(tab[5]), tab[6], tab[7], Convert.ToDouble(tab[8]), Convert.ToInt32(tab[9]));
                        cli  = new Client(Convert.ToUInt32(tab[10]), tab[11], tab[12], tab[13], Convert.ToUInt32(tab[14]), Convert.ToBoolean(tab[15]), Convert.ToBoolean(tab[16]), Convert.ToBoolean(tab[17]), Convert.ToBoolean(tab[18]));
                        tra  = new Trajet(tab[19], tab[20], Convert.ToInt32(tab[21]));
                        loca = new Location(veh, cli, tra, Convert.ToUInt32(tab[22]), tab[23], tab[24], Convert.ToDouble(tab[25]));
                        listLoca.Add(loca);
                    }
                    else if (tab.Length == 27)
                    {
                        veh  = new Camion(Convert.ToUInt32(tab[0]), tab[1], tab[2], Convert.ToInt32(tab[3]), tab[4], Convert.ToInt32(tab[5]), tab[6], tab[7], Convert.ToDouble(tab[8]), Convert.ToInt32(tab[9]), Convert.ToDouble(tab[10]));
                        cli  = new Client(Convert.ToUInt32(tab[11]), tab[12], tab[13], tab[14], Convert.ToUInt32(tab[15]), Convert.ToBoolean(tab[16]), Convert.ToBoolean(tab[17]), Convert.ToBoolean(tab[18]), Convert.ToBoolean(tab[19]));
                        tra  = new Trajet(tab[20], tab[21], Convert.ToInt32(tab[22]));
                        loca = new Location(veh, cli, tra, Convert.ToUInt32(tab[23]), tab[24], tab[25], Convert.ToDouble(tab[26]));
                        listLoca.Add(loca);
                    }
                    else if (tab.Length == 28)
                    {
                        veh  = new Voiture(Convert.ToUInt32(tab[0]), tab[1], tab[2], Convert.ToInt32(tab[3]), tab[4], Convert.ToInt32(tab[5]), tab[6], tab[7], Convert.ToDouble(tab[8]), Convert.ToInt32(tab[9]), Convert.ToInt32(tab[10]), tab[11]);
                        cli  = new Client(Convert.ToUInt32(tab[12]), tab[13], tab[14], tab[15], Convert.ToUInt32(tab[16]), Convert.ToBoolean(tab[17]), Convert.ToBoolean(tab[18]), Convert.ToBoolean(tab[19]), Convert.ToBoolean(tab[20]));
                        tra  = new Trajet(tab[21], tab[22], Convert.ToInt32(tab[23]));
                        loca = new Location(veh, cli, tra, Convert.ToUInt32(tab[24]), tab[25], tab[26], Convert.ToDouble(tab[27]));
                    }
                    listLoca.Add(loca);
                }
                fluxLec.Close();
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message + "parc.ChargementDonnees");
                Console.ReadKey();
            }
        }
예제 #2
0
        public void AjouterUnVehicule(int typeVeh)      // Ajoute un véhicule dans la liste et dans le fichier véhicule
        {
            Console.WriteLine("Marque :");
            string marque = Console.ReadLine();

            Console.WriteLine("Gamme :");
            string gamme = Console.ReadLine();

            Console.WriteLine("Modèle :");
            string modele = Console.ReadLine();

            Console.WriteLine("Nombre de places :");
            int nbPlace;

            while (!int.TryParse(Console.ReadLine(), out nbPlace))
            {
                Console.WriteLine("Valeure incorrect..\n Veuillez Resaisir la valeure :");
            }
            Console.WriteLine("Permis nécessaire pour l'utilisation du véhicule :");
            string permisUtil = Console.ReadLine();

            Console.WriteLine("Immatriculation :");
            string imma = Console.ReadLine();

            Console.WriteLine("Prix de Location à la journée :");
            double prixLocAuJour;

            while (!double.TryParse(Console.ReadLine(), out prixLocAuJour))
            {
                Console.WriteLine("Valeure incorrect..\n Veuillez Resaisir la valeure :");
            }
            Vehicule veh;

            if (typeVeh == 1)
            {
                Console.WriteLine("Nombre de Valise :");
                int nbValise;
                while (!int.TryParse(Console.ReadLine(), out nbValise))
                {
                    Console.WriteLine("Valeure incorrect..\n Veuillez Resaisir la valeure :");
                }

                Console.WriteLine("Nombre de Portes :");
                int nbPorte;
                while (!int.TryParse(Console.ReadLine(), out nbPorte))
                {
                    Console.WriteLine("Valeure incorrect..\n Veuillez Resaisir la valeure :");
                }
                Console.WriteLine("Type de boite :\n(1) Automatique\n(2) Manuelle");
                string boite = Console.ReadLine();
                while (boite != "1" && boite != "2")
                {
                    Console.WriteLine("Valeure incorrect..\n Veuillez Resaisir la valeure :");
                    boite = Console.ReadLine();
                }
                if (boite == "1")
                {
                    boite = "automatique";
                }
                else
                {
                    boite = "manuelle";
                }
                veh = new Voiture(Convert.ToUInt32(ListVeh.Count), marque, gamme, 0, modele, nbPlace, permisUtil, imma, prixLocAuJour, nbValise, nbPorte, boite);
            }
            else if (typeVeh == 2)
            {
                Console.WriteLine("Volume Moteur : (cm3)");
                int volumeMoteur;
                while (!int.TryParse(Console.ReadLine(), out volumeMoteur))
                {
                    Console.WriteLine("Valeure incorrect..\n Veuillez Resaisir la valeure :");
                }
                veh = new Moto(Convert.ToUInt32(ListVeh.Count), marque, gamme, 0, modele, nbPlace, permisUtil, imma, prixLocAuJour, volumeMoteur);
            }
            else
            {
                Console.WriteLine("Volume du camion : (m3)");
                int volume;
                while (!int.TryParse(Console.ReadLine(), out volume))
                {
                    Console.WriteLine("Valeure incorrect..\n Veuillez Resaisir la valeure :");
                }
                Console.WriteLine("Charge Autorisé : (Kg)");
                double chargeAutorise;
                while (!double.TryParse(Console.ReadLine(), out chargeAutorise))
                {
                    Console.WriteLine("Valeure incorrect..\n Veuillez Resaisir la valeure :");
                }
                veh = new Camion(Convert.ToUInt32(ListVeh.Count), marque, gamme, 0, modele, nbPlace, permisUtil, imma, prixLocAuJour, volume, chargeAutorise);
            }
            try
            {
                CreationFichierSiNonExistant();
                StreamWriter fluxEcriture = new StreamWriter("FichierVehicule.txt", true);
                fluxEcriture.WriteLine(veh.ListAttributsAjoutFichier());
                listVeh.Add(veh);
                Console.WriteLine("Vehicule ajouté à la base de données.");
                fluxEcriture.Close();
                Console.ReadKey();
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message + "parc.AjouterUnVehicule()");
                Console.ReadKey();
            }
        }