Exemplo n.º 1
0
        private void ListBox_iauswahl(object sender, SelectionChangedEventArgs e)
        {
            Projekt p = ((sender as ListBox).SelectedItem as Projekt);

            temp = p;
            //cp.anzeigen(p);
        }
Exemplo n.º 2
0
        //Anzeigen der Projektbezeichnung und ID in den dafür vorgesehenen Textboxen
        public override void anzeigen(Model objekt)
        {
            if (objekt == null)
            {
                return;
            }
            Projekt p = (Projekt)objekt;

            if (frm.GetType().Name == "Projektverwaltung")
            {
                Projektverwaltung pv = (Projektverwaltung)frm;

                pv.detailsProjektID.Text   = p.getProjektID().ToString();
                pv.detailsBezeichnung.Text = p.getBezeichnung();

                //onUpdateData();
                return;
            }
            else if (frm.GetType().Name == "Projekt_anlegen")
            {
                Projekt_anlegen pa = (Projekt_anlegen)frm;
                pa.textProjektID.Text = db.getID(p).ToString();
                return;
            }
        }
Exemplo n.º 3
0
 public Export(DatabaseAdapter db)
 {
     InitializeComponent();
     this.db = db;
     cp      = new ControllerProjekt(db, this);
     textProjektIDexp.Text   = Projekt.getProjektIDtemp().ToString();
     textBezeichnungexp.Text = Projekt.getBezeichnungtemp();
 }
Exemplo n.º 4
0
        private void exportieren_Click(object sender, RoutedEventArgs e)
        {
            cp.export();

            Projekt p = new Projekt(textProjektIDexp.Text);

            cp.loeschen(p);

            this.Close();
        }
Exemplo n.º 5
0
        public override List <Projekt> get(Projekt objekt)
        {
            List <Model>   temp_list   = get((Model)objekt);
            List <Projekt> return_list = new List <Projekt>();

            foreach (Model temp_model in temp_list)
            {
                return_list.Add((Projekt)temp_model);
            }
            return(return_list);
        }
Exemplo n.º 6
0
 private void loeschen_Click(object sender, RoutedEventArgs e)
 {
     if (detailsProjektID.Text == "")
     {
         MessageBox.Show("Sie haben kein Projekt ausgewählt");
     }
     else
     {
         Projekt p = new Projekt(detailsProjektID.Text);
         cp.loeschen(p);
     }
 }
Exemplo n.º 7
0
 private void export_Click(object sender, RoutedEventArgs e)
 {
     if (detailsProjektID.Text == "")
     {
         MessageBox.Show("Sie haben kein Projekt ausgewählt");
     }
     else
     {
         Projekt.setProjektIDtemp(detailsProjektID.Text);
         Projekt.setBezeichnungtemp(detailsBezeichnung.Text);
         cp.export();
     }
 }
Exemplo n.º 8
0
        /*
         * fügt ein neues Model in die Datenbank ein
         */

        public override Model insert(Model objekt)
        {
            int          myID         = 0;
            List <Model> return_model = null;

            if (objekt.GetType().Name == "Kriterium")
            {
                Kriterium temp_objekt = (Kriterium)objekt;
                temp_objekt.setKriteriumID(newID(objekt)); // Autoincrement vergeben
                ExecuteSQL("INSERT INTO Kriterium (KriteriumID, Bezeichnung) VALUES ( " + temp_objekt.getKriteriumID() + ", '" + temp_objekt.getBezeichnung() + "');");
                return_model = get(temp_objekt);
            }
            else if (objekt.GetType().Name == "Nutzwert")
            {
                Nutzwert temp_objekt = (Nutzwert)objekt;
                ExecuteSQL("INSERT INTO NWA (KriteriumID, ProjektID, ProduktID, Erfuellung, Gewichtung, Kommentar, beitrag_absolut, beitrag_absolut_check, abstufung) VALUES ( " + temp_objekt.getKriteriumID() + ", " + temp_objekt.getProjektID() + " , " + temp_objekt.getProduktID() + ", " + temp_objekt.getErfuellung() + ", " + temp_objekt.getGewichtung() + ", '" + temp_objekt.getKommentar() + "', " + temp_objekt.getBeitragAbsolut().ToString().Replace(",", ".") + ", " + temp_objekt.getBeitragAbsolutCheck() + ", " + temp_objekt.getAbstufung().ToString().Replace(",", ".") + ");");
                return_model = get(temp_objekt);
            }
            else if (objekt.GetType().Name == "Produkt")
            {
                Produkt p = (Produkt)objekt;
                p.setProduktID(newID(objekt)); // Autoincrement vergeben
                ExecuteSQL("INSERT INTO Produkt (ProduktID, Bezeichnung) VALUES ( " + p.getProduktID() + ", '" + p.getBezeichnung() + "');");
                return_model = get(p);
            }
            else if (objekt.GetType().Name == "Projekt")
            {
                Projekt proj = (Projekt)objekt;
                proj.setProjektID(newID(objekt)); // Autoincrement vergeben
                ExecuteSQL("INSERT INTO Projekt (ProjektID, Bezeichnung) VALUES ( " + proj.getProjektID() + ", '" + proj.getBezeichnung() + "');");
                return_model = get(proj);
            }
            else if (objekt.GetType().Name == "Kriteriumstruktur")
            {
                Kriteriumstruktur temp_objekt = (Kriteriumstruktur)objekt;
                myID = temp_objekt.getOberKriteriumID(); // Hat kein Autoincrement
                ExecuteSQL("INSERT INTO Kriteriumstruktur (OberKriteriumID, UnterKriteriumID) VALUES ( " + temp_objekt.getOberKriteriumID() + ", '" + temp_objekt.getUnterKriteriumID() + "');");
                return_model = get(temp_objekt);
            }
            if (return_model == null)
            {
                throw new NotImplementedException();
            }
            return(return_model[0]);
        }
