static void Main(string[] args)
        {
            /* INITIALIZER */
            Schule s = new Schule()
            {
                Skz = 905417, Name = "HTL Spengergasse"
            };

            s.AddKlasse(new Klasse()
            {
                Name = "5CHIF"
            });
            s.AddKlasse(new Klasse()
            {
                Name = "5BHIF"
            });
            Schueler sch = new Schueler {
                Id = 1, Nachname = "Mustermann", Vorname = "Max"
            };

            s.Klassen["5CHIF"].AddSchueler(sch);
            // Das geht nicht, da id 1 doppelt ist.
            s.Klassen["5BHIF"].AddSchueler(new Schueler
            {
                Id       = 1,
                Nachname = "Mustermann2",
                Vorname  = "Max2"
            });
        }
        public void TestAddSchueler()
        {
            Schule s = new Schule()
            {
                Skz = 905417, Name = "HTL Spengergasse"
            };

            s.AddKlasse(new Klasse()
            {
                Name = "5CHIF"
            });
            s.AddKlasse(new Klasse()
            {
                Name = "5BHIF"
            });
            Schueler sch = new Schueler {
                Id = 1, Nachname = "Mustermann", Vorname = "Max"
            };

            s.Klassen["5BHIF"].AddSchueler(sch);
            s.Klassen["5CHIF"].AddSchueler(sch);
            s.Klassen["5CHIF"].AddSchueler(new Schueler()
            {
                Id = 2, Vorname = "", Nachname = ""
            });
            s.Klassen["5CHIF"].AddSchueler(new Schueler()
            {
                Id = 3, Vorname = "", Nachname = ""
            });
            s.Klassen["5CHIF"].AddSchueler(new Schueler()
            {
                Id = 4, Vorname = "", Nachname = ""
            });
            s.Klassen["5CHIF"].AddSchueler(new Schueler()
            {
                Id = 5, Vorname = "", Nachname = ""
            });
            // Prüfen, wenn der Schüler NULL ist
            Assert.AreEqual <bool>(false, s.Klassen["5CHIF"].AddSchueler(null));
            // Zuordnung OK?
            Assert.AreEqual <Schueler>(sch, s.Klassen["5CHIF"].FindSchuelerById(1));
            // Mehr als 5 Schüler gehen nicht?
            Assert.AreEqual <bool>(false, s.Klassen["5CHIF"].AddSchueler(
                                       new Schueler()
            {
                Id = 6, Vorname = "", Nachname = ""
            }
                                       ));

            // Das geht nicht, da id 1 doppelt ist.
            s.Klassen["5BHIF"].AddSchueler(new Schueler
            {
                Id       = 1,
                Nachname = "Mustermann2",
                Vorname  = "Max2"
            });
        }
Ejemplo n.º 3
0
        static void Main(string[] args)
        {
            Teacher teacher = new Teacher("Mincho");

            teacher.AddDiscipline("matematika", 5, 5);
            teacher.AddDiscipline("geografiq", 5, 5);
            teacher.AddDiscipline("istoriq", 5, 5);
            Teacher teacherTwo = new Teacher("Stoimen");

            teacherTwo.AddDiscipline("matematika", 5, 5);
            teacherTwo.AddDiscipline("geografiq", 5, 5);
            teacherTwo.AddDiscipline("istoriq", 5, 5);
            Class klas = new Class("1a");

            klas.AddTeacher(teacher);
            klas.AddTeacher(teacherTwo);
            Student ucheniche = new Student("Genovev", klas);

            Console.WriteLine(ucheniche.ToString());
            Schule school = new Schule();

            school.AddClass(klas);
            Console.WriteLine(school.ToString());
        }
Ejemplo n.º 4
0
        public override void Start(Schule.DataManager.UowSchuleDB uow = null)
        {
            if (uow != null)
                Config.LoadFromDatabase(uow);

            if (Config.OutputToExcelTemplate)
                CreateExcel();

            else
                // TODO
                ;
        }
