public void UkloniElektricniAutomobil(ElektricniAutomobil a) { string query = "DELETE FROM Automobili WHERE JedinstvenoIme = '" + a.JedinstvenoIme + "'"; using (connection = new SqlConnection(connectionString)) using (SqlCommand command = new SqlCommand(query, connection)) { connection.Open(); command.ExecuteNonQuery(); } query = "DELETE FROM Baterije WHERE AutomobilJedinstvenoIme = '" + a.JedinstvenoIme + "'"; using (connection = new SqlConnection(connectionString)) using (SqlCommand command = new SqlCommand(query, connection)) { connection.Open(); command.ExecuteNonQuery(); } App.Current.Dispatcher.Invoke((System.Action) delegate { MainWindow.ElektricniAutomobili.Remove(a); MainWindow.autoBaterije.Remove(a.BaterijaAuta); }); }
public void DodajElektricniAutomobil(ElektricniAutomobil automobil) { bool sadrzi = false; foreach (ElektricniAutomobil e in MainWindow.ElektricniAutomobili) { if (e.JedinstvenoIme == automobil.JedinstvenoIme) { sadrzi = true; break; } } if (!sadrzi) { if (repozitorijum == null) { repozitorijum = new ElektricniAutomobilRepozitorijum(); } if (baterijaRepozitorijum == null) { baterijaRepozitorijum = new BaterijaRepozitorijum(); } repozitorijum.DodajElektricniAutomobil(automobil); //DodajBateriju(automobil.BaterijaAuta, true, automobil.JedinstvenoIme); BaterijaServer bs = new BaterijaServer(baterijaRepozitorijum); bs.DodajBateriju(automobil.BaterijaAuta, true, automobil.JedinstvenoIme); } }
public void DodajElektricniAutomobil(ElektricniAutomobil automobil) { int naPunjacu = 0; if (automobil.NaPunjacu) { naPunjacu = 1; } int puniSe = 0; if (automobil.PuniSe) { puniSe = 1; } string query = $"INSERT INTO Automobili VALUES (@jedinstvenoIme, {naPunjacu}, {puniSe})"; using (connection = new SqlConnection(connectionString)) using (SqlCommand command = new SqlCommand(query, connection)) { connection.Open(); command.Parameters.AddWithValue("@jedinstvenoIme", automobil.JedinstvenoIme); command.ExecuteNonQuery(); } App.Current.Dispatcher.Invoke((System.Action) delegate { MainWindow.ElektricniAutomobili.Add(automobil); }); }
public void ElektricniAutomobilKonstruktor2LosiParametri(Baterija baterija, string jedinstvenoIme, bool naPunjacu, bool puniSe) { Assert.Throws <ArgumentException>(() => { ElektricniAutomobil automobil = new ElektricniAutomobil(baterija, jedinstvenoIme, naPunjacu, puniSe); } ); }
public void ElektricniAutomobilKonstruktor1LosiParametri(string jedinstvenoIme, double maksimalnaSnaga, double kapacitet, int brojBaterije) { Assert.Throws <ArgumentException>(() => { ElektricniAutomobil automobil = new ElektricniAutomobil(jedinstvenoIme, maksimalnaSnaga, kapacitet, brojBaterije); } ); }
public void ElektricniAutomobilKonstruktor2DobriParametri(Baterija baterija, string jedinstvenoIme, bool naPunjacu, bool puniSe) { ElektricniAutomobil elektricniAutomobil = new ElektricniAutomobil(baterija, jedinstvenoIme, naPunjacu, puniSe); Assert.AreEqual(elektricniAutomobil.JedinstvenoIme, jedinstvenoIme); Assert.AreEqual(elektricniAutomobil.BaterijaAuta, baterija); Assert.AreEqual(elektricniAutomobil.NaPunjacu, naPunjacu); Assert.AreEqual(elektricniAutomobil.PuniSe, puniSe); }
public void ElektricniAutomobilKonstruktor1DobriParametri(string jedinstvenoIme, double maksimalnaSnaga, double kapacitet, int brojBaterije) { ElektricniAutomobil elektricniAutomobil = new ElektricniAutomobil(jedinstvenoIme, maksimalnaSnaga, kapacitet, brojBaterije); Assert.AreEqual(elektricniAutomobil.JedinstvenoIme, jedinstvenoIme); Assert.AreEqual(elektricniAutomobil.BaterijaAuta.MaksimalnaSnaga, maksimalnaSnaga); Assert.AreEqual(elektricniAutomobil.BaterijaAuta.Kapacitet, kapacitet); Assert.AreEqual(elektricniAutomobil.BaterijaAuta.JedinstvenoIme, "BaterijaAuta" + brojBaterije.ToString()); Assert.AreEqual(false, elektricniAutomobil.NaPunjacu); Assert.AreEqual(false, elektricniAutomobil.PuniSe); }
public void DodajElektricniAutomobilDobarTest(ElektricniAutomobil automobil) { bool izvrseno = true; int count = -1; elektricniAutomobilServer.DodajElektricniAutomobil(automobil); count = ((FakeElektricniAutomobilRepozitorijum)repozitorijum).automobili.Count; Assert.AreEqual(true, izvrseno); Assert.AreEqual(1, count); }
public void IskljuciSaPunjaca(ElektricniAutomobil a) { string query = "UPDATE Automobili SET NaPunjacu=@up WHERE JedinstvenoIme = '" + a.JedinstvenoIme + "'"; using (connection = new SqlConnection(connectionString)) using (SqlCommand command = new SqlCommand(query, connection)) { command.Parameters.Add("@up", SqlDbType.Bit).Value = false; connection.Open(); command.ExecuteNonQuery(); } }
public void PokreniPunjenje(ElektricniAutomobil e) { string query = "UPDATE Automobili SET Punise=@up WHERE JedinstvenoIme = '" + e.JedinstvenoIme + "'"; using (connection = new SqlConnection(connectionString)) using (SqlCommand command = new SqlCommand(query, connection)) { command.Parameters.Add("@up", SqlDbType.Bit).Value = true; connection.Open(); command.ExecuteNonQuery(); } }
public void PostavljanjeKapacitetaAuta(ElektricniAutomobil e, int trenutniKapacitet) { int i = 0; foreach (ElektricniAutomobil automobil in automobili) { if (automobil.JedinstvenoIme == e.JedinstvenoIme) { automobil.BaterijaAuta.TrenutniKapacitet = trenutniKapacitet; break; } i++; } }
public void UkloniElektricniAutomobil(ElektricniAutomobil a) { int i = 0; foreach (ElektricniAutomobil automobil in automobili) { if (automobil.JedinstvenoIme == a.JedinstvenoIme) { automobili.RemoveAt(i); break; } i++; } }
public void UkljuciNaPunjac(ElektricniAutomobil e) { int i = 0; foreach (ElektricniAutomobil automobil in automobili) { if (automobil.JedinstvenoIme == e.JedinstvenoIme) { automobil.NaPunjacu = true; break; } i++; } }
public void PokreniPunjenje(ElektricniAutomobil e) { int i = 0; puniSePunjac = true; foreach (ElektricniAutomobil automobil in automobili) { if (automobil.JedinstvenoIme == e.JedinstvenoIme) { automobil.PuniSe = true; break; } i++; } }
public void UkljuciNaPunjac(ElektricniAutomobil a) { MainWindow.Punjac.NaPunjacu = true; MainWindow.Punjac.Automobil = a; a.NaPunjacu = true; string query = "UPDATE Automobili SET NaPunjacu=@up WHERE JedinstvenoIme = '" + a.JedinstvenoIme + "'"; using (connection = new SqlConnection(connectionString)) using (SqlCommand command = new SqlCommand(query, connection)) { command.Parameters.Add("@up", SqlDbType.Bit).Value = true; connection.Open(); command.ExecuteNonQuery(); } }
public void IskljuciSaPunjaca(ElektricniAutomobil e) { int i = 0; foreach (ElektricniAutomobil automobil in automobili) { if (automobil.JedinstvenoIme == e.JedinstvenoIme) { automobil.NaPunjacu = false; automobil.PuniSe = false; break; } i++; } }
public void ZaustaviPunjenje(ElektricniAutomobil e) { int i = 0; puniSePunjac = false; foreach (ElektricniAutomobil automobil in automobili) { if (automobil.JedinstvenoIme == e.JedinstvenoIme) { automobil.PuniSe = false; break; } i++; } }
public void DodajElektricniAutomobilLosTest(ElektricniAutomobil automobil) { MainWindow.ElektricniAutomobili.Add(automobil); ((FakeElektricniAutomobilRepozitorijum)repozitorijum).automobili.Add(automobil); bool izvrseno = true; int count = -1; try { elektricniAutomobilServer.DodajElektricniAutomobil(automobil); } catch { izvrseno = false; } count = ((FakeElektricniAutomobilRepozitorijum)repozitorijum).automobili.Count; Assert.AreEqual(true, izvrseno); Assert.AreEqual(1, count); }
public void UcitajUredjaje() { string queryDatumVreme = "SELECT * FROM Vreme WHERE SnagaSunca IS NULL"; using (connection = new SqlConnection(connectionString)) using (SqlCommand command = new SqlCommand(queryDatumVreme, connection)) using (SqlDataAdapter adapter = new SqlDataAdapter(command)) { DataTable table = new DataTable(); adapter.Fill(table); if (table.Rows.Count == 0) { MainWindow.trenutnoVreme = DateTime.Now; connection.Open(); command.CommandText = $"INSERT INTO Vreme Values(@id, @vreme, NULL)"; command.Parameters.AddWithValue("@id", "DatumVreme"); command.Parameters.AddWithValue("vreme", MainWindow.trenutnoVreme); command.ExecuteNonQuery(); } for (int i = 0; i < table.Rows.Count; i++) { string id = table.Rows[i]["Id"].ToString(); MainWindow.trenutnoVreme = DateTime.Parse(table.Rows[i]["DatumVreme"].ToString()); } } string querySnagaSunca = "SELECT * FROM Vreme WHERE DatumVreme IS NULL"; using (connection = new SqlConnection(connectionString)) using (SqlCommand command = new SqlCommand(querySnagaSunca, connection)) using (SqlDataAdapter adapter = new SqlDataAdapter(command)) { DataTable table = new DataTable(); adapter.Fill(table); if (table.Rows.Count == 0) { MainWindow.SnagaSunca = 0; } for (int i = 0; i < table.Rows.Count; i++) { string id = table.Rows[i]["Id"].ToString(); MainWindow.SnagaSunca = int.Parse(table.Rows[i]["SnagaSunca"].ToString()); } } string queryDatum = "SELECT * FROM Graf WHERE Datum = @Datum and Sat = @Sat"; using (connection = new SqlConnection(connectionString)) using (SqlCommand command = new SqlCommand(queryDatum, connection)) using (SqlDataAdapter adapter = new SqlDataAdapter(command)) { DataTable table = new DataTable(); command.Parameters.AddWithValue("@Datum", MainWindow.trenutnoVreme.Date); command.Parameters.AddWithValue("@Sat", MainWindow.trenutnoVreme.Hour + 1); adapter.Fill(table); if (table.Rows.Count > 0) { MainWindow.baterije = double.Parse(table.Rows[0]["Baterije"].ToString()) * (-1); MainWindow.distribucijaSat = double.Parse(table.Rows[0]["Distribucija"].ToString()) * (-1); MainWindow.solarniPaneli = double.Parse(table.Rows[0]["SolarniPaneli"].ToString()) * (-1); MainWindow.potrosaci = double.Parse(table.Rows[0]["Potrosaci"].ToString()) * (-1); } else { MainWindow.baterije = 0; MainWindow.distribucijaSat = 0; MainWindow.solarniPaneli = 0; MainWindow.potrosaci = 0; } } string queryBaterije = "SELECT * FROM Baterije WHERE AutomobilJedinstvenoIme IS NULL"; using (connection = new SqlConnection(connectionString)) using (SqlCommand command = new SqlCommand(queryBaterije, connection)) using (SqlDataAdapter adapter = new SqlDataAdapter(command)) { DataTable table = new DataTable(); adapter.Fill(table); for (int i = 0; i < table.Rows.Count; i++) { string jedinstvenoIme = table.Rows[i]["JedinstvenoIme"].ToString(); double maksimalnaSnaga = double.Parse(table.Rows[i]["MaksimalnaSnaga"].ToString()); double kapacitet = double.Parse(table.Rows[i]["Kapacitet"].ToString()); bool puniSe = bool.Parse(table.Rows[i]["PuniSe"].ToString()); bool prazniSe = bool.Parse(table.Rows[i]["PrazniSe"].ToString()); double trenutniKapacitet = double.Parse(table.Rows[i]["TrenutniKapacitet"].ToString()); Baterija novaBaterija = new Baterija(jedinstvenoIme, maksimalnaSnaga, kapacitet); novaBaterija.PuniSe = puniSe; novaBaterija.PrazniSe = prazniSe; novaBaterija.TrenutniKapacitet = trenutniKapacitet; if (novaBaterija.TrenutniKapacitet == 0) { novaBaterija.Slika = MaterialDesignThemes.Wpf.PackIconKind.Battery0; } else if (novaBaterija.TrenutniKapacitet > 0 && novaBaterija.TrenutniKapacitet <= novaBaterija.Kapacitet * 20 / 100) { novaBaterija.Slika = MaterialDesignThemes.Wpf.PackIconKind.Battery10; } else if (novaBaterija.TrenutniKapacitet > novaBaterija.Kapacitet * 20 / 100 && novaBaterija.TrenutniKapacitet <= novaBaterija.Kapacitet * 40 / 100) { novaBaterija.Slika = MaterialDesignThemes.Wpf.PackIconKind.Battery30; } else if (novaBaterija.TrenutniKapacitet > novaBaterija.Kapacitet * 40 / 100 && novaBaterija.TrenutniKapacitet <= novaBaterija.Kapacitet * 60 / 100) { novaBaterija.Slika = MaterialDesignThemes.Wpf.PackIconKind.Battery50; } else if (novaBaterija.TrenutniKapacitet > novaBaterija.Kapacitet * 60 / 100 && novaBaterija.TrenutniKapacitet <= novaBaterija.Kapacitet * 80 / 100) { novaBaterija.Slika = MaterialDesignThemes.Wpf.PackIconKind.Battery70; } else if (novaBaterija.TrenutniKapacitet > novaBaterija.Kapacitet * 80 / 100 && novaBaterija.TrenutniKapacitet <= novaBaterija.Kapacitet * 95 / 100) { novaBaterija.Slika = MaterialDesignThemes.Wpf.PackIconKind.Battery90; } else { novaBaterija.Slika = MaterialDesignThemes.Wpf.PackIconKind.Battery100; } MainWindow.Baterije.Add(novaBaterija); } } queryBaterije = "SELECT * FROM Baterije WHERE AutomobilJedinstvenoIme IS NOT NULL"; using (connection = new SqlConnection(connectionString)) using (SqlCommand command = new SqlCommand(queryBaterije, connection)) using (SqlDataAdapter adapter = new SqlDataAdapter(command)) { DataTable table = new DataTable(); adapter.Fill(table); for (int i = 0; i < table.Rows.Count; i++) { string jedinstvenoIme = table.Rows[i]["JedinstvenoIme"].ToString(); double maksimalnaSnaga = double.Parse(table.Rows[i]["MaksimalnaSnaga"].ToString()); double kapacitet = double.Parse(table.Rows[i]["Kapacitet"].ToString()); string autoJedinstvenoIme = table.Rows[i]["AutomobilJedinstvenoIme"].ToString(); bool puniSe = bool.Parse(table.Rows[i]["PuniSe"].ToString()); bool prazniSe = bool.Parse(table.Rows[i]["PrazniSe"].ToString()); double trenutniKapacitet = double.Parse(table.Rows[i]["TrenutniKapacitet"].ToString()); Baterija novaBaterija = new Baterija(jedinstvenoIme, maksimalnaSnaga, kapacitet); novaBaterija.PuniSe = puniSe; novaBaterija.PrazniSe = prazniSe; novaBaterija.AutomobilJedinstvenoIme = autoJedinstvenoIme; novaBaterija.TrenutniKapacitet = trenutniKapacitet; MainWindow.autoBaterije.Add(novaBaterija); } } string queryPotrosaci = "SELECT * FROM Potrosaci"; using (connection = new SqlConnection(connectionString)) using (SqlCommand command = new SqlCommand(queryPotrosaci, connection)) using (SqlDataAdapter adapter = new SqlDataAdapter(command)) { DataTable table = new DataTable(); adapter.Fill(table); for (int i = 0; i < table.Rows.Count; i++) { string jedinstvenoIme = table.Rows[i]["JedinstvenoIme"].ToString(); double potrosnja = double.Parse(table.Rows[i]["Potrosnja"].ToString()); bool stanje = bool.Parse(table.Rows[i]["Upaljen"].ToString()); Potrosac novi = new Potrosac(jedinstvenoIme, potrosnja); novi.Upaljen = stanje; if (stanje) { novi.Slika = MaterialDesignThemes.Wpf.PackIconKind.PowerPlugOutline; } MainWindow.Potrosaci.Add(novi); } } string querySolarniPaneli = "SELECT * FROM SolarnePanele"; using (connection = new SqlConnection(connectionString)) using (SqlCommand command = new SqlCommand(querySolarniPaneli, connection)) using (SqlDataAdapter adapter = new SqlDataAdapter(command)) { DataTable table = new DataTable(); adapter.Fill(table); for (int i = 0; i < table.Rows.Count; i++) { string jedinstvenoIme = table.Rows[i]["JedinstvenoIme"].ToString(); double maksimalnaSnaga = double.Parse(table.Rows[i]["MaksimalnaSnaga"].ToString()); SolarniPanel novi = new SolarniPanel(jedinstvenoIme, maksimalnaSnaga); MainWindow.SolarniPaneli.Add(novi); } } string queryAutomobil = "SELECT * FROM Automobili"; using (connection = new SqlConnection(connectionString)) using (SqlCommand command = new SqlCommand(queryAutomobil, connection)) using (SqlDataAdapter adapter = new SqlDataAdapter(command)) { DataTable table = new DataTable(); adapter.Fill(table); for (int i = 0; i < table.Rows.Count; i++) { string jedinstvenoIme = table.Rows[i]["JedinstvenoIme"].ToString(); bool naPunjacu = bool.Parse(table.Rows[i]["NaPunjacu"].ToString()); bool puniSe = bool.Parse(table.Rows[i]["Punise"].ToString()); Baterija baterija = MainWindow.autoBaterije.Find(b => b.AutomobilJedinstvenoIme.Equals(jedinstvenoIme)); ElektricniAutomobil noviAuto = new ElektricniAutomobil(baterija, jedinstvenoIme, naPunjacu, puniSe); if (naPunjacu == true) { MainWindow.Punjac.Automobil = noviAuto; MainWindow.Punjac.NaPunjacu = true; if (puniSe == true) { MainWindow.Punjac.PuniSe = true; } } if (noviAuto.BaterijaAuta.TrenutniKapacitet == 0) { noviAuto.Slika = MaterialDesignThemes.Wpf.PackIconKind.Battery0; } else if (noviAuto.BaterijaAuta.TrenutniKapacitet > 0 && noviAuto.BaterijaAuta.TrenutniKapacitet <= noviAuto.BaterijaAuta.Kapacitet * 20 / 100) { noviAuto.Slika = MaterialDesignThemes.Wpf.PackIconKind.Battery10; } else if (noviAuto.BaterijaAuta.TrenutniKapacitet > noviAuto.BaterijaAuta.Kapacitet * 20 / 100 && noviAuto.BaterijaAuta.TrenutniKapacitet <= noviAuto.BaterijaAuta.Kapacitet * 40 / 100) { noviAuto.Slika = MaterialDesignThemes.Wpf.PackIconKind.Battery30; } else if (noviAuto.BaterijaAuta.TrenutniKapacitet > noviAuto.BaterijaAuta.Kapacitet * 40 / 100 && noviAuto.BaterijaAuta.TrenutniKapacitet <= noviAuto.BaterijaAuta.Kapacitet * 60 / 100) { noviAuto.Slika = MaterialDesignThemes.Wpf.PackIconKind.Battery50; } else if (noviAuto.BaterijaAuta.TrenutniKapacitet > noviAuto.BaterijaAuta.Kapacitet * 60 / 100 && noviAuto.BaterijaAuta.TrenutniKapacitet <= noviAuto.BaterijaAuta.Kapacitet * 80 / 100) { noviAuto.Slika = MaterialDesignThemes.Wpf.PackIconKind.Battery70; } else if (noviAuto.BaterijaAuta.TrenutniKapacitet > noviAuto.BaterijaAuta.Kapacitet * 80 / 100 && noviAuto.BaterijaAuta.TrenutniKapacitet <= noviAuto.BaterijaAuta.Kapacitet * 95 / 100) { noviAuto.Slika = MaterialDesignThemes.Wpf.PackIconKind.Battery90; } else { noviAuto.Slika = MaterialDesignThemes.Wpf.PackIconKind.Battery100; } MainWindow.ElektricniAutomobili.Add(noviAuto); } } }
public void DodajElektricniAutomobil(ElektricniAutomobil automobil) { automobili.Add(automobil); }
public void PostavljanjeKapacitetaAuta(ElektricniAutomobil e, int trenutniKapacitet) { e.BaterijaAuta.TrenutniKapacitet = trenutniKapacitet; }