Exemplo n.º 9
0
        //Import-Funktion für die archivierten Projekte auf der zweiten Datenbank mit der dazughörigen NWA
        public void import(Model objekt)
        {
            if (frm.GetType().Name == "Projektverwaltung")
            {
                Import i = new Import(db);
                i.ShowDialog();
                onUpdateData();
            }
            else if (frm.GetType().Name == "Import")
            {
                DatabaseAdapter expdb = new mySQLAdapter("db4free.net", "nwat_expimp", "nutzwertexpimp", "ad.nutz#"); // Konstruktor

                Import  i    = (Import)frm;
                Projekt proj = (Projekt)objekt;
                db.exp(proj, expdb, false);
                expdb.delete(proj);
            }
        }
Exemplo n.º 10
0
        //Löschen eines vorhandenen Projektes --> Überprüfung einer dazugehörigen NWA im DialogFenster
        public override void loeschen(Model objekt)
        {
            if (objekt == null)
            {
                return;
            }
            if (frm.GetType().Name == "Projektverwaltung")
            {
                Projektverwaltung pv        = (Projektverwaltung)frm;
                Nutzwert          temp_nutz = new Nutzwert(ProjektID: pv.detailsProjektID.Text, ProduktID: "-1", KriteriumID: "-1");
                List <Nutzwert>   temp      = db.get(temp_nutz);

                if (temp.Count != 0)
                {
                    if (MessageBox.Show("Es ist eine dazugehörige  NWA vorhanden möchten Sie trozdem Löschen ?", "Löschen", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes)
                    {
                        db.delete(objekt);
                        pv.detailsBezeichnung.Text = "";
                        pv.detailsProjektID.Text   = "";
                        onUpdateData();
                        return;
                    }
                }
                else
                {
                    db.delete(objekt);
                    pv.detailsBezeichnung.Text = "";
                    pv.detailsProjektID.Text   = "";
                    onUpdateData();
                    return;
                }
                return;
            }
            else if (frm.GetType().Name == "Export")
            {
                Export  ex = (Export)frm;
                Projekt p  = new Projekt();
                p.setProjektID(Int32.Parse(ex.textProjektIDexp.Text));
                p.setBezeichnung(ex.textBezeichnungexp.Text);
                db.delete(p);
                return;
            }
            throw new NotImplementedException();
        }
Exemplo n.º 11
0
        //Anlegen eines neuen Projektes
        //ProjektID wird automatisch vergeben
        public override void anlegen()
        {
            if (frm.GetType().Name == "Projekt_anlegen")
            {
                Projekt_anlegen pa = (Projekt_anlegen)frm;
                Projekt         p  = new Projekt();
                p.setBezeichnung(pa.textBezeichnung.Text);

                db.insert(p);
                onUpdateView();
                return;
            }
            else if (frm.GetType().Name == "Projektverwaltung")
            {
                Projekt_anlegen pa = new Projekt_anlegen(db);
                pa.ShowDialog();
                onUpdateData();
                return;
            }
            throw new NotImplementedException();
        }
Exemplo n.º 12
0
 //Export-Funktion zum archivieren von Projekten mit der dazugehörigen NWA
 //Archivierung geschieht sowohl auf eine zweite Datenbank als auch zur Übrprüfung in eine separate Datei
 public void export()
 {
     if (frm.GetType().Name == "Projektverwaltung")
     {
         Projektverwaltung pv = (Projektverwaltung)frm;
         Export            ex = new Export(db);
         ex.ShowDialog();
         onUpdateData();
         pv.detailsBezeichnung.Text = "";
         pv.detailsProjektID.Text   = "";
     }
     else if (frm.GetType().Name == "Export")
     {
         DatabaseAdapter expdb = new mySQLAdapter("db4free.net", "nwat_expimp", "nutzwertexpimp", "ad.nutz#"); // Konstruktor
         Export          ex    = (Export)frm;
         Projekt         p     = new Projekt();
         p.setProjektID(Int32.Parse(ex.textProjektIDexp.Text));
         p.setBezeichnung(ex.textBezeichnungexp.Text);
         expdb.exp(p, db, true);
     }
 }
Exemplo n.º 13
0
        }                                                                         //Konstruktor

        //Funktion zum Ändern der Projektbezeichnung
        public override void aendern()
        {
            if (frm.GetType().Name == "Projekt_aendern")
            {
                Projekt_aendern pa = (Projekt_aendern)frm;
                Projekt         p  = new Projekt();
                p.setProjektID(Int32.Parse(pa.textProjektIDaendern.Text));
                p.setBezeichnung(pa.textBezeichnungaendern.Text);
                db.update(p);
                onUpdateView();
                return;
            }
            else if (frm.GetType().Name == "Projektverwaltung")
            {
                Projekt_aendern pa = new Projekt_aendern(db);
                Projekt         p  = new Projekt();
                pa.ShowDialog();
                onUpdateData();
                return;
            }
            throw new NotImplementedException();
        }
