Exemplo n.º 1
0
        public static void ExportFiles(SQLiteConnection m_dbConnection)
        {
            Functions.ConsoleWrite("Welche Übungseinheit in Nummer möchten Sie exportieren?", ConsoleColor.DarkBlue);
            int uebungseinheit_number = Convert.ToInt32(Console.ReadLine());

            AskIfExist(m_dbConnection, uebungseinheit_number);
            Functions.ConsoleWrite("Moechten Sie die Übungseinheiten mit Lösungen(1) exportieren oder nur die Übungsaufgaben(2) oder nur die Lösungen(3)?", ConsoleColor.DarkBlue);
            int numberUserInput = Convert.ToInt32(Console.ReadLine());

            if (numberUserInput == 1 || numberUserInput == 2)
            {
                try
                {
                    Functions.ConsoleWrite("Welche Uebungsaufgaben moechten Sie exportieren? Geben Sie jeweils P oder H oder T an. Trennen Sie Ihre Angaben bitte mit einem ','", ConsoleColor.DarkBlue);
                    string userInput = Console.ReadLine();
                    ExportData.ExportUebungen(userInput, m_dbConnection, uebungseinheit_number, numberUserInput);
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                    Functions.ConsoleWrite("Diese Eingabe war leider ungueltig. Bitte versuchen Sie es erneut. \n ", ConsoleColor.DarkYellow);
                }
            }
            else if (numberUserInput == 3)
            {
                ExportFromDB.ExportLoesungenTex(m_dbConnection, uebungseinheit_number);
            }
        }
