예제 #1
0
파일: Lecture.cs 프로젝트: westre/Petje-op
 public Lecture(int id, Teacher teacher, Class Class, Subject subject)
 {
     ID = id;
     Teacher = teacher;
     this.Class = Class;
     Subject = subject;
 }
예제 #2
0
        //Wanneer er op edit is geklikt, sla al de data op.
        public void EditClicked()
        {
            //Zet de nieuwe klas in de model.
            Class newClass = (Class)View.cbClass.SelectedItem;
            if (View.cbClass.SelectedItem == null) {
                newClass = Model.LocallyEditedExam.Lecture.Class;
            }

            //Zet het nieuwe vak in de model.
            Subject newSubject = (Subject)View.cbSubject.SelectedItem;
            if (View.cbSubject.SelectedItem == null) {
                newSubject = Model.LocallyEditedExam.Lecture.Subject;
            }

            //Maak indien nodig een nieuwe lecture aan als gegeven voor de nieuwe les.
            Lecture newLecture = new Lecture(0, (Teacher)MasterController.User, newClass, newSubject);
            Lecture dbLecture = MasterController.DB.CheckLecture(newLecture);
            //Bestaat de lecture die we proberen tee maken?
            if (dbLecture != null)
            {
                //De lecture bestaat al, gebruik deze.
                newLecture = dbLecture;
            }
            else
            {
                //De lecture bestaat niet, maak een nieuwe aan.
                tblLecture tblLecture = MasterController.DB.AddLecture(newLecture);
                Teacher newTeacher = new Teacher(tblLecture.tblTeacher.nr, tblLecture.tblTeacher.firstname, tblLecture.tblTeacher.surname);
                Class newActualClass = new Class(tblLecture.@class);
                Subject newActualSubject = new Subject(tblLecture.tblSubject.id, tblLecture.tblSubject.name);
                Lecture newActualLecture = new Lecture(tblLecture.id, newTeacher, newActualClass, newActualSubject);
                newLecture = newActualLecture;
            }
            //Maak de overige benodigde gegevens voor Exam.
            Model.LocallyEditedExam.Lecture = newLecture;
            Model.Exam = Model.LocallyEditedExam;
            Model.Event.Tag = Model.Exam;
            //Voeg de nieuwe exam toe aan de database.
            MasterController.DB.UpdateExam(Model.Exam);

            //Verander de kleur van elke label in zwart en kijk hoeveel dingen er veranderd zijn.
            int changeCount = 0;
            foreach (Control control in ((EditExamView)GetView()).Controls) {
                if (control is Label) {
                    if (!((Label)control).ForeColor.ToArgb().Equals(Color.Black.ToArgb())) {
                        changeCount++;
                    }
                    ((Label)control).ForeColor = Color.Black;
                }
            }

            //Maak een messagebox aan met alle dingen die gewijzigd zijn en ook de hoeveelheid hierbij.
            string changes = "wijziging";
            if (changeCount > 1 || changeCount == 0)
                changes += "en";
            MessageBox.Show("Wijziging toegepast");
        }
예제 #3
0
 //Opslaan van een exam.
 public void SaveExam()
 {
     //Maak een nieuwe lecture aan met de gegevens uit de form.
     Lecture selectedLecture = new Lecture(0, (Teacher)MasterController.User, (Class)View.cbClasses.SelectedItem, (Subject)View.cbSubjects.SelectedItem);
     //Kijk of de lecture al in de database staat.
     Lecture dbLecture = MasterController.DB.CheckLecture(selectedLecture);
     //Als de lecture al in de database staat, selecteer deze. Zo niet: Maak een nieuwe lecture aan.
     if (dbLecture != null)
     {
         selectedLecture = dbLecture;
     }
     else
     {
         tblLecture newLecture = MasterController.DB.AddLecture(selectedLecture);
         Teacher newTeacher = new Teacher(newLecture.tblTeacher.nr, newLecture.tblTeacher.firstname, newLecture.tblTeacher.surname);
         Class newClass = new Class(newLecture.@class);
         Subject newSubject = new Subject(newLecture.tblSubject.id, newLecture.tblSubject.name);
         Lecture newActualLecture = new Lecture(newLecture.id, newTeacher, newClass, newSubject);
         selectedLecture = newActualLecture;
     }
     //Maak gegevens aan om een nieuwe exam te maken. (lecture was hier een deel van)
     Questionnaire selectedQuestionnaire = (Questionnaire)View.cbQuestionnaires.SelectedItem;
     DateTime selectedStartTime = new DateTime(View.dtpStarttimeDate.Value.Year, View.dtpStarttimeDate.Value.Month, View.dtpStarttimeDate.Value.Day, View.dtpStarttimeTime.Value.Hour, View.dtpStarttimeTime.Value.Minute, View.dtpStarttimeTime.Value.Second);
     DateTime selectedEndTime = new DateTime(View.dtpStarttimeDate.Value.Year, View.dtpStarttimeDate.Value.Month, View.dtpStarttimeDate.Value.Day, View.dtpEndtimeTime.Value.Hour, View.dtpEndtimeTime.Value.Minute, View.dtpEndtimeTime.Value.Second);
     //Maak de nieuwe exam aan met alle hiervoor gemaakte gegevens.
     Exam currentExam = new Exam(0, selectedQuestionnaire,selectedStartTime, selectedEndTime, selectedLecture);
     //Voeg de exam toe aan de database.
     MasterController.DB.AddExam(currentExam);
     //Laat een dialoogvenster zien dat de gebruiker er op wijst dat zijn data succesvol is toegevoegd.
     MessageBox.Show("De data is succesvol toegevoegd!");
     ClearControls();
 }