Exemplo n.º 14
0
        /*
         * löscht das Model in der Datenbank
         * Key-Überprüfung fehlt!
         */

        public override void delete(Model objekt)
        {
            if (objekt == null)
            {
                throw new Exception("Objekt darf nicht null sein");
            }
            if (objekt.GetType().Name == "Kriterium")
            {
                Kriterium temp_objekt = (Kriterium)objekt;
                if (temp_objekt.getKriteriumID() > 0)
                {
                    ExecuteSQL("DELETE FROM Kriterium WHERE KriteriumID = '" + temp_objekt.getKriteriumID() + "';");
                }
                else
                {
                    throw new Exception("ID darf bei delete nicht 0 sein");
                }
            }
            else if (objekt.GetType().Name == "Nutzwert")
            {
                Nutzwert temp_objekt = (Nutzwert)objekt;
                if (temp_objekt.getProduktID() != 0 && temp_objekt.getProjektID() != 0 && temp_objekt.getKriteriumID() != 0)
                {
                    ExecuteSQL("DELETE FROM NWA WHERE ProduktID = " + temp_objekt.getProduktID() + " AND ProjektID = " + temp_objekt.getProjektID() + " AND KriteriumID = " + temp_objekt.getKriteriumID() + ";");
                }
                else
                {
                    throw new Exception("ID darf bei delete nicht 0 sein");
                }
            }
            else if (objekt.GetType().Name == "Produkt")
            {
                Produkt temp_objekt = (Produkt)objekt;
                if (temp_objekt.getProduktID() > 0)
                {
                    ExecuteSQL("DELETE FROM Produkt WHERE ProduktID = '" + temp_objekt.getProduktID() + "';");
                }
                else
                {
                    throw new Exception("ID darf bei delete nicht 0 sein");
                }
            }
            else if (objekt.GetType().Name == "Projekt")
            {
                Projekt temp_objekt = (Projekt)objekt;
                if (temp_objekt.getProjektID() == 0)
                {
                }
                if (temp_objekt.getProjektID() > 0)
                {
                    ExecuteSQL("DELETE FROM Projekt WHERE ProjektID = '" + temp_objekt.getProjektID() + "';");

                    //löscht die NWA in der das Projekt vorkommt
                    ExecuteSQL("DELETE FROM NWA WHERE ProjektID = '" + temp_objekt.getProjektID() + "';");
                }
            }
            else if (objekt.GetType().Name == "Kriteriumstruktur")
            {
                Kriteriumstruktur temp_obj = (Kriteriumstruktur)objekt;
                if (temp_obj.getOberKriteriumID() != 0 && temp_obj.getUnterKriteriumID() == 0)
                {
                    ExecuteSQL("DELETE * FROM Kriteriumstruktur WHERE OberKriteriumID = '" + temp_obj.getOberKriteriumID() + "';");
                }
                else if (temp_obj.getUnterKriteriumID() != 0 && temp_obj.getOberKriteriumID() == 0)
                {
                    ExecuteSQL("DELETE * FROM Kriteriumstruktur WHERE UnterKriteriumID = '" + temp_obj.getUnterKriteriumID() + "';");
                }
                else if (temp_obj.getUnterKriteriumID() != 0 && temp_obj.getOberKriteriumID() != 0)
                {
                    ExecuteSQL("DELETE FROM Kriteriumstruktur WHERE UnterKriteriumID=" + temp_obj.getUnterKriteriumID() + " AND OberKriteriumID=" + temp_obj.getOberKriteriumID() + ";");
                }
            }
        }