Ejemplo n.º 5
0
        public override void ShowConfig(Schule.DataManager.UowSchuleDB uow = null)
        {
            if (uow != null)
                Config.LoadFromDatabase(uow);

            var c = new GrundrechnenÜbungConfigWindow(Config.Clone() as GrundrechnenÜbungConfig);
            if (c.ShowDialog() == true)
                Config = c.Config;

            if (uow != null)
                Config.SaveToDatabase(uow);
        }
Ejemplo n.º 6
0
            internal void InsertTest()
            {
                Schule schule = new Schule()
                {
                    Bez = "EDV-Schule",//"TestSchule"+DateTime.Now.Millisecond,
                };

                schule.Speichern();

                Lehrer leh = new Lehrer()
                {
                    Vorname  = "Klaus",
                    Nachname = "Reuther",
                    Kuerzel  = "BAR",
                };

                leh.Speichern();

                Klasse kl = new Klasse()
                {
                    Bez           = "BFI12A",//"TKL1A"+ DateTime.Now.Millisecond,
                    SJ            = ViewModel.Tool.CURRENTSJ,
                    Schule        = schule,
                    Klassenleiter = leh,
                    StellvertretenderKlassenleiter = leh,
                };

                kl.Speichern();

                Zeugnisfach zf = new Zeugnisfach()
                {
                    Bez                 = "TFBAN",
                    Fachart             = Fachart.Pflichtfach,
                    Pos                 = 1,
                    Vorrueckungsfach    = true,
                    AbschliessendesFach = true,
                    Klasse              = kl,
                };

                zf.Speichern();
                Zeugnisfach zf2 = new Zeugnisfach()
                {
                    Bez                 = "Anwendungsentwicklung",
                    Fachart             = Fachart.Wahlpflichtfach,
                    Pos                 = 2,
                    Vorrueckungsfach    = true,
                    AbschliessendesFach = true,
                    Klasse              = kl,
                };

                zf2.Speichern();

                Unterrichtsfach uf = new Unterrichtsfach()
                {
                    Bez         = "TFBAN1",
                    Pos         = 1,
                    Stunden     = 6,
                    Zeugnisfach = zf,
                };

                uf.Speichern();
                Unterrichtsfach uf2 = new Unterrichtsfach()
                {
                    Bez         = "TFBAN2",
                    Pos         = 1,
                    Stunden     = 4,
                    Zeugnisfach = zf,
                };

                uf2.Speichern();
                Unterrichtsfach uf2B = new Unterrichtsfach()
                {
                    Bez         = "C#",
                    Pos         = 1,
                    Stunden     = 4,
                    Zeugnisfach = zf2,
                };

                uf2B.Speichern();

                UFachLehrer ufl = new UFachLehrer()
                {
                    Lehrer          = leh,
                    Unterrichtsfach = uf,
                    Stunden         = uf.Stunden
                };

                ufl.Speichern();
                UFachLehrer ufl2 = new UFachLehrer()
                {
                    Lehrer          = leh,
                    Unterrichtsfach = uf2,
                    Stunden         = uf.Stunden
                };

                ufl2.Speichern();
                UFachLehrer ufl2B = new UFachLehrer()
                {
                    Lehrer          = leh,
                    Unterrichtsfach = uf2B,
                    Stunden         = uf.Stunden
                };

                ufl2B.Speichern();


                Schueler s = new Schueler()
                {
                    Vorname      = "Hans",//"VornameSchüler"+DateTime.Now.Millisecond,
                    Nachname     = "Bauer",
                    Geburtsdatum = new DateTime(2000, 1, 1),
                    Geschlecht   = Geschlecht.M,
                    Konfession   = Konfession.BL,
                };

                s.Speichern();

                SchuelerKlasse sk = new SchuelerKlasse()
                {
                    Klasse   = kl,
                    Schueler = s,
                };

                sk.Speichern();

                Schueler s2 = new Schueler()
                {
                    Vorname      = "Harry",//"VornameSchüler" + (DateTime.Now.Millisecond+10),
                    Nachname     = "Müller",
                    Geburtsdatum = new DateTime(2001, 1, 1),
                    Geschlecht   = Geschlecht.M,
                    Konfession   = Konfession.BL,
                };

                s2.Speichern();
                SchuelerKlasse sk2 = new SchuelerKlasse()
                {
                    Klasse   = kl,
                    Schueler = s2,
                };

                sk2.Speichern();


                Leistungsgruppe lg = new Leistungsgruppe()
                {
                    Bez     = "Schriftlich",
                    Gewicht = 2,
                };

                lg.Speichern();
                Leistungsgruppe lg2 = new Leistungsgruppe()
                {
                    Bez     = "Mündlich",
                    Gewicht = 1,
                };

                lg2.Speichern();

                Leistungsart la = new Leistungsart()
                {
                    Bez        = "Schulaufgabe",
                    Gewichtung = 2,
                    Gruppe     = lg,
                };

                la.Speichern();
                Leistungsart la2 = new Leistungsart()
                {
                    Bez        = "Stegreifaufgabe",
                    Gewichtung = 1,
                    Gruppe     = lg,
                };

                la2.Speichern();
                Leistungsart la3 = new Leistungsart()
                {
                    Bez        = "Abfrage",
                    Gewichtung = 1,
                    Gruppe     = lg2,
                };

                la3.Speichern();

                Leistung lei = new Leistung()
                {
                    Erhebungsdatum = DateTime.Now,
                    Notenstufe     = 1,
                    Tendenz        = Tendenz.UP,
                    LetzteÄnderung = DateTime.Now,
                    Leistungsart   = la,
                    SchuelerKlasse = sk,
                    UFachLehrer    = ufl
                };

                lei.Speichern();
                Leistung lei2 = new Leistung()
                {
                    Erhebungsdatum = DateTime.Now,
                    Notenstufe     = 3,
                    Tendenz        = Tendenz.UP,
                    LetzteÄnderung = DateTime.Now,
                    Leistungsart   = la2,
                    SchuelerKlasse = sk,
                    UFachLehrer    = ufl
                };

                lei2.Speichern();
                Leistung lei3 = new Leistung()
                {
                    Erhebungsdatum = DateTime.Now,
                    Notenstufe     = 2,
                    Tendenz        = Tendenz.UP,
                    LetzteÄnderung = DateTime.Now,
                    Leistungsart   = la2,
                    SchuelerKlasse = sk,
                    UFachLehrer    = ufl
                };

                lei3.Speichern();
                Leistung lei4 = new Leistung()
                {
                    Erhebungsdatum = DateTime.Now,
                    Notenstufe     = 3,
                    Tendenz        = Tendenz.UP,
                    LetzteÄnderung = DateTime.Now,
                    Leistungsart   = la3,
                    SchuelerKlasse = sk,
                    UFachLehrer    = ufl
                };

                lei4.Speichern();

                Leistung leiB = new Leistung()
                {
                    Erhebungsdatum = DateTime.Now,
                    Notenstufe     = 3,
                    Tendenz        = Tendenz.UP,
                    LetzteÄnderung = DateTime.Now,
                    Leistungsart   = la,
                    SchuelerKlasse = sk,
                    UFachLehrer    = ufl2
                };

                leiB.Speichern();
                Leistung lei2B = new Leistung()
                {
                    Erhebungsdatum = DateTime.Now,
                    Notenstufe     = 1,
                    Tendenz        = Tendenz.UP,
                    LetzteÄnderung = DateTime.Now,
                    Leistungsart   = la,
                    SchuelerKlasse = sk,
                    UFachLehrer    = ufl2B
                };

                lei2B.Speichern();
                Leistung lei2C = new Leistung()
                {
                    Erhebungsdatum = DateTime.Now,
                    Notenstufe     = 3,
                    Tendenz        = Tendenz.UP,
                    LetzteÄnderung = DateTime.Now,
                    Leistungsart   = la,
                    SchuelerKlasse = sk,
                    UFachLehrer    = ufl2B
                };

                lei2C.Speichern();
            }
