Esempio n. 1
0
 public Logement(Logement l)
 {
     _id = l._id;
     _nbPieces = l.NbPiece;
     _nbChambres = l.NbChambres;
     _superficie = l.Superficie;
     _distancePlage = l.DistancePlage;
     _terasse = l.Terasse;
     _laveLinge = l.LaveLinge;
     _cuisineEquipe = l.CuisineEquipe;
     _adresse = l.Adresse;
     _type = l.Type;
 }
Esempio n. 2
0
        public FicheLogement(Logement Log, Ressources r, DataGrid dataLogement)
        {
            InitializeComponent();
            log = Log;
            res = r;
            datagridlogement = dataLogement;

            foreach (Particulier p in r.ListeClients)
            {
                ComboBoxItem monItem = new ComboBoxItem();
                monItem.Name = "idProp" + p.Id;
                monItem.Content = p.Id + " " + p.Nom + " " + p.Prenom;
                comboBoxIDProp.Items.Add(monItem);
            }

            comboBoxIDProp.SelectedIndex = log.IdClient - 1;
            numero.Text = log.Adresse.Numero;
            Voie.Text = log.Adresse.Voie;
            CP.Text = log.Adresse.CodePostal;
            Ville.Text = log.Adresse.Ville;
            NombreDePiece.Text = log.NbPiece.ToString();
            NombreDeChambre.SelectedIndex = log.NbChambres;
            Superficie.Text = log.Superficie.ToString();
            Distance.Text = log.DistancePlage.ToString();
            CuisineEquipe.IsChecked = log.CuisineEquipe;
            LaveLinge.IsChecked = log.LaveLinge;
            Terasse.IsChecked = log.Terasse;

            if (log is Maison)
            {
                numero.IsEnabled = false;
                Voie.IsEnabled = false;
                CP.IsEnabled = false;
                Ville.IsEnabled = false;
                Distance.IsEnabled = false;
                ldistance.IsEnabled = false;
                comboBoxTypeLogement.SelectedIndex = 0;
                Maison temp = log as Maison;
                Garage.IsChecked = temp.Garage;
                Jardin.IsChecked = temp.Jardin;
                Piscine.IsChecked = temp.Piscine;
            }

            if (log is Appartement)
            {
                numero.IsEnabled = false;
                Voie.IsEnabled = false;
                CP.IsEnabled = false;
                Ville.IsEnabled = false;
                Distance.IsEnabled = false;
                ldistance.IsEnabled = false;
                comboBoxTypeLogement.SelectedIndex = 1;
                Appartement temp = log as Appartement;
                Ascensseur.IsChecked = temp.Ascenceur;
                numeroAppartement.Text = temp.NumeroAppartement;
                etage.Text = temp.Etage.ToString();
            }

            if (log is MobilHome)
            {
                comboBoxTypeLogement.SelectedIndex = 2;
                MobilHome temp = log as MobilHome;
                if ((temp.Adresse as Camping) != null)
                {
                    Nom.Text = (temp.Adresse as Camping).Nom;
                    Emplacement.Text = (temp.Adresse as Camping).Emplacement;
                }
            }

            if (log is Caravane)
            {
                comboBoxTypeLogement.SelectedIndex = 3;
                Caravane temp = log as Caravane;
                Nom.Text = (temp.Adresse as Camping).Nom;
                Emplacement.Text = (temp.Adresse as Camping).Emplacement;
            }

            if (log is Peniche)
            {
                comboBoxTypeLogement.SelectedIndex = 4;
                Peniche temp = log as Peniche;
                Nom.Text = (temp.Adresse as Port).Nom;
                Quai.Text = (temp.Adresse as Port).Quai.ToString();
                Emplacement.Text = (temp.Adresse as Port).Emplacement.ToString();
            }

            foreach (Reservation rez in res.ListeReservations.Where(re => re.IDLogement == log.Id))
            {
                calendar1.BlackoutDates.Add(new CalendarDateRange(rez.DateDebut, rez.DateDebut.AddDays(7 * rez.Duree - 1)));
            }
        }
        public bool Evaluer(Logement l)
        {
            bool res = false;

            try
            {
                switch (attr.SelectedIndex)
                {
                    // ID
                    case 0:
                        if (l.Id == int.Parse(tb.Text))
                            res = true;
                        break;

                    // ID proprio
                    case 1:
                        if (l.IdClient == int.Parse(tb.Text))
                            res = true;
                        break;

                    // Nb piece
                    case 2:
                        if (l.NbPiece == int.Parse(tb.Text))
                            res = true;
                        break;

                    // Nb chambre
                    case 3:
                        if (l.NbChambres == int.Parse(tb.Text))
                            res = true;
                        break;

                    // Superficie
                    case 4:
                        switch (cb_comparaison.SelectedIndex)
                        {
                                // =
                            case 0 :
                                if (l.Superficie == int.Parse(tb_superficie.Text))
                                    res = true;
                                break;
                                // sup
                            case 1 :
                                if (l.Superficie >= int.Parse(tb_superficie.Text))
                                    res = true;
                                break;
                                // inf
                            case 2:
                                if (l.Superficie <= int.Parse(tb_superficie.Text))
                                    res = true;
                                break;
                        }
                        break;

                    // Dist plage
                    case 5:
                        switch (cb_comparaison.SelectedIndex)
                        {
                                // =
                            case 0 :
                                if (l.DistancePlage == int.Parse(tb_superficie.Text))
                                    res = true;
                                break;
                                // sup
                            case 1 :
                                if (l.DistancePlage >= int.Parse(tb_superficie.Text))
                                    res = true;
                                break;
                                // inf
                            case 2:
                                if (l.DistancePlage <= int.Parse(tb_superficie.Text))
                                    res = true;
                                break;
                        }
                        break;

                    // Terrase
                    case 6:
                        switch (cb_bool.SelectedIndex)
                        {
                            // Oui
                            case 0:
                                if (l.Terasse)
                                    res = true;
                                break;
                            // Non
                            case 1:
                                if (!l.Terasse)
                                    res = true;
                                break;
                        }
                        break;

                    // Lave linge
                    case 7:
                        switch (cb_bool.SelectedIndex)
                        {
                            // Oui
                            case 0:
                                if (l.LaveLinge)
                                    res = true;
                                break;
                            // Non
                            case 1:
                                if (!l.LaveLinge)
                                    res = true;
                                break;
                        }
                        break;

                    // Cuisine
                    case 8:
                        switch (cb_bool.SelectedIndex)
                        {
                            // Oui
                            case 0:
                                if (l.CuisineEquipe)
                                    res = true;
                                break;
                            // Non
                            case 1:
                                if (!l.CuisineEquipe)
                                    res = true;
                                break;
                        }
                        break;

                    // code postal
                    case 9:
                        if (l.Adresse.CodePostal == tb.Text)
                            res = true;
                        break;

                    // Type
                    case 10:
                        switch (cb_type.SelectedIndex)
                        {
                            // Mais
                            case 0:
                                if (l is Maison)
                                    res = true;
                                break;
                            // Appart
                            case 1:
                                if (l is Appartement)
                                    res = true;
                                break;
                            // Péniche
                            case 2:
                                if (l is Peniche)
                                    res = true;
                                break;
                            // Mobil
                            case 3:
                                if (l is MobilHome)
                                    res = true;
                                break;
                            // caravane
                            case 4:
                                if (l is Caravane)
                                    res = true;
                                break;

                        }
                        break;

                    // Type
                    case 11:
                        bool tmp = true;
                        foreach (Reservation resa in ressources.ListeReservations.Where(it => it.IDLogement == l.Id))
                        {
                            if (dp.SelectedDate.Value > resa.DateDebut.AddDays(int.Parse(duree.Text) * 6) ||
                                resa.DateDebut > dp.SelectedDate.Value.AddDays(int.Parse(duree.Text) * 6))
                                tmp &= true;
                            else
                                tmp &= false;
                        }
                        res = tmp;
                        break;

                }
            }
            catch (Exception) { }

            return res;
        }