Пример #1
0
        public void ModifyPresenceInModel(StudentAndPresence studentAndPresence)
        {
            var presenceEventuelle = GetPresenceFromModel(studentAndPresence.InternePresence);

            // Test si une presence est déjà encodée
            // Si c'est la cas :
            // il faut mettre à jour la présence encodée (type short) avec la nouvelle valeure (0 ou 1)
            if (presenceEventuelle != null && presenceEventuelle.Present != studentAndPresence.PresenceToShort())
            {
                foreach (Presence presenceModel in App.Model.Presence)
                {
                    if (presenceModel.CourseOccurence == studentAndPresence.InternePresence.CourseOccurence && presenceModel.Student == studentAndPresence.InterneStudent.Id)
                    {
                        presenceModel.Present = studentAndPresence.PresenceToShort();
                    }
                }
                App.Model.SaveChanges();
                AfficherPresenceDeModel();
            }
            else if (presenceEventuelle == null && studentAndPresence.PresenceToShort() == 1)
            {
                //si ce n'est pas le cas, c'est la 1er fois que cet étudiant est présent pour cette CO
                //Première fois que cet étudiant est coché présent, il faut insérer une nouvelle entrée s'il est présent uniquement
                Presence presenceNew = App.Model.Presence.Create();

                presenceNew.Student         = studentAndPresence.InterneStudent.Id;
                presenceNew.CourseOccurence = studentAndPresence.InternePresence.CourseOccurence;
                presenceNew.Present         = 1;
                App.Model.Presence.Add(presenceNew);
                App.Model.SaveChanges();
                AfficherPresenceDeModel();
            }
        }
Пример #2
0
        /**
         * Construit une collection observable de StudentAndPresence (ceci est une classe interne)
         * pour la ListeView de la vue PresenceView.XAML
         **/
        private ObservableCollection <StudentAndPresence> BuildStudentAndPresence(Courseoccurrence courseOccurrence)
        {
            ObservableCollection <StudentAndPresence> res = new ObservableCollection <StudentAndPresence>();

            foreach (Student st in StudentsSubscribedInCourse)
            {
                //pour chaque étudiant on regarde s'il possède une présence
                Presence           presenceTemp       = new Presence(st.Id, courseOccurrence.Id, SetStudentPresent(st));
                StudentAndPresence studentAndPresence = new StudentAndPresence(st, presenceTemp);
                res.Add(studentAndPresence);
            }
            return(res);
        }