Ejemplo n.º 7
0
        public void TestAddSchueler()
        {
            Schule s = new Schule()
            {
                Skz  = 905417,
                Name = "HTL Spengergasse"
            };

            s.AddKlasse(new Klasse()
            {
                Name = "5CHIF"
            });
            s.AddKlasse(new Klasse()
            {
                Name = "5BHIF"
            });
            Schueler sch = new Schueler {
                Id = 1, Nachname = "Mustermann", Vorname = "Max"
            };

            s.Klassen["5BHIF"].AddSchueler(sch);
            s.Klassen["5CHIF"].AddSchueler(sch);


            //Was passiert wenn das Schülerobjekt null ist
            Assert.AreEqual <bool>(false, s.Klassen["5CHIF"].AddSchueler(null));

            //Ist der Schüler wirklich in der 5CHIF?

            /*
             * if (s.Klassen["5CHIF"].FindSchuelerById(1) == sch)
             * {
             *  //TEST OK!!!
             * }
             */

            //Das ist der obere if, was erwarte ich (1. Parameter) und was ist gespeichert worden (2. Parameter)
            //Prüfe ob die Zordnung der Klasse funktioniert hat?
            Assert.AreEqual <Schueler>(sch, s.Klassen["5CHIF"].FindSchuelerById(1));


            s.Klassen["5CHIF"].AddSchueler(new Schueler()
            {
                Id = 2, Vorname = "", Nachname = ""
            });
            s.Klassen["5CHIF"].AddSchueler(new Schueler()
            {
                Id = 3, Vorname = "", Nachname = ""
            });
            s.Klassen["5CHIF"].AddSchueler(new Schueler()
            {
                Id = 4, Vorname = "", Nachname = ""
            });
            s.Klassen["5CHIF"].AddSchueler(new Schueler()
            {
                Id = 5, Vorname = "", Nachname = ""
            });

            // Mehr als 5 Schüler sollten nicht klappen
            Assert.AreEqual <bool>(false, s.Klassen["5CHIF"].AddSchueler(
                                       new Schueler()
            {
                Id = 6, Vorname = "", Nachname = ""
            }
                                       ));
        }
