using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Collections; /*******************************************************/ /*******************************************************/ /* Logiciel crée par Milosevic Stefan & Jactel Vincent */ /*******************************************************/ /*******************************************************/ namespace VP { /********************************************************/ /* Class : Contenant la liste de tous les vehicules */ /********************************************************/ [Serializable] class AllVehicle { private ArrayList carList = new ArrayList(); private ArrayList busList = new ArrayList(); private ArrayList planeList = new ArrayList(); private ArrayList helicopterList = new ArrayList(); public AllVehicle() { // création des vehicules (Ils sont déjà sérialisés alors on les a laissé en commentaires) /* // Listes des 20 Voitures... Car v1 = new Car("Car", "Laguna", "Renault", 2, false); carList.Add(v1); Car v2 = new Car("Car", "ML 550", "Mercedes", 6, false); carList.Add(v2); Car v3 = new Car("Car", "318i", "BWM", 7, false); carList.Add(v3); Car v4 = new Car("Car", "407", "Peugeot", 5, false); carList.Add(v4); Car v5 = new Car("Car", "306", "Peugeot", 5, false); carList.Add(v5); Car v6 = new Car("Car", "Twingo", "Renault", 3, false); carList.Add(v6); Car v7 = new Car("Car", "Kangoo", "Renault", 5, false); carList.Add(v7); Car v8 = new Car("Car", "Clio", "Renault", 5, false); carList.Add(v8); Car v9 = new Car("Car", "ML 270", "Mercedes", 10, false); carList.Add(v9); Car v10 = new Car("Car", "B 190", "Mercedes", 8, false); carList.Add(v10); Car v11 = new Car("Car", "B 180", "Mercedes", 8, false); carList.Add(v11); Car v12 = new Car("Car", "A 170", "Mercedes", 7, false); carList.Add(v12); Car v13 = new Car("Car", "A 170", "Mercedes", 7, false); carList.Add(v13); Car v14 = new Car("Car", "A 180", "Mercedes", 7, false); carList.Add(v14); Car v15 = new Car("Car", "XC 90", "Volvo", 12, false); carList.Add(v15); Car v16 = new Car("Car", "S80", "Volvo", 12, false); carList.Add(v16); Car v17 = new Car("Car", "A4", "Audi", 9, false); carList.Add(v17); Car v18 = new Car("Car", "A6 S-Line", "Audi", 7, false); carList.Add(v18); Car v19 = new Car("Car", "X5", "BMW", 9, false); carList.Add(v19); Car v20 = new Car("Car", "X6", "BWM", 11, false); carList.Add(v20); // Liste des 5 Bus Bus b1 = new Bus("Bus", "9900", "Volvo", 25, false); busList.Add(b1); Bus b2 = new Bus("Bus", "9800", "Volvo", 25, false); busList.Add(b2); Bus b3 = new Bus("Bus", "Iliade", "Renault", 20, false); busList.Add(b3); Bus b4 = new Bus("Bus", "OC 500", "Mercedes-Benz", 22, false); busList.Add(b4); Bus b5 = new Bus("Bus", "EUR-D43", "Iveco", 19, false); busList.Add(b5); // Liste des avions et des hélicos Plane p1 = new Plane("Plane", "A 340", "Airbus", 150, false); planeList.Add(p1); Helicopter h1 = new Helicopter("Helicopter", "SA 341", "Gazelle", 100, false); helicopterList.Add(h1); */ } /***********/ /* GETTERS */ /***********/ public ArrayList getAllCar() { return carList; } public ArrayList getAllBus() { return busList; } public ArrayList getAllPlane() { return planeList; } public ArrayList getAllHelicopter() { return helicopterList; } /******************************************************************/ /* Méthode pour la Vérification de la disponibilité des véhicules */ /* Retourne un bool qui contient la disponibilite *****************/ /******************************************************************/ public static bool VerificationDisponibiliteCar(ArrayList l, DateTime dateD, DateTime dateF) { //boolean pour renvoyer le premier vehicule de la liste bool first = false; bool existeUnVehicleLibre = false; // Je regarde déjà si il y a un vehicule de dispo dans cette categorie // pour la date selectionné par l'utilisateur // Si le véhicule en question est libre on le renvoi foreach (Car c in l) { // Si il est libre if(c.estLibre(dateD, dateF) == true) { // et si c'est le premier libre de la liste if (first == false) { existeUnVehicleLibre = true; first = true; } } } return existeUnVehicleLibre; } public static bool VerificationDisponibiliteBus(ArrayList l, DateTime dateD, DateTime dateF) { //boolean pour renvoyer le premier vehicule de la liste bool first = false; bool existeUnVehicleLibre = false; // Je regarde déjà si il y a un vehicule de dispo dans cette categorie // pour la date selectionné par l'utilisateur // Si le véhicule en question est libre on le renvoi foreach (Bus c in l) { // Si il est libre if (c.estLibre(dateD, dateF) == true) { // et si c'est le premier libre de la liste if (first == false) { existeUnVehicleLibre = true; first = true; } } } return existeUnVehicleLibre; } public static bool VerificationDisponibilitePlane(ArrayList l, DateTime dateD, DateTime dateF) { //boolean pour renvoyer le premier vehicule de la liste bool first = false; bool existeUnVehicleLibre = false; // Je regarde déjà si il y a un vehicule de dispo dans cette categorie // pour la date selectionné par l'utilisateur // Si le véhicule en question est libre on le renvoi foreach (Plane c in l) { // Si il est libre if (c.estLibre(dateD, dateF) == true) { existeUnVehicleLibre = true; first = true; } } return existeUnVehicleLibre; } public static bool VerificationDisponibiliteHelicopter(ArrayList l, DateTime dateD, DateTime dateF) { //boolean pour renvoyer le premier vehicule de la liste bool first = false; bool existeUnVehicleLibre = false; // Je regarde déjà si il y a un vehicule de dispo dans cette categorie // pour la date selectionné par l'utilisateur // Si le véhicule en question est libre on le renvoi foreach (Helicopter c in l) { // Si il est libre if (c.estLibre(dateD, dateF) == true) { // et si c'est le premier libre de la liste if (first == false) { existeUnVehicleLibre = true; first = true; } } } return existeUnVehicleLibre; } /*****************************************************/ /* Méthodes pour retourner des vehicules disponibles */ /* On cherche dans la categorie de vehicule que veut l'utilisateur, un vehicule de * libre. On lance cette methode que quand on a lance les méthodes précedentes pour * être sur qu'il existe des vehicules libre. On renvoie un vehicule au hasard car * l'utilisateur ne peut pas choisir. Ex : Il a besoin d'une voiture il en aura une, * qu'importe laquelle /*****************************************************/ public static Car RetournerCar(ArrayList l, DateTime dateD, DateTime dateF) { // Vehicule a renvoyer Car theCar= new Car("","","",0,false); //boolean pour renvoyer le premier vehicule de la liste bool first = false; // Je regarde déjà si il y a un vehicule de dispo dans cette categorie // pour la date selectionné par l'utilisateur // Si le véhicule en question est libre on le renvoi foreach (Car c in l) { // Si il est libre if (c.estLibre(dateD, dateF) == true) { // et si c'est le premier libre de la liste if (first == false) { theCar = c; first = true; } } } return theCar; } public static Bus RetournerBus(ArrayList l, DateTime dateD, DateTime dateF) { // Vehicule a renvoyer Bus theBus = new Bus("", "", "", 0, false); //boolean pour renvoyer le premier vehicule de la liste bool first = false; // Je regarde déjà si il y a un vehicule de dispo dans cette categorie // pour la date selectionné par l'utilisateur // Si le véhicule en question est libre on le renvoi foreach (Bus c in l) { // Si il est libre if (c.estLibre(dateD, dateF) == true) { // et si c'est le premier libre de la liste if (first == false) { theBus = c; first = true; } } } return theBus; } public static Plane RetournerPlane(ArrayList l, DateTime dateD, DateTime dateF) { // Vehicule a renvoyer Plane thePlane = new Plane("", "", "", 0, false); //boolean pour renvoyer le premier vehicule de la liste bool first = false; // Je regarde déjà si il y a un vehicule de dispo dans cette categorie // pour la date selectionné par l'utilisateur // Si le véhicule en question est libre on le renvoi foreach (Plane c in l) { // Si il est libre if (c.estLibre(dateD, dateF) == true) { // et si c'est le premier libre de la liste if (first == false) { thePlane = c; first = true; } } } return thePlane; } public static Helicopter RetournerHelicopter(ArrayList l, DateTime dateD, DateTime dateF) { // Vehicule a renvoyer Helicopter theHelico = new Helicopter("", "", "", 0, false); //boolean pour renvoyer le premier vehicule de la liste bool first = false; // Je regarde déjà si il y a un vehicule de dispo dans cette categorie // pour la date selectionné par l'utilisateur // Si le véhicule en question est libre on le renvoi foreach (Helicopter c in l) { // Si il est libre if (c.estLibre(dateD, dateF) == true) { // et si c'est le premier libre de la liste if (first == false) { theHelico = c; first = true; } } } return theHelico; } } }