Esempio n. 1
0
        public void TestFactoryPattern()
        {
            Varaus v1 = Varaus.Create(-2, "", -1, -1);

            if (v1 == null)
            {
                write("v1=null");
            }
            else
            {
                write(v1.ToString());
            }
            Varaus v2 = Varaus.Create(69, "", -1, -1);

            if (v2 == null)
            {
                write("v2=null");
            }
            else
            {
                write(v2.ToString());
            }
            Varaus v3 = Varaus.Create(69, "nimi1", -1, -1);

            if (v3 == null)
            {
                write("v3=null");
            }
            else
            {
                write(v3.ToString());
            }
            Varaus v4 = Varaus.Create(69, "nimi2", 420, -1);

            if (v4 == null)
            {
                write("v4=null");
            }
            else
            {
                write(v4.ToString());
            }
            Varaus v5 = Varaus.Create(69, "toimii", 420, 366);

            if (v5 == null)
            {
                write("v5=null");
            }
            else
            {
                write(v5.ToString());
            }
        }
Esempio n. 2
0
 //Lisää uuden varauksen tauluun, palauttaa true jos ei tule poikkeusta, muuten false
 public bool InsertInto(Varaus v)
 {
     try {
         sql     = "Insert into mydb.Varaus (VaraajanNimi, MateriaaliID, Määrä) values ('" + v.VaraajanNimi + "', '" + v.MateriaaliId.ToString() + "', '" + v.Maara.ToString() + "');";
         command = new SqlCommand(sql, cnn);               //en tiedä miksi on kaksi eri sql-komentoa, ohjeiden mukaan tein o.o
         adapter.InsertCommand = new SqlCommand(sql, cnn); //tämä on se toinen, mutta tämä ilmeisesti on käytössä?
         adapter.InsertCommand.ExecuteNonQuery();
         command.Dispose();                                //poistetaan olio
         return(true);
     } catch (Exception ex) {
         Console.WriteLine(ex.Message);
         return(false);
     }
 }
Esempio n. 3
0
 //Muokkaa ID:n mukaista Columnia. tark Vastaanottaa olion Varaus ja korvaa tietokannasta MateriaaliID:n mukaisen columnin tiedot.
 public bool Update(Varaus v)
 {
     try{
         sql     = "UPDATE mydb.Varaus SET VaraajanNimi='" + v.VaraajanNimi + "', MateriaaliID='" + v.MateriaaliId + "', Määrä='" + v.Maara + "' WHERE VarausID ='" + v.Id + "';";
         command = new SqlCommand(sql, cnn);               //en tiedä miksi on kaksi eri sql-komentoa, ohjeiden mukaan tein Owo
         adapter.UpdateCommand = new SqlCommand(sql, cnn); //tämä on se toinen, mutta tämä ilmeisesti on käytössä?
         adapter.UpdateCommand.ExecuteNonQuery();
         command.Dispose();                                //poistetaan olio
         return(true);
     }
     catch (Exception ex) {
         Console.WriteLine(ex.Message);
         return(false);
     }
 }
Esempio n. 4
0
 //Lukee kaiken datan taulusta
 public List <Varaus> SelectAll(List <Varaus> varaukset)
 {
     sql        = "Select * from mydb.Varaus;";
     command    = new SqlCommand(sql, cnn);
     dataReader = command.ExecuteReader();
     while (dataReader.Read())
     {
         int.TryParse(dataReader.GetValue(0).ToString(), out id);
         varaajanNimi = dataReader.GetValue(1).ToString();
         int.TryParse(dataReader.GetValue(2).ToString(), out materiaaliId);
         int.TryParse(dataReader.GetValue(3).ToString(), out maara);
         Varaus v = Varaus.Create(id, varaajanNimi, materiaaliId, maara);
         varaukset.Add(v);
     }
     dataReader.Close();
     return(varaukset);
 }
Esempio n. 5
0
        public void Run()
        {
            List <Materiaali> materiaalit = new List <Materiaali>(); //Lista materiaaleista
            List <Tilaus>     tilaukset   = new List <Tilaus>();     //Lista tilauksista
            List <Varaus>     varaukset   = new List <Varaus>();
            SqlConnection     cnn;                                   //tietokantayhteys-olio, jaetaan tämä muualle
            DatabaseManager   dm = new DatabaseManager();            //tietokannanhallinta-olio, mm. yhdistys kantaan

            cnn = dm.OpenConnection();                               //yhdistetään kantaan
            if (cnn != null)
            {
                DatabaseMateriaali dmMat = new DatabaseMateriaali(cnn); //luodaan olio, jolla käsitellään materiaaleja tietokannassa
                materiaalit = dmMat.SelectAll(materiaalit);             //haetaan kaikki materiaalit kannasta listaan

                DatabaseTilaus dmTil = new DatabaseTilaus(cnn);         //luodaan olio, jolla käsitellään tilauksia tietokannassa
                tilaukset = dmTil.SelectAll(tilaukset);                 //haetaan kaikki tilaukset kannasta listaan

                DatabaseVaraus dmVar = new DatabaseVaraus(cnn);
                varaukset = dmVar.SelectAll(varaukset);

                //Kokeillaan nyt lisätä kantaan, muokata kantaa ja päivittää listaa
                Materiaali m  = Materiaali.Create(-1, 2, 3, 4);
                Materiaali mU = Materiaali.Create(5, 6, 7, 8);
                dmMat.InsertInto(m);
                dmMat.Update(mU);
                materiaalit = new List <Materiaali>();
                materiaalit = dmMat.SelectAll(materiaalit); //päivitetään lista

                Tilaus t  = Tilaus.Create(-1, "Tilaaja1", 666, materiaalit[materiaalit.Count - 1].Id);
                Tilaus tU = Tilaus.Create(5, "Tilaaja4299", 1337, materiaalit[3].Id);
                dmTil.InsertInto(t);
                dmTil.Update(tU);
                tilaukset = new List <Tilaus>();
                tilaukset = dmTil.SelectAll(tilaukset);

                Varaus v  = Varaus.Create(-1, "Varaaja1", materiaalit[materiaalit.Count - 1].Id, 69);
                Varaus vU = Varaus.Create(6, "Varaaja6069", materiaalit[4].Id, 21);
                dmVar.InsertInto(v);
                dmVar.Update(vU);
                varaukset = new List <Varaus>();
                varaukset = dmVar.SelectAll(varaukset);

                write(path, materiaalit, tilaukset, varaukset);//lopputilanne
                dm.CloseConnection();
            }
        }