Ejemplo n.º 8
0
        static void Main(string[] args)
        {
            /*
             *  Model muss als Reference eingebunden werden --> References --> Add Reference --> Project --> SchulVw.Model
             *  Model.Schule s = new Schule(); --> ebenfalls möglich
             *  Lämpchen --> using [...] nutzen.
             *
             *  keine Konstrukturen in C# (in Datenhaltendenklassen, bei DB Verbindungen beispielsweise schon) bzw. so gut wie es geht
             *  vermeiden
             *  INITIALIZER Objekt obj = new Objekt() { Property = value, Property2 = value, .... }
             */
            Schule s = new Schule()
            {
                Skz  = 905417,
                Name = "HTL Spengergasse"
            };

            //Gefahr beim direkten Anlegen über new, Referenz verschwinden!
            s.AddKlasse(new Klasse()
            {
                Name = "5CHIF"
            });
            s.AddKlasse(new Klasse()
            {
                Name = "5BHIF"
            });

            /*
             *  Schüler wird erstellt und in die 5CHIF geschmissen.
             *  [..] ==> Indexer. Greife über einen Key auf einen Wert zu. (Array Index, 0,1,2,3,....)
             *  F12 ==> Go to Definition
             */
            Schueler sch = new Schueler {
                Id = 1, Nachname = "Mustermann", Vorname = "Max"
            };

            s.Klassen["5CHIF"].AddSchueler(sch);

            //Umstellen auf bool der void Methoden AddSchueler und AddKlasse ==> returned true/false "Exception"-freundlicher
            //Geht nicht, weil die Id doppelt ist ==> 1
            s.Klassen["5BHIF"].AddSchueler(new Schueler
            {
                Id       = 1,
                Vorname  = "Max2",
                Nachname = "Mustermann2"
            });


            //Wirft Exeception (Navigation Property)
            //s.FindSchuelerById(1).Klasse = s.Klassen["5BHIF"];
            //s.Klassen["5BHIF"].AddSchueler(sch);

            /*
             *  Vgl. Klasse.cs ==> Codezeile public List<Schueler> Schueler { get; } = new List<Schueler>();
             *  bzw.
             *  Codezeile.cs Codezeile: public Dictionary<string, Klasse> Klassen { get; } = new Dictionary<string, Klasse>();
             *
             *
             *  Person p = new Person() { Name = "A" };
             *  Person p2 = p;
             *  p2.Name = "A2";
             *  Was liefert p.Name? --> Antwort: A2
             *
             *  List<Person> pl = new List<Person>() { p };
             *  p.Name = "A3";
             *  Was liefert p.Name? --> Antwort: A3
             */
        }
        /// <summary>
        /// Importiert die Klassen aus einer CSV-Datei --> erstellt daraus die Klassenobjekte--> speichert diese in die Datenbank
        /// </summary>
        /// <param name="pfad">Pfad der Klassendatei</param>
        /// <param name="schule">Zugehörige Schule</param>
        public static Importstatistik ImportKlassen(string pfad, Schule schule)
        {
            string[]         tmp;
            int              ok     = 0;
            List <Exception> fehler = new List <Exception>();

            Lehrer dummy = new Lehrer()
            {
                Vorname           = "-",
                Nachname          = "-",
                Kuerzel           = "-",
                Dienstbezeichnung = "DUMMY",
            };

            dummy = DBZugriff.Current.SelectFirstOrDefault <Lehrer>(x =>
                                                                    x.Vorname == dummy.Vorname &&
                                                                    x.Nachname == dummy.Nachname &&
                                                                    x.Kuerzel == dummy.Kuerzel &&
                                                                    x.Dienstbezeichnung == dummy.Dienstbezeichnung
                                                                    ) ?? dummy;
            dummy.Speichern();


            foreach (string s in ReadAllLines(pfad))
            {
                try
                {
                    tmp = s.Split(',');

                    int sid = Convert.ToInt32(tmp[0]);
                    // Falls es sich nicht um eine Schuljahresspalte handelt (z.B. bei falsch angegebener Datei)
                    if (!tmp[2].Contains('/'))
                    {
                        throw new FormatException("/ fehlt!");
                    }


                    Klasse klasse = DBZugriff.Current.SelectFirstOrDefault <Klasse>(x => x.SID == sid);

                    klasse = klasse ?? new Klasse();


                    klasse.SID           = sid;
                    klasse.Bez           = tmp[1];
                    klasse.SJ            = Convert.ToInt32(tmp[2].Split('/')[0]);
                    klasse.Schule        = schule;
                    klasse.Klassenleiter = dummy;
                    klasse.StellvertretenderKlassenleiter = dummy;


                    DBZugriff.Current.Speichern(klasse, false);

                    ok++;
                }
                catch (Exception e)
                {
                    fehler.Add(e);
                }
            }

            if (ok == 0)
            {
                throw new FileFormatException("Die Datei hat das falsche Format für den angegebenen Dateityp!");
            }

            DBZugriff.Current.Save();

            return(new Importstatistik()
            {
                Bez = "Klassen",
                OkCount = ok,
                Fehler = fehler,
            });
        }