Exemplo n.º 2
0
        public static void CreatePath(string sql, SQLiteConnection m_dbConnection, string filepath, int exportArt)
        {
            SQLiteCommand    command = new SQLiteCommand(sql, m_dbConnection);
            SQLiteDataReader reader  = command.ExecuteReader();
            string           aufgabe = "";
            string           loesung = "";

            var aufgaben = new List <string>();

            while (reader.Read())
            {
                //schaut, was alles exportiert werden muss: Loesungen, Uebungen oder Uebungen mit Loesungen
                switch (exportArt)
                {
                case 1:
                    aufgabe = ExportFromDB.ExportAufgaben(reader);
                    loesung = ExportFromDB.ExportLoesungen(reader);
                    aufgaben.Add(aufgabe + loesung);
                    break;

                case 2:
                    aufgabe = ExportFromDB.ExportAufgaben(reader);
                    aufgaben.Add(aufgabe);
                    break;

                case 3:
                    loesung = ExportFromDB.ExportLoesungenForUser(reader);
                    aufgaben.Add(loesung);
                    aufgaben.Add("\n");
                    break;
                }
            }
            try
            {
                // Create the file, or overwrite if the file exists.
                using (FileStream fs = File.Create(@"..\..\..\..\" + filepath))
                {
                    for (int j = 0; j < aufgaben.Count; j++)
                    {
                        byte[] info = new UTF8Encoding(true).GetBytes(aufgaben[j]);
                        // Add some information to the file.
                        fs.Write(info, 0, info.Length);
                    }
                }
            }

            catch (Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }
        }
Exemplo n.º 3
0
 public static void AllUebungenFromNumner(string[] allInput)
 {
     Functions.ConsoleWrite("Sie haben folgende Übungen zur Auswahl: \n", ConsoleColor.DarkBlue);
     m_dbConnection.Open();
     for (int i = 0; i < allInput.Length; i++)
     {
         int uebungseinheit = 0;
         try
         {
             uebungseinheit = Int32.Parse(allInput[i]);
         } catch (FormatException e)
         {
             Functions.ConsoleWrite("\n Diese Eingabe war leider ungueltig. \n", ConsoleColor.DarkRed);
             AllUebungenFromNumner(allInput);
         }
         string           sql      = "select ID, NameDerAufgabe, Uebungsnummer, Uebungsart from MKB where Uebungseinheit=" + allInput[i] + "";
         SQLiteCommand    command  = new(sql, m_dbConnection);
         SQLiteDataReader reader   = command.ExecuteReader();
         List <Uebungen>  uebungen = new();
         while (reader.Read())
         {
             string aufgabename = ExportFromDB.ExportNameDerAufgabe(reader);
             aufgabename = Functions.ReplaceStringToText(aufgabename);
             int      aufgabennummer = Int32.Parse(ExportFromDB.ExportUebungsnummer(reader));
             string   id             = ExportFromDB.ExportID(reader);
             int      idNumber       = Int32.Parse(id);
             string   uebungsart     = ExportFromDB.ExportUebungsart(reader);
             Uebungen uebung         = new(aufgabename, aufgabennummer, uebungsart, idNumber);
             uebungen.Add(uebung);
         }
         for (int j = 0; j < uebungen.Count; j++)
         {
             Functions.ConsoleWrite(uebungen[j].GetUebungsart() + " || " + uebungen[j].GetAufgabennummer() + " || " + uebungen[j].GetName() + " || ID: " + uebungen[j].GetId(), ConsoleColor.DarkRed);
         }
         Console.WriteLine("\n");
     }
     m_dbConnection.Close();
 }
Exemplo n.º 4
0
        public static void UpdateDB(string[] userInputArray)
        {
            m_dbConnection.Open();
            string          sql      = "";
            List <Uebungen> uebungen = new List <Uebungen>();

            Console.WriteLine(userInputArray.Length);
            for (int i = 0; i < userInputArray.Length; i++)
            {
                int id = Int32.Parse(userInputArray[i]);
                sql = "select * from MKB where ID=" + id + "";
                SQLiteCommand    command = new SQLiteCommand(sql, m_dbConnection);
                SQLiteDataReader reader  = command.ExecuteReader();
                while (reader.Read())
                {
                    uebungen.Add(ExportFromDB.ExportAll(reader));
                }
            }
            sql = "update MKB set NamederAufgabe='" + Functions.ReplaceStringToDB(uebungen[0].GetName()) + "', Uebungsaufgabe='" + Functions.ReplaceStringToDB(uebungen[0].GetAufgabe()) + "', Loesung='" + Functions.ReplaceStringToDB(uebungen[0].GetLoesung()) + "'  where ID='" + userInputArray[1] + "' ";
            Functions.sqlStatement(sql);
            sql = "update MKB set NamederAufgabe='" + Functions.ReplaceStringToDB(uebungen[1].GetName()) + "', Uebungsaufgabe='" + Functions.ReplaceStringToDB(uebungen[1].GetAufgabe()) + "', Loesung='" + Functions.ReplaceStringToDB(uebungen[1].GetLoesung()) + "'  where ID='" + userInputArray[0] + "' ";
            Functions.sqlStatement(sql);
            m_dbConnection.Close();
        }
Exemplo n.º 5
0
        public static void AddTask()
        {
            m_dbConnection.Open();
            Functions.ConsoleWrite("In welcher Übungseinheit wollen Sie eine neue Aufgabe hinzufügen?", ConsoleColor.DarkBlue);
            string getInput = Console.ReadLine();

            string[] allInput = getInput.Split(',');
            Functions.AllUebungenFromNumner(allInput);
            Functions.ConsoleWrite("Nach welcher ID möchten Sie die neue Aufgabe hinzufügen?", ConsoleColor.DarkBlue);
            string        getUserInput = Console.ReadLine();
            string        sql          = "SELECT COUNT(*) FROM MKB";
            SQLiteCommand command      = new SQLiteCommand(sql, m_dbConnection);

            command.ExecuteNonQuery();
            int RowCount = Convert.ToInt32(command.ExecuteScalar());

            RowCount += 1;
            int newId = RowCount;

            sql = "insert into MKB (ID) values (" + RowCount + ")";
            Functions.sqlStatement(sql);
            int id = Int32.Parse(getUserInput) + 1;

            RowCount = RowCount - 1 - id;
            List <Uebungen> uebungen  = new List <Uebungen>();
            Uebungen        newUebung = new Uebungen("name", 2, id);

            uebungen.Add(newUebung);
            for (int i = 0; i <= RowCount; i++)
            {
                int getid = id + i;
                sql     = "select * from MKB where ID=" + getid + "";
                command = new SQLiteCommand(sql, m_dbConnection);
                SQLiteDataReader reader = command.ExecuteReader();
                while (reader.Read())
                {
                    uebungen.Add(ExportFromDB.ExportAll(reader));
                }
            }
            int idnumber = id;

            for (int i = 1; i < uebungen.Count; i++)
            {
                Functions.ConsoleWrite(uebungen[i].GetId().ToString() + "||" + uebungen[i].GetAufgabennummer().
                                       ToString() + "||" + idnumber.ToString(), ConsoleColor.Red);
                int iduebungen    = (uebungen[i].GetId()) + 1;
                int uebungsnummer = uebungen[i].GetAufgabennummer();
                sql = "update MKB set NamederAufgabe='" + Functions.ReplaceStringToDB(uebungen[i].GetName()) + "', Uebungseinheit=" + uebungen[i].GetUebungseinheit() + ", Uebungsnummer=" + uebungsnummer + ",  Uebungsart='" + uebungen[i].GetUebungsart() + "', WirdVerwendet=0, NamederAufgabe='" + Functions.ReplaceStringToDB(uebungen[i].GetName()) + "', Uebungsaufgabe='" + Functions.ReplaceStringToDB(uebungen[i].GetAufgabe()) + "', Loesung='" + Functions.ReplaceStringToDB(uebungen[i].GetLoesung()) + "'  where ID=" + iduebungen + "";
                Functions.sqlStatement(sql);
                uebungsnummer += 1;
                sql            = "update MKB set Uebungsnummer=" + uebungsnummer + " where ID=" + iduebungen + " AND Uebungsart='" + uebungen[1].GetUebungsart() + "'";
                Functions.sqlStatement(sql);
                idnumber++;
            }

            CreateNewPath();
            Console.WriteLine("Tippen Sie 'weiter' sobald Sie die Übungsaufgabe geändert haben.");
            getUserInput = Console.ReadLine();
            string[] fileinput      = GetFileInput();
            string   loesung        = "";
            int      uebungseinheit = Int32.Parse(allInput[0]);

            sql = "update MKB set Uebungseinheit=" + uebungseinheit + ", Uebungsnummer=" + uebungen[1].GetAufgabennummer() + ",  Uebungsart='" + uebungen[1].GetUebungsart() + "', WirdVerwendet=0, NamederAufgabe='" + Functions.ReplaceStringToDB(fileinput[0]) + "', Uebungsaufgabe='" + Functions.ReplaceStringToDB(fileinput[1]) + "', Loesung='" + loesung + "'  where ID=" + id + "";
            Functions.sqlStatement(sql);
            m_dbConnection.Close();
        }