Exemplo n.º 1
0
 public void RemoveCreneau(Creneau cr)
 {
     if (ListCreneauChoosed.Contains(cr))
     {
         ListCreneauChoosed.Remove(cr);
     }
 }
Exemplo n.º 2
0
 public bool AddCreneau(Creneau cr, out int countConflictCreneau, out List <Creneau> conflitCreneau)
 {
     if (!IsCreneauAlreadyTaken(cr, out countConflictCreneau, out conflitCreneau))
     {
         ListCreneauChoosed.Add(cr);
         return(true);
     }
     else
     {
         return(false);
     }
 }
Exemplo n.º 3
0
        public bool IsCreneauAlreadyTaken(Creneau cr, out int countConflictCreneau, out List <Creneau> conflitCreneau)
        {
            countConflictCreneau = 0;
            bool alreadyTaken = false;

            conflitCreneau = new List <Creneau>();
            foreach (Creneau creneau in ListCreneauChoosed)
            {
                //Si la même activite ou bien la même classe
                if ((creneau.Classe == null || cr.Classe == null) ||
                    creneau.Classe.Equal(cr.Classe) || creneau.Activite.Equal(cr.Activite))
                {
                    //Si le même jour
                    if (creneau.Jour == cr.Jour)

                    {
                        //Si empiète sur l'heure d'un autre creneau
                        if ((cr.StartHour >= creneau.StartHour && cr.StartHour < creneau.EndHour) ||
                            (cr.EndHour > creneau.StartHour && cr.EndHour < creneau.EndHour) ||
                            (cr.StartHour < creneau.StartHour && cr.EndHour >= creneau.EndHour))
                        {
                            alreadyTaken = true;
                            conflitCreneau.Add(creneau);
                            countConflictCreneau += 1;

                            /*if (creneau.ConflitCreneauId == 0)
                             * {
                             *  canBeSplit = true;
                             * }*/
                        }
                    }
                }
            }

            return(alreadyTaken);
        }