Ejemplo n.º 10
0
        private static void RunTest()
        {
            try
            {
                Schule schule = new Schule()
                {
                    Bez = "TestSchule",
                };
                schule.Speichern();

                Lehrer leh = new Lehrer()
                {
                    Vorname  = "VorTest",
                    Nachname = "NachTest",
                    Kürzel   = "TL",
                };
                leh.Speichern();

                Klasse kl = new Klasse()
                {
                    Bez           = "TKL1A",
                    SJ            = 2017,
                    Schule        = schule,
                    Klassenleiter = leh,
                    StellvertretenderKlassenleiter = leh,
                };
                kl.Speichern();

                Zeugnisfach zf = new Zeugnisfach()
                {
                    Bez                 = "TestAbschlussFach",
                    Fachart             = "TestFachArt",
                    Pos                 = 1,
                    Vorrueckungsfach    = true,
                    AbschliessendesFach = true,
                    Klasse              = kl,
                };
                zf.Speichern();

                Unterrichtsfach uf = new Unterrichtsfach()
                {
                    Bez         = "TestUnterichtsFach",
                    Pos         = 1,
                    Stunden     = 6,
                    Zeugnisfach = zf,
                };
                uf.Speichern();

                UFachLehrer ufl = new UFachLehrer()
                {
                    Lehrer          = leh,
                    Unterrichtsfach = uf,
                    Stunden         = uf.Stunden
                };
                ufl.Speichern();


                Schueler s = new Schueler()
                {
                    Vorname      = "VorTestS",
                    Nachname     = "NachTestS",
                    Geburtsdatum = new DateTime(2000, 1, 1),
                    Geschlecht   = Geschlecht.M,
                    Konfession   = Konfession.NONE,
                };
                s.Speichern();

                SchuelerKlasse sk = new SchuelerKlasse()
                {
                    Klasse   = kl,
                    Schueler = s,
                };
                sk.Speichern();

                Leistungsart la = new Leistungsart()
                {
                    Bez        = "Schulaufgabe",
                    Gewichtung = 2,
                    Gruppe     = "S",
                };
                la.Speichern();

                Leistungsgruppe lg = new Leistungsgruppe()
                {
                    Bez          = "Schriftlich",
                    Gewicht      = "2",
                    Leistungsart = la
                };
                lg.Speichern();

                Leistung lei = new Leistung()
                {
                    Erhebungsdatum = DateTime.Now,
                    Notenstufe     = 1,
                    Tendenz        = Tendenz.UP,
                    LetzteÄnderung = DateTime.Now,
                    Leistungsart   = la,
                    SchuelerKlasse = sk,
                };
                lei.Speichern();
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Ejemplo n.º 11
0
 public abstract void Start(Schule.DataManager.UowSchuleDB uow = null);
Ejemplo n.º 12
0
 public abstract void ShowConfig(Schule.DataManager.UowSchuleDB uow = null);
Ejemplo n.º 13
0
 /// <summary>
 /// Exportiert alle Beobachtungen eines Schülers in Word
 /// </summary>
 public void ExportToWord(Schueler Schüler, Schuljahr Schuljahr, Schule.DataManager.UowSchuleDB UOW = null)
 {
     ExportToWord(Schüler, Schuljahr == null ? 0 : Schuljahr.Startjahr, UOW);
 }
Ejemplo n.º 14
0
        /// <summary>
        /// Exportiert alle Beobachtungen eines Schülers in Word
        /// </summary>
        public void ExportToWord(Schueler Schüler, int Schuljahr = 0, Schule.DataManager.UowSchuleDB UOW = null)
        {
            if (UOW == null)
                UOW = App.Current.FindResource("UnitOfWork") as Groll.Schule.DataManager.UowSchuleDB;

            if (UOW != null)
            {
                ExportSettings.GroupBy = GroupByType.GroupBySchüler;
                var t = from b in UOW.Beobachtungen.GetList()
                        where (b.Schueler) == Schüler && (b.SchuljahrId == Schuljahr|| Schuljahr == 0)
                        select b;

                ExportToWord(t);
            }
        }
Ejemplo n.º 15
0
        /// <summary>
        /// Exportiert alle Beobachtungen eines Jahrgangs in Word
        /// </summary>
        public void ExportToWord(int Schuljahr, Schule.DataManager.UowSchuleDB UOW = null)
        {
            if (UOW == null)
                UOW = App.Current.FindResource("UnitOfWork") as Groll.Schule.DataManager.UowSchuleDB;

            if (UOW != null)
            {
                ExportToWord(UOW.Beobachtungen.GetList(x => x.SchuljahrId == Schuljahr));
            }
        }
Ejemplo n.º 16
0
        /// <summary>
        /// Exportiert alle Beobachtungen einer Klasse in Word
        /// </summary>
        public void ExportToWord(Klasse Klasse, Schule.DataManager.UowSchuleDB UOW = null)
        {
            if (UOW == null)
                UOW = App.Current.FindResource("UnitOfWork") as Groll.Schule.DataManager.UowSchuleDB;

            if (UOW != null)
            {
                var t = from b in UOW.Beobachtungen.GetList()
                        where (b.Klasse) == Klasse
                        select b;

                ExportToWord(t);
            }
        }