//method public List <Stanica> VratiSveStanice() { List <Stanica> lista = new List <Stanica>(); try { konekcija.Open(); komanda.CommandText = "Select * from Stanica"; SqlDataReader citac = komanda.ExecuteReader(); while (citac.Read()) { Stanica nova = new Stanica(); nova.StanicaID = citac.GetInt32(0); nova.NazivStanice = citac.GetString(1); lista.Add(nova); } citac.Close(); return(lista); } catch (Exception) { throw; } finally { if (konekcija != null) { konekcija.Close(); } } }
internal Veza() { stanica1 = null; stanica2 = null; linija = ""; udaljenost = 0; }
private void updateDgvCijene(int redniBroj, int polazak, int dolazak, Stanica stanica) { DataGridViewColumn dgvc = new DataGridViewColumn(); dgvc.HeaderText = stanica.Naziv; dgvc.CellTemplate = new DataGridViewTextBoxCell(); dgvCijene.Columns.Insert(redniBroj - 1, dgvc); dgvCijene.Rows.Insert(redniBroj); dgvCijene.Rows[redniBroj].HeaderCell.Value = stanica.Naziv + ", " + stanica.Mjesto; DataGridViewCellStyle crveno = new DataGridViewCellStyle(); crveno.BackColor = System.Drawing.Color.Red; for (int i = 0; i < redniBroj - 1; i++) { dgvCijene.Rows[redniBroj].Cells[i].Style = crveno; dgvCijene.Rows[redniBroj].Cells[i].ReadOnly = true; } for (int i = redniBroj; i < dgvCijene.Rows.Count; i++) { dgvCijene.Rows[i].Cells[redniBroj - 1].Style = crveno; dgvCijene.Rows[i].Cells[redniBroj - 1].ReadOnly = true; } }
/// <summary> /// Ak sa v okolн stanice nachбdza nejakб eЪte nezaradenб vэroba, tak sa zaradн /// </summary> /// <param name="paStavana">stavanб stanica</param> /// <param name="paRozmerRiadkov">rozmer</param> /// <param name="paRozmerStlpcov">rozmer</param> private void OverOkolieStaniceVyroba(Stanica paStavana, int paRozmerRiadkov, int paRozmerStlpcov) { int zacRiad = aPoloha.Riadok - 1; int zacStlp = aPoloha.Stlpec - 1; int konRiad = aPoloha.Riadok + paRozmerRiadkov; int konStlp = aPoloha.Stlpec + paRozmerStlpcov; Hra hra = Hra.DajInstanciu(); Policko[,] matica = hra.DajHernuPlochu().DajMaticu(); ZoskupenieStanic zosk = paStavana.Zoskupenie; for (int riadok = zacRiad; riadok <= konRiad; riadok++) { for (int stlpec = zacStlp; stlpec <= konStlp; stlpec++) { Policko aktualne = matica[riadok, stlpec]; if (aktualne.Vyroba != null) { if (aktualne.Vyroba.Zoskupenie == null) { aktualne.Vyroba.Zoskupenie = zosk; zosk.PridajVyrobu(aktualne.Vyroba); } } } } }
private void button2_Click(object sender, EventArgs e) { //k = new Komunikacija(); string nazivLinije = textBox1.Text; Stanica pocetna = (Stanica)comboBox1.SelectedItem; Stanica krajnja = (Stanica)comboBox2.SelectedItem; List <Stanica> medjustaniceParam = medjustanice.ToList(); if (proveri(pocetna, krajnja, medjustaniceParam)) { bool sacuvan = k.SacuvajLiniju(nazivLinije, pocetna, krajnja, medjustaniceParam); if (sacuvan) { MessageBox.Show("Linija sacuvana"); } else { MessageBox.Show("Linija nije sacuvana"); } } else { return; } }
public IHttpActionResult PutStanica(int id, Stanica stanica) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != stanica.Id) { return(BadRequest()); } db.Entry(stanica).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!StanicaExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
/// <summary> /// Vylo�enie 1 jednotky n�kladu /// </summary> /// <returns></returns> public bool Vyloz() { bool stav = false; Stanica navstivena = KonvertujMiestoNaStanicu(aCiele[aAktualnaPozicia]); if (navstivena == null) return false; navstivena.Zoskupenie.Uzamknute = false; if (aCestaDoDepa) { navstivena.PridajOdstavene(this); aCestaDoDepa = false; aTyp.Zastav(); aTyp.Skryte = true; aJeVPohybe = false; Zastav(); return false; } foreach (var item in aNaklad) { stav = navstivena.Zoskupenie.PrijmiJednotku(item); if (stav == true) { item.VydajOdnemu(navstivena); aNaklad.Remove(item); break; } } Console.WriteLine("vylozenie" + stav); return stav; }
internal bool SacuvajLiniju(string nazivLinije, Stanica pocetna, Stanica krajnja, List <Stanica> medjustaniceParam) { Linija linija = new Linija() { NazivLinije = nazivLinije, PocetnaStanica = pocetna, KrajnjaStanica = krajnja, Medjustanice = medjustaniceParam }; TransferKlasa transfer = new TransferKlasa(); transfer.operacija = Operacije.SacuvajLiniju; transfer.TransferObjekat = linija; formatter.Serialize(stream, transfer); transfer = (TransferKlasa)formatter.Deserialize(stream); if ((bool)transfer.Rezultat) { return(true); } else { return(false); } }
internal List <Stanica> VratiStanice() { List <Stanica> stanice = new List <Stanica>(); try { connection.Open(); command = connection.CreateCommand(); command.CommandText = "SELECT * FROM STANICA"; SqlDataReader reader = command.ExecuteReader(); while (reader.Read()) { Stanica s = new Stanica() { StanicaId = reader.GetInt32(0), NazivStanice = reader.GetString(1) }; stanice.Add(s); } reader.Close(); return(stanice); } finally { if (connection != null) { connection.Close(); } } }
internal double Vreme(Vozilo[] a) { double vreme = 0; double rastojanje = 0; string ln = ""; Vozilo v = null; Stanica t = pocetna; for (int i = 0; i < brVeza; i++) { if (ln != vz[i].Linija) { ln = vz[i].Linija; if (v != null) { vreme = vreme + rastojanje / v.Brzina; } for (int j = 0; j < a.Length; j++) { if (a[j].ImeLinije == vz[i].Linija) { v = a[j]; } } vreme += v.kolikoDoStanice(t); } rastojanje += vz[i].Udalj; t = vz[i].DrugaStanicaVeze(t); } if (v != null) { vreme = vreme + rastojanje / v.Brzina; } return(vreme); }
/// <summary> /// Vyplatenie odmeny Zastavka prepravu /// </summary> public void VydajOdnemu(Stanica paStanica) { Spolocnost spol = Hra.DajInstanciu().Spolocnost; aCiel = paStanica; int zaklPocetDni = aZdroj.Poloha.Vzdialenost(aCiel.Poloha)/5; int skutPocetDni = Hra.DajInstanciu().Den - aZaciatocnyDen; double koeficient = this.DajKoeficient(zaklPocetDni, skutPocetDni); spol.UpravFinancie((int)((double)koeficient * (int)Typ *zaklPocetDni)); }
internal Veza(Stanica poc, Stanica kraj, string imeln, double udalj) { stanica1 = poc; stanica2 = kraj; linija = imeln; udaljenost = udalj; poc.DodajVezu(this); kraj.DodajVezu(this); }
internal Put(Stanica c, Veza[] s, int br) { brVeza = br; vz = new Veza[br]; cilj = c; for (int i = 0; i < br; i++) { vz[i] = s[i]; } }
public Put2(Put2 put) { duzinaputa = put.duzinaputa; st = new Stanica[put.brst + 1000]; brst = put.brst; for (int i = 0; i < brst; i++) { st[i] = new Stanica(put.st[i]); } }
private void button1_Click(object sender, EventArgs e) { Stanica s = (Stanica)comboBox3.SelectedItem; if (!medjustanice.Contains(s)) { medjustanice.Add(s); } return; }
public IHttpActionResult GetStanica(int id) { Stanica stanica = db.Stanice.Find(id); if (stanica == null) { return(NotFound()); } return(Ok(stanica)); }
internal Stanica DrugaStanicaVeze(Stanica s) { if (s == stanica1) { return(stanica2); } else if (s == stanica2) { return(stanica1); } return(null); }
protected string IspisVeza() { string s = cilj.Ime; Stanica t = cilj; for (int i = brVeza - 1; i >= 0; i--) { s = vz[i].DrugaStanicaVeze(t).Ime + "-" + vz[i].Udalj + "-" + s; t = vz[i].DrugaStanicaVeze(t); } return(s); }
public IHttpActionResult PostStanica(Stanica stanica) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.Stanice.Add(stanica); db.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { id = stanica.Id }, stanica)); }
public IHttpActionResult AddStanica(StanicaBindingModel model) { List <Linija> linije = new List <Linija>(db.Linije.GetAll()); List <Linija> staniceLinije = new List <Linija>(); foreach (int id in model.Linije) { foreach (Linija lin in linije) { if (id == lin.Id) { staniceLinije.Add(lin); break; } } } Stanica stanica = new Stanica() { Naziv = model.Naziv, Adresa = model.Adresa, Position = model.Position, Linije = staniceLinije }; if (model.IdStanice != 0) { stanica.Id = model.IdStanice; try { db.Stanice.Update(stanica); db.Complete(); } catch (Exception e) { return(BadRequest(e.Message)); } } else { try { db.Stanice.Add(stanica); db.Complete(); } catch (Exception e) { return(BadRequest(e.Message)); } } return(Ok()); }
public IHttpActionResult DeleteStanica(int id) { Stanica stanica = db.Stanice.Find(id); if (stanica == null) { return(NotFound()); } db.Stanice.Remove(stanica); db.SaveChanges(); return(Ok(stanica)); }
/// <summary> /// Overenie okolia zoskupenia, rozhoduje иi pridaЭ stanicu uЮ ku existujъcemu zoskupenium /// alebo иi vytvori novй. /// </summary> /// <param name="paStavana">stavanб stanica</param> /// <param name="paRozmerRiadkov">rozmer</param> /// <param name="paRozmerStlpcov">rozmer</param> /// <returns>vэsledok</returns> private bool OverOkolieStaniceZoskupenia(Stanica paStavana, int paRozmerRiadkov, int paRozmerStlpcov) { int zacRiad = aPoloha.Riadok - 1; int zacStlp = aPoloha.Stlpec - 1; int konRiad = aPoloha.Riadok + paRozmerRiadkov; int konStlp = aPoloha.Stlpec + paRozmerStlpcov; Hra hra = Hra.DajInstanciu(); Policko[,] matica = hra.DajHernuPlochu().DajMaticu(); ZoskupenieStanic zosk = null; int pocetNajdenachZosk = 0; for (int riadok = zacRiad; riadok <= konRiad; riadok++) { for (int stlpec = zacStlp; stlpec <= konStlp; stlpec++) { Policko aktualne = matica[riadok, stlpec]; if(aktualne.Zastavane is Stanica) { if (zosk == null || !zosk.Equals((aktualne.Zastavane as Stanica).Zoskupenie)) { zosk = (aktualne.Zastavane as Stanica).Zoskupenie; pocetNajdenachZosk++; } } } } if (pocetNajdenachZosk == 0) { zosk = new ZoskupenieStanic(); paStavana.Zoskupenie = zosk; zosk.PridajStanicu(paStavana); hra.Spolocnost.PridajStanicu(zosk); OverOkolieStaniceVyroba(paStavana, paRozmerRiadkov, paRozmerStlpcov); return true; } else if (pocetNajdenachZosk == 1) { paStavana.Zoskupenie = zosk; zosk.PridajStanicu(paStavana); hra.Spolocnost.PridajStanicu(zosk); OverOkolieStaniceVyroba(paStavana, paRozmerRiadkov, paRozmerStlpcov); return true; } return false; }
/// <summary> /// Nalo�enie jednej jednotky n�kladu /// </summary> /// <returns></returns> public bool Naloz() { Stanica navstivena = KonvertujMiestoNaStanicu(aCiele[aAktualnaPozicia]); if (aNaklad.Count >= aTyp.Kapacita || navstivena == null) return false; PrepravJednotka pr = navstivena.Zoskupenie.VydajJednotku(aTyp.TypNakladu); if (pr != null) { Console.WriteLine("nalozenie" + pr.ToString()); pr.CasNalozenia = Hra.DajInstanciu().Den; pr.Zdroj = navstivena; aNaklad.Add(pr); return true; } return false; }
private void btnBrisiStanicu_Click(object sender, EventArgs e) { if (lvStanice.SelectedItems.Count == 0) { MessageBox.Show("Niste odabrali stanicu!"); return; } if ((lvStanice.SelectedItems[0].Tag as Stanica).SifraStanice == linija.Stanice[0].SifraStanice) { MessageBox.Show("Ne možete obrisati početnu stanicu, kreirajte novu liniju!"); return; } DialogResult dres = MessageBox.Show("Da li ste sigurni da želite izbrisati označenu stanicu iz linije (time brišete i sve cijene)?", "Brisati?", MessageBoxButtons.YesNo, MessageBoxIcon.Question); if (dres == DialogResult.Yes) { obrisanaStanica = true; Stanica oznacenaStanica = lvStanice.SelectedItems[0].Tag as Stanica; int redniBroj = linija.sadrziStanicu(oznacenaStanica); lvStanice.Items.Remove(lvStanice.SelectedItems[0]); dgvCijene.Rows.RemoveAt(redniBroj); dgvCijene.Columns.RemoveAt(redniBroj - 1); try { linija.Cijene = validirajUneseneCijene(); linija.Stanice.RemoveAt(redniBroj); linija.TrajanjeDoDolaska.RemoveAt(redniBroj); linija.TrajanjeDoPolaska.RemoveAt(redniBroj); } catch (Exception ee) { MessageBox.Show(ee.Message); return; } kl.updateujLiniju(linija); MessageBox.Show("Stanica uspješno izbrisana!"); popuniKomponente(); } //MessageBox.Show((lvStanice.SelectedItems[0].Tag as Stanica).Naziv); }
private bool proveri(Stanica pocetna, Stanica krajnja, List <Stanica> medjustanice) { if (pocetna.Equals(krajnja)) { return(false); } if (medjustanice.Count() == 0) { return(false); } if (medjustanice.Contains(pocetna) || medjustanice.Contains(krajnja)) { return(false); } return(true); }
/// <summary> /// Inicializácia premenných, naplnenie listu /// </summary> /// <param name="paStanica">Pre ktorú stanicu zobrazuje</param> public StanicaForm(Stanica paStanica) { InitializeComponent(); FormBorderStyle = FormBorderStyle.FixedSingle; MaximizeBox = false; MinimizeBox = false; aStanica = paStanica; aLabelTyp.Text = aStanica.ToString(); foreach (var item in aStanica.MozneStroje) { aComboBoxMozne.Items.Add(item.ToString()); } AktualizujOdstavaneDp(); aTimer1.Start(); }
private bool proveri(Linija linija) { List <Stanica> medjustaniceIzBaze = new List <Stanica>(); command = new SqlCommand("", connection, transaction); command.CommandText = $"SELECT ls.StanicaID, s.NazivStanice FROM LinijaStanica ls JOIN Linija l on(ls.LinijaID = l.LinijaID) JOIN Stanica s on(s.StanicaID = ls.StanicaID) WHERE l.NazivLinije = '{linija.NazivLinije}'"; SqlDataReader reader = command.ExecuteReader(); while (reader.Read()) { Stanica s = new Stanica() { StanicaId = reader.GetInt32(0), NazivStanice = reader.GetString(1) }; medjustaniceIzBaze.Add(s); } reader.Close(); if (medjustaniceIzBaze.Count == 0) { return(true); } if (medjustaniceIzBaze.Count != linija.Medjustanice.Count) { return(true); } foreach (Stanica medju in linija.Medjustanice) { bool ima = false; foreach (Stanica medjuBaza in medjustaniceIzBaze) { if (medju.StanicaId == medjuBaza.StanicaId) { ima = true; } } if (!ima) { return(true); } } return(false); }
internal double DuzinaDoCilja(double daljina, Stanica cilj, string linija, Veza td) { if (daljina <= 0 && this == cilj) { return(-daljina); } else { double duzina = 0; for (int i = 0; i < brveza; i++) { if (linija == veze[i].Linija && (veze[i] != td || this[linija] == 1)) { duzina += veze[i].DrugaStanicaVeze(this).DuzinaDoCilja(daljina - veze[i].Udalj, cilj, linija, veze[i]); } } return(duzina); } }
internal void Put(ref Veza[] vz, int n, ref Put[] pt, ref int brojac, Stanica cilj) { if (this == cilj) { pt[brojac] = new Put(cilj, vz, n); brojac++; return; } posecena = true; for (int i = 0; i < brveza; i++) { Stanica t = veze[i].DrugaStanicaVeze(this); if (!t.posecena) { vz[n] = veze[i]; t.Put(ref vz, n + 1, ref pt, ref brojac, cilj); } } posecena = false; }
public void AddListItemMethod1() { redniBroj = cbRedniBroj.SelectedIndex + 1; try { validirajUnosStanica(); } catch (Exception ee) { MessageBox.Show(ee.Message); return; } odabranaStanica = moguceStanice[cbStanice.SelectedIndex]; updateDgvCijene(redniBroj, trajanjeDoPolaska, trajanjeDoDolaska, odabranaStanica); dodanaStanica = true; btnDodajStanicu.Enabled = false; btnBrisiStanicu.Enabled = false; }