예제 #4
0
파일: Database.cs 프로젝트: westre/Petje-op
        // Haal een specifieke lecture op met behulp van een ID
        public Lecture GetLecture(int id)
        {
            try
            {
                foreach (tblLecture tblLecture in db.tblLectures) //Ga alle lectures langs en return alleen de lecture die overeenkomt met de ID die meegegeven is.
                {
                    if (tblLecture.id == id)
                    {
                        int lectureId = tblLecture.id;
                        Teacher lectureTeacher = GetTeacher(tblLecture.teacher);
                        Class lectureClass = new Class(tblLecture.@class);
                        Subject lectureSubject = GetSubject(tblLecture.subject);
                        return new Lecture(lectureId, lectureTeacher, lectureClass, lectureSubject);
                    }
                }

                return null;
            }
            catch (SqlException ex)
            {
                MessageBox.Show(ex.Message);//Wanneer er iets fout gaat, laat een messagebox zien met de SQL exception.
                return null;
            }
        }
예제 #5
0
파일: Database.cs 프로젝트: westre/Petje-op
        // Haal alle klassen op
        public List<Class> GetAllClasses()
        {
            try
            {
                List<Class> css = new List<Class>();
                foreach (tblClass tblclass in db.tblClasses)//Stop alle classes in een lijst en return deze.
                {
                    Class cs = new Class(tblclass.code);

                    css.Add(cs);
                }
                return css;
            }
            catch (SqlException ex)
            {
                MessageBox.Show(ex.Message); return null; //Wanneer er iets fout gaat, laat een messagebox zien met de SQL exception.

            }
        }
예제 #6
0
파일: Database.cs 프로젝트: westre/Petje-op
        // Deze functie wordt gebruikt om het database object tblLecture te converteren naar een Lecture object die vervolgens gebruikt kan worden in het programma
        public Lecture ConvertDbLecture(tblLecture dbLecture)
        {
            Teacher teacher = new Teacher() // Teacher object aanmaken
            {
                TeacherNr = dbLecture.tblTeacher.nr,
                FirstName = dbLecture.tblTeacher.firstname,
                SurName = dbLecture.tblTeacher.surname
            };
            Class clas = new Class(dbLecture.@class); // Class object aanmaken
            Subject subject = new Subject(dbLecture.tblSubject.id, dbLecture.tblSubject.name); // Subject object aanmaken

            Lecture lecture = new Lecture(dbLecture.id, teacher, clas, subject); // Lecture aanmaken met bovenstaande aangemaakte objecten
            return lecture;
        }
예제 #7
0
파일: Database.cs 프로젝트: westre/Petje-op
        public Lecture CheckLecture(Lecture lecture)
        {
            try
            {
                foreach (tblLecture tblLecture in db.tblLectures) //Kijk of een de meegegeven lecture bestaat door ze allemaal door te loopen en te kijken of deze gegevens al in de database staan.
                {
                    if (tblLecture.subject == lecture.Subject.Id && tblLecture.@class == lecture.Class.Code && tblLecture.tblTeacher.nr == lecture.Teacher.TeacherNr)
                    {
                        int lectureId = tblLecture.id;
                        Teacher lectureTeacher = GetTeacher(tblLecture.teacher);
                        Class lectureClass = new Class(tblLecture.@class);
                        Subject lectureSubject = GetSubject(tblLecture.subject);

                        return new Lecture(lectureId, lectureTeacher, lectureClass, lectureSubject);
                    }
                }

                return null;
            }
            catch (SqlException ex)
            {
                MessageBox.Show(ex.Message);//Wanneer er iets fout gaat, laat een messagebox zien met de SQL exception.
                return null;
            }
        }