Exemplo n.º 15
0
 /*
  * updated das Model in der Datenbank
  */
 public override void update(Model objekt)
 {
     if (objekt == null)
     {
         throw new Exception("Objekt darf nicht null sein");
     }
     if (objekt.GetType().Name == "Kriterium")
     {
         Kriterium temp_objekt = (Kriterium)objekt;
         if (temp_objekt.getKriteriumID() != 0)
         {
             ExecuteSQL("UPDATE Kriterium SET Bezeichnung='" + temp_objekt.getBezeichnung() + "' WHERE KriteriumID = '" + temp_objekt.getKriteriumID() + "';");
         }
         else
         {
             throw new Exception("ID darf bei delete nicht 0 sein");
         }
     }
     else if (objekt.GetType().Name == "Nutzwert")
     {
         Nutzwert temp_objekt = (Nutzwert)objekt;
         if (get(temp_objekt).Count != 0)
         {
             if (temp_objekt.getProduktID() >= 0)
             {
                 ExecuteSQL("UPDATE NWA SET Kommentar='" + temp_objekt.getKommentar() + "', Erfuellung=" + temp_objekt.getErfuellung() + ", beitrag_absolut=" + temp_objekt.getBeitragAbsolut().ToString().Replace(",", ".") + ", beitrag_absolut_check=" + temp_objekt.getBeitragAbsolutCheck() + ", abstufung=" + temp_objekt.getAbstufung().ToString().Replace(",", ".") + " WHERE KriteriumID = " + temp_objekt.getKriteriumID() + " AND ProjektID = " + temp_objekt.getProjektID() + " AND ProduktID = " + temp_objekt.getProduktID() + ";");
             }
             if (MessageBox.Show("Möchten Sie die Gewichtung Projektweit aktualisieren?", "Gewichtung", MessageBoxButton.YesNo, MessageBoxImage.Warning) == MessageBoxResult.Yes)
             {
                 ExecuteSQL("UPDATE NWA SET Gewichtung=" + temp_objekt.getGewichtung() + " WHERE KriteriumID = " + temp_objekt.getKriteriumID() + " AND ProjektID = " + temp_objekt.getProjektID() + ";");
             }
             else
             {
                 ExecuteSQL("UPDATE NWA SET Gewichtung=" + temp_objekt.getGewichtung() + "  WHERE KriteriumID = " + temp_objekt.getKriteriumID() + " AND ProjektID = " + temp_objekt.getProjektID() + " AND ProduktID = " + temp_objekt.getProduktID() + ";");
             }
         }
         else
         {
             insert(temp_objekt);
         }
     }
     else if (objekt.GetType().Name == "Produkt")
     {
         Produkt temp_objekt = (Produkt)objekt;
         if (temp_objekt.getProduktID() != 0)
         {
             ExecuteSQL("UPDATE Produkt SET Bezeichnung='" + temp_objekt.getBezeichnung() + " ' WHERE ProduktID = '" + temp_objekt.getProduktID() + "';");
         }
         else
         {
             throw new Exception("ID darf bei delete nicht 0 sein");
         }
     }
     else if (objekt.GetType().Name == "Projekt")
     {
         Projekt temp_objekt = (Projekt)objekt;
         if (temp_objekt.getProjektID() != 0)
         {
             ExecuteSQL("UPDATE Projekt SET Bezeichnung='" + temp_objekt.getBezeichnung() + "' WHERE ProjektID = '" + temp_objekt.getProjektID() + "';");
         }
         else
         {
             throw new Exception("ID darf bei Update nicht 0 sein");
         }
     }
 }
Exemplo n.º 16
0
        /*
         * generische get-Methode
         */
        public List <Model> get(Model objekt)
        {
            List <Model> return_list = new List <Model>();

            if (objekt.GetType().Name == "Kriterium")
            {
                Kriterium temp_obj = (Kriterium)objekt;
                if (temp_obj.getKriteriumID() == -1)
                {
                    DataTable temp_datatable = QuerySQL("SELECT * FROM Kriterium;");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Kriterium temp_model = new Kriterium();
                        temp_model.setKriteriumID((int)row[0]);
                        temp_model.setBezeichnung((string)row[1]);
                        return_list.Add(temp_model);
                    }
                }
                else if (temp_obj.getKriteriumID() == 0) // falsch noch korrigieren!
                {
                    DataTable temp_datatable = QuerySQL("SELECT * FROM Kriterium;");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Kriterium temp_model = new Kriterium();
                        temp_model.setKriteriumID((int)row[0]);
                        temp_model.setBezeichnung((string)row[1]);
                        return_list.Add(temp_model);
                    }
                }
                else
                {
                    DataTable temp_datatable = QuerySQL("SELECT * FROM Kriterium WHERE KriteriumID = " + temp_obj.getKriteriumID() + ";");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Kriterium temp_model = new Kriterium();
                        temp_model.setKriteriumID((int)row[0]);
                        temp_model.setBezeichnung((string)row[1]);
                        return_list.Add(temp_model);
                    }
                }
                return(return_list);
            }
            else if (objekt.GetType().Name == "Nutzwert")
            {
                Nutzwert temp_obj = (Nutzwert)objekt;
                if (temp_obj.getProduktID() == -1 && temp_obj.getProjektID() != -1 && temp_obj.getKriteriumID() != -1)
                {
                    DataTable temp_datatable = QuerySQL("SELECT * FROM NWA WHERE KriteriumID = " + temp_obj.getKriteriumID() + " AND ProjektID = " + temp_obj.getProjektID() + ";");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Nutzwert temp_model = new Nutzwert(ProjektID: (int)row[0], KriteriumID: (int)row[1], ProduktID: (int)row[2], Erfuellung: (bool)row[3], Gewichtung: (int)row[4], Kommentar: (string)row[5], BeitragAbsolut: (double)row[6], BeitragAbsolutCheck: (bool)row[7], Abstufung: (double)row[8]);
                        return_list.Add(temp_model);
                    }
                }
                else if (temp_obj.getProduktID() == -1 && temp_obj.getProjektID() != -1 && temp_obj.getKriteriumID() == -1)
                {
                    DataTable temp_datatable = QuerySQL("SELECT * FROM NWA WHERE ProjektID = " + temp_obj.getProjektID() + ";");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Nutzwert temp_model = new Nutzwert(ProjektID: (int)row[0], KriteriumID: (int)row[1], ProduktID: (int)row[2], Erfuellung: (bool)row[3], Gewichtung: (int)row[4], Kommentar: (string)row[5], BeitragAbsolut: (double)row[6], BeitragAbsolutCheck: (bool)row[7], Abstufung: (double)row[8]);
                        return_list.Add(temp_model);
                    }
                }
                else if (temp_obj.getKriteriumID() >= 0 && temp_obj.getProjektID() >= 0 && temp_obj.getProduktID() >= 0)
                {
                    DataTable temp_datatable = QuerySQL("SELECT * FROM NWA WHERE KriteriumID = " + temp_obj.getKriteriumID() + " AND ProjektID = " + temp_obj.getProjektID() + " AND ProduktID = " + temp_obj.getProduktID() + ";");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Nutzwert temp_model = new Nutzwert(ProjektID: (int)row[0], KriteriumID: (int)row[1], ProduktID: (int)row[2], Erfuellung: (bool)row[3], Gewichtung: (int)row[4], Kommentar: (string)row[5], BeitragAbsolut: (double)row[6], BeitragAbsolutCheck: (bool)row[7], Abstufung: (double)row[8]);
                        return_list.Add(temp_model);
                    }

                    /* Wenn per Get kein NWA-Model gefunden wurde, wird aus dem Standard-NWA ein Model erzeugt und in der DB gespeichert */
                    if (return_list.Count == 0 && temp_obj.getProduktID() != 0 && temp_obj.getProjektID() != 0)
                    {
                        List <Model> standard_objekt = this.get(new Nutzwert(KriteriumID: temp_obj.getKriteriumID(), ProjektID: 0, ProduktID: 0));
                        if (standard_objekt.Count != 1)
                        {
                            throw new Exception("Es darf nur ein Standard-NWA-Objekt vorhanden sein.");
                        }
                        else
                        {
                            // checken ob ein NWA-Objekt mit Gewichtung für das Projekt exestiert
                            List <Model> projekt_objekt = this.get(new Nutzwert(KriteriumID: temp_obj.getKriteriumID(), ProjektID: temp_obj.getProjektID(), ProduktID: -1));
                            if (projekt_objekt.Count == 0)
                            {
                                // Gewichtung ebenfalls aus Standard-NWA-Objekt holen
                                return_list.Add(insert(new Nutzwert(KriteriumID: temp_obj.getKriteriumID(), ProjektID: temp_obj.getProjektID(), ProduktID: temp_obj.getProduktID(), Erfuellung: ((Nutzwert)standard_objekt[0]).getErfuellung(), Gewichtung: ((Nutzwert)standard_objekt[0]).getGewichtung(), Abstufung: ((Nutzwert)standard_objekt[0]).getAbstufung())));
                            }
                            else
                            {
                                // Gewichtung aus dem NWA-Projekt-Objekt holen
                                return_list.Add(insert(new Nutzwert(KriteriumID: temp_obj.getKriteriumID(), ProjektID: temp_obj.getProjektID(), ProduktID: temp_obj.getProduktID(), Erfuellung: ((Nutzwert)standard_objekt[0]).getErfuellung(), Gewichtung: ((Nutzwert)projekt_objekt[0]).getGewichtung(), Abstufung: ((Nutzwert)projekt_objekt[0]).getAbstufung())));
                            }
                        }
                        /* Wenn kein Standard-NWA-Model gefunden wurde, wird dieses erzeugt und in der DB gespeichert, dies sollte im Normalfall nicht passieren */
                    }
                    else if (return_list.Count == 0 && temp_obj.getProduktID() == 0 && temp_obj.getProjektID() == 0 && temp_obj.getKriteriumID() != 0)
                    {
                        Nutzwert standard_objekt = (Nutzwert)get(new Nutzwert(0, 0, 0))[0];
                        return_list.Add(insert(new Nutzwert(KriteriumID: temp_obj.getKriteriumID(), ProjektID: temp_obj.getProjektID(), ProduktID: temp_obj.getProduktID(), Erfuellung: standard_objekt.getErfuellung(), Gewichtung: standard_objekt.getGewichtung(), Abstufung: standard_objekt.getAbstufung())));
                    }
                    else if (return_list.Count == 0)
                    {
                        throw new NotImplementedException();
                    }
                }
                else if (temp_obj.getProjektID() >= 0 && temp_obj.getProduktID() >= 0 && temp_obj.getKriteriumID() == -1)
                {
                    DataTable temp_datatable = QuerySQL("SELECT * FROM NWA WHERE ProjektID = " + temp_obj.getProjektID() + " AND ProduktID = " + temp_obj.getProduktID() + ";");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Nutzwert temp_model = new Nutzwert(ProjektID: (int)row[0], KriteriumID: (int)row[1], ProduktID: (int)row[2], Erfuellung: (bool)row[3], Gewichtung: (int)row[4], Kommentar: (string)row[5], BeitragAbsolut: (double)row[6], BeitragAbsolutCheck: (bool)row[7], Abstufung: (double)row[8]);
                        return_list.Add(temp_model);
                    }
                }
                else if (temp_obj.getProjektID() >= 0 && temp_obj.getProduktID() == -1 && temp_obj.getKriteriumID() == -1)
                {
                    DataTable temp_datatable = QuerySQL("SELECT * FROM NWA WHERE ProjektID = " + temp_obj.getProjektID() + ";");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Nutzwert temp_model = new Nutzwert(ProjektID: (int)row[0], KriteriumID: (int)row[1], ProduktID: (int)row[2], Erfuellung: (bool)row[3], Gewichtung: (int)row[4], Kommentar: (string)row[5], BeitragAbsolut: (double)row[6], BeitragAbsolutCheck: (bool)row[7], Abstufung: (double)row[8]);
                        return_list.Add(temp_model);
                    }
                }
                else
                {
                    throw new NotImplementedException();
                }
                return(return_list);
            }
            else if (objekt.GetType().Name == "Produkt")
            {
                Produkt temp_obj = (Produkt)objekt;
                if (temp_obj.getProduktID() >= 0)
                {
                    DataTable temp_datatable = QuerySQL("SELECT * FROM Produkt WHERE ProduktID = " + temp_obj.getProduktID() + ";");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Produkt temp_model = new Produkt();
                        temp_model.setProduktID((int)row[0]);
                        temp_model.setBezeichnung((string)row[1]);
                        return_list.Add(temp_model);
                    }
                }
                else
                {
                    DataTable temp_datatable = QuerySQL("SELECT * FROM Produkt;");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Produkt temp_model = new Produkt();
                        temp_model.setProduktID((int)row[0]);
                        temp_model.setBezeichnung((string)row[1]);
                        return_list.Add(temp_model);
                    }
                }
                return(return_list);
            }
            else if (objekt.GetType().Name == "Projekt")
            {
                Projekt temp_obj = (Projekt)objekt;
                if (temp_obj.getProjektID() > 0)
                {
                    DataTable temp_datatable = QuerySQL("SELECT * FROM Projekt WHERE ProjektID = " + temp_obj.getProjektID() + ";");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Projekt temp_model = new Projekt();
                        temp_model.setProjektID((int)row[0]);
                        temp_model.setBezeichnung((string)row[1]);
                        return_list.Add(temp_model);
                    }
                }
                else
                {
                    DataTable temp_datatable = QuerySQL("SELECT * FROM Projekt;");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Projekt temp_model = new Projekt();
                        temp_model.setProjektID((int)row[0]);
                        temp_model.setBezeichnung((string)row[1]);
                        return_list.Add(temp_model);
                    }
                }
                return(return_list);
            }
            else if (objekt.GetType().Name == "Kriteriumstruktur")
            {
                Kriteriumstruktur temp_obj = (Kriteriumstruktur)objekt;
                DataTable         temp_datatable;
                if (temp_obj.getUnterKriteriumID() == -1 && temp_obj.getOberKriteriumID() == -1)
                {
                    temp_datatable = QuerySQL("SELECT * FROM Kriteriumstruktur;");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Kriteriumstruktur temp_model = new Kriteriumstruktur();
                        temp_model.setOberKriteriumID((int)row[0]);
                        temp_model.setUnterKriteriumID((int)row[1]);
                        return_list.Add(temp_model);
                    }
                }
                else if (temp_obj.getOberKriteriumID() >= 0 && temp_obj.getUnterKriteriumID() == -1)
                {
                    temp_datatable = QuerySQL("SELECT * FROM Kriteriumstruktur WHERE OberKriteriumID = " + temp_obj.getOberKriteriumID() + ";");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Kriteriumstruktur temp_model = new Kriteriumstruktur();
                        temp_model.setOberKriteriumID((int)row[0]);
                        temp_model.setUnterKriteriumID((int)row[1]);
                        return_list.Add(temp_model);
                    }
                }
                else if (temp_obj.getUnterKriteriumID() >= 0 && temp_obj.getOberKriteriumID() == -1)
                {
                    temp_datatable = QuerySQL("SELECT * FROM Kriteriumstruktur WHERE UnterKriteriumID = " + temp_obj.getUnterKriteriumID() + ";");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Kriteriumstruktur temp_model = new Kriteriumstruktur();
                        temp_model.setOberKriteriumID((int)row[0]);
                        temp_model.setUnterKriteriumID((int)row[1]);
                        return_list.Add(temp_model);
                    }
                }
                else if (temp_obj.getUnterKriteriumID() != -1 && temp_obj.getOberKriteriumID() != -1)
                {
                    temp_datatable = QuerySQL("SELECT * FROM Kriteriumstruktur WHERE UnterKriteriumID = " + temp_obj.getUnterKriteriumID() + " AND OberKriteriumID = " + temp_obj.getOberKriteriumID() + ";");
                    foreach (DataRow row in temp_datatable.Rows)
                    {
                        Kriteriumstruktur temp_model = new Kriteriumstruktur();
                        temp_model.setOberKriteriumID((int)row[0]);
                        temp_model.setUnterKriteriumID((int)row[1]);
                        return_list.Add(temp_model);
                    }
                }
                return(return_list);
            }
            throw new NotImplementedException();
        }
Exemplo n.º 17
0
 private void produktaendern_Click(object sender, RoutedEventArgs e)
 {
     Produkt.setProduktIDtemp(details_ProduktID.Text);
     Projekt.setBezeichnungtemp(details_Bezeichnung.Text);
     cntrl.aendern();
 }
Exemplo n.º 18
0
 abstract public List <Kriteriumstruktur> get(Kriteriumstruktur objekt); /* hole z.B. Namen/ID aus Model und suche danach in der Datenbank, gebe das vollständige Model zurück */
 abstract public List <Projekt> get(Projekt objekt);                     /* hole z.B. Namen/ID aus Model und suche danach in der Datenbank, gebe das vollständige Model zurück */
Exemplo n.º 19
0
        public override void exp(Model objekt, DatabaseAdapter db, bool savetofile)
        {
            if (objekt == null || ((Projekt)objekt).getProjektID() <= 0)
            {
                throw new Exception("ID darf bei delete nicht  <= 0 sein");
            }
            if (objekt.GetType().Name == "Projekt")
            {
                Projekt temp_objekt = (Projekt)objekt;
                if (get(temp_objekt).Count == 0)
                {
                    ExecuteSQL("INSERT INTO Projekt (ProjektID, Bezeichnung) VALUES ( " + temp_objekt.getProjektID() + ", '" + temp_objekt.getBezeichnung() + "');");
                }
                Nutzwert        tempnutz_obj  = new Nutzwert(ProjektID: temp_objekt.getProjektID(), KriteriumID: -1, ProduktID: -1);
                List <Nutzwert> tempnutz_list = db.get(tempnutz_obj);
                foreach (Nutzwert nutz_obj in tempnutz_list)
                {
                    if (get(nutz_obj).Count == 0)
                    {
                        ExecuteSQL("INSERT INTO NWA (KriteriumID, ProjektID, ProduktID, Erfuellung, Gewichtung, Kommentar, beitrag_absolut, beitrag_absolut_check, abstufung) VALUES ( " + nutz_obj.getKriteriumID() + ", " + nutz_obj.getProjektID() + " , " + nutz_obj.getProduktID() + ", " + nutz_obj.getErfuellung() + ", " + nutz_obj.getGewichtung() + ", '" + nutz_obj.getKommentar() + "', " + nutz_obj.getBeitragAbsolut().ToString().Replace(",", ".") + ", " + nutz_obj.getBeitragAbsolutCheck() + ", " + nutz_obj.getAbstufung().ToString().Replace(",", ".") + ");");
                    }
                    Produkt        tempprod_obj  = new Produkt(nutz_obj.getProduktID());
                    List <Produkt> tempprod_list = db.get(tempprod_obj);
                    foreach (Produkt prod_obj in tempprod_list)
                    {
                        if (get(prod_obj).Count == 0)
                        {
                            ExecuteSQL("INSERT INTO Produkt (ProduktID, Bezeichnung) VALUES ( " + prod_obj.getProduktID() + ", '" + prod_obj.getBezeichnung() + "');");
                        }
                    }

                    Kriterium        tempkrit_obj  = new Kriterium(nutz_obj.getKriteriumID());
                    List <Kriterium> tempkrit_list = db.get(tempkrit_obj);
                    foreach (Kriterium krit_obj in tempkrit_list)
                    {
                        if (get(krit_obj).Count == 0)
                        {
                            ExecuteSQL("INSERT INTO Kriterium (KriteriumID, Bezeichnung) VALUES ( " + krit_obj.getKriteriumID() + ", '" + krit_obj.getBezeichnung() + "');");
                        }
                        Kriteriumstruktur        tempkritstrk_obj  = new Kriteriumstruktur(krit_obj.getKriteriumID());
                        List <Kriteriumstruktur> tempkritstrk_list = db.get(tempkritstrk_obj);
                        foreach (Kriteriumstruktur kritstrk_obj in tempkritstrk_list)
                        {
                            if (get(kritstrk_obj).Count == 0)
                            {
                                ExecuteSQL("INSERT INTO Kriteriumstruktur (OberKriteriumID, UnterKriteriumID) VALUES ( " + kritstrk_obj.getOberKriteriumID() + ", '" + kritstrk_obj.getUnterKriteriumID() + "');");
                            }
                        }
                    }
                }


                if (savetofile)
                {
                    System.Windows.Forms.SaveFileDialog openFileDialog1 = new System.Windows.Forms.SaveFileDialog();

                    // OK button was pressed.
                    string file = "";
                    openFileDialog1.Filter = "SQL file|*.sql";
                    openFileDialog1.Title  = "Save an sql File";
                    while (file == "")
                    {
                        openFileDialog1.ShowDialog();
                        file = openFileDialog1.FileName;
                    }

                    using (MySqlCommand cmd = new MySqlCommand())
                    {
                        using (MySqlBackup mb = new MySqlBackup(cmd))
                        {
                            cmd.Connection = conn;
                            conn.Open();
                            mb.ExportToFile(file);
                            conn.Close();
                        }
                    }
                }
            }
            else
            {
                throw new NotImplementedException();
            }
        }