public List <IDomenskiObjekat> VratiSveSlabeObjekteSaKriterijumom(IDomenskiObjekat odo, string kriterijum, string sifraJakog) { try { Komanda.CommandText = String.Format(Konstante.SQL.SELECT_FROM, Konstante.SQL.ALL) + odo.VratiNazivTabele() + String.Format(Konstante.SQL.WHERE, String.Join(Konstante.SQL.AND, new String[] { odo.VratiKriterijumJakog(sifraJakog), kriterijum })); Komanda.CommandType = CommandType.Text; Citac = Komanda.ExecuteReader(); return(odo.VratiListu(ref Citac)); } catch (Exception ex) { Poruka = Konstante.DB.NAUSPESNO_PRETRAZIVANJE; return(null); } }
//Opste metode: SELECT, UPDATE, DELETE, INSERT internal Object PosaljiOperaciju(Operacija operacija, IDomenskiObjekat ido) { Zahtev z = new Zahtev { Operacija = operacija, Objekat = ido }; Komunikacija.Instance.PosaljiZahtev(z); Odgovor o = Komunikacija.Instance.ProcitajOdgovor(); if (o.Signal == Signal.Ok) { return(o.Objekat); } else { throw new Exception(o.Poruka); } }
public object Izvrsi(IDomenskiObjekat objekat) { try { Validacija(objekat); broker.OtvoriKonekciju(); broker.PokreniTransakciju(); object rezultat = IzvrsiKonkretnuOperaciju(objekat); broker.Commit(); return(rezultat); } catch (Exception e) { broker.Rollback(); Debug.WriteLine(e.Message); return(null); throw; } finally { broker.ZatvoriKonekciju(); } }
public void Izvrsi(IDomenskiObjekat objekat) { try { Validacija(objekat); broker.OtvoriKonekciju(); broker.PokreniTransakciju(); IzvrsiKonkretnuOperaciju(objekat); broker.Commit(); } catch (Exception e) { broker.Rollback(); Debug.WriteLine(">>> " + e.Message); throw; } finally { broker.ZatvoriKonekciju(); } }
protected override void IzvrsiKonkretnuOperaciju(IDomenskiObjekat objekat) { try { int updatedRows = broker.UpdateObject(objekat); if (updatedRows == 1) { ZapamceniKorisnik = (Korisnik)objekat; } } catch (Exception) { ZapamceniKorisnik = null; Korisnik tmp = (Korisnik)broker.SearchById(objekat); if (string.IsNullOrWhiteSpace(tmp.KorisnickoIme)) { broker.DeleteObject(tmp); } } }
public IDomenskiObjekat SearchSlozeniObjekat(string criteria, IDomenskiObjekat objekat) { SqlCommand command = new SqlCommand(); command.Transaction = transaction; command.Connection = connection; command.CommandText = $"select distinct {objekat.SearchColumns} from {objekat.Table} {objekat.Join} {criteria}"; SqlDataReader reader = command.ExecuteReader(); List <IDomenskiObjekat> result = objekat.GetReaderResult(reader); reader.Close(); if (result.Count != 1) { throw new Exception("Razlicito od jednog sloga!!!!"); } foreach (var item in objekat.WeakObjects) { IDomenskiObjekat weakObject = item[0]; List <IDomenskiObjekat> weakObjectList = SearchMod($"where {weakObject.DependentObjectID} = {objekat.ColumnId}", weakObject); result[0].FillWeakObjects(weakObjectList); } foreach (var item in objekat.AssociativeObjects) { IDomenskiObjekat associativeObject = item[0]; List <IDomenskiObjekat> associativeObjectList = SearchJoin(criteria, associativeObject); result[0].FillAssociativeObjects(associativeObjectList); } return(result[0]); }
public void IzvrsiSO(IDomenskiObjekat objekat) { try { broker.OtvoriKonekciju(); broker.ZapocniTransakciju(); IzvrsiOperaciju(objekat); broker.Commit(); } catch (Exception e) { Console.WriteLine(e.Message); broker.Rollback(); throw new Exception("Zabranjeno brisanje!"); } finally { broker.ZatvoriKonekciju(); } }
public int DajSifru(IDomenskiObjekat ido) { string upit = @"select MAX(" + ido.ImeKljuca() + ") from " + ido.NazivTabele() + ""; SqlCommand komanda = new SqlCommand(upit, konekcija, transakcija); try { try { int sifra = Convert.ToInt32(komanda.ExecuteScalar()); return(sifra + 1); } catch (Exception) { return(1); } } catch (Exception) { throw new Exception("Greška!"); } }
protected override object Izvrsi(IDomenskiObjekat odo) { Korisnik k = new Korisnik(); Narucilac n = odo as Narucilac; k.KorisnikID = n.KorisnikID; k.KorisnickoIme = n.KorisnickoIme; k.Lozinka = n.Lozinka; List <Korisnik> lista = BrokerBazePodataka.Broker.Instance().VratiSve(k).OfType <Korisnik>().ToList <Korisnik>(); lista.AddRange(BrokerBazePodataka.Broker.Instance().VratiSve(new Radnik()).OfType <Korisnik>().ToList <Korisnik>()); foreach (Korisnik kor in lista) { if (kor.KorisnickoIme == k.KorisnickoIme && kor.KorisnikID != k.KorisnikID) { System.Windows.Forms.MessageBox.Show("Postoji korisnik sa istim korisnickim imenom!"); return(null); } } Broker.Instance().Izmeni(k); return(Broker.Instance().Izmeni(n)); }
protected override void IzvrsiOperaciju(IDomenskiObjekat objekat) { int brojRedova = broker.Izmeni(objekat); if (brojRedova == 1) { if (objekat is Plivac) { Plivac = objekat as Plivac; } if (objekat is Takmicenje) { Takmicenje = objekat as Takmicenje; } Uspeh = true; } else { throw new System.Exception("Sistem ne moze da zapamti novi objekat"); } }
// public List <IDomenskiObjekat> VratiRazmenuRobe(IDomenskiObjekat objekat, string operacija) { SqlCommand command = new SqlCommand($"SELECT RazmenaRobe.*, Roba.* FROM {objekat.VratiImeKlase()} JOIN Roba ON RazmenaRobe.RazmenaID = Roba.RazmenaUlozeneRobe WHERE {objekat.VratiSlozenUslov(operacija)}", connection, transaction); SqlDataReader reader = command.ExecuteReader(); List <IDomenskiObjekat> rezultat = objekat.VratiListu(reader); reader.Close(); int broj = 1; foreach (IDomenskiObjekat rez in rezultat) { broj = 1; while (rez.VratiPoddomen(broj) != null) { rez.PostaviPoddomen(VratiJedan(rez.VratiPoddomen(broj)), broj); broj++; } } return(rezultat); }
// ...#... public List <IDomenskiObjekat> VratiPretragu(IDomenskiObjekat objekat, string tekst) { SqlCommand command = new SqlCommand($"SELECT * FROM {objekat.VratiImeKlase()} WHERE {objekat.VratiPretragu(tekst)}", connection, transaction); SqlDataReader reader = command.ExecuteReader(); List <IDomenskiObjekat> rezultat = objekat.VratiListu(reader); reader.Close(); int broj = 1; foreach (IDomenskiObjekat rez in rezultat) { broj = 1; while (rez.VratiPoddomen(broj) != null) { rez.PostaviPoddomen(VratiJedan(rez.VratiPoddomen(broj)), broj); broj++; } } return(rezultat); }
public Object IzvrsiSO(IDomenskiObjekat odo) { Object rezultat = null; Broker.Instance().OpenConnection(); Broker.Instance().BeginTransaction(); try { rezultat = Izvrsi(odo); Broker.Instance().Commit(); } catch (Exception) { //throw ex; Broker.Instance().Rollback(); } finally { Broker.Instance().CloseConnection(); } return(rezultat); }
public int VratiNovId(IDomenskiObjekat objekat) { try { string kurs = ConfigurationManager.AppSettings["srednji_kurs_nbs"]; double k = Double.Parse(kurs); SqlCommand command = new SqlCommand(); command.Connection = connection; command.CommandText = $"SELECT MAX({objekat.ColumnId}) FROM {objekat.Table}"; object rez = command.ExecuteScalar(); if (rez is DBNull) { return(1); } int maxid = (int)rez; return(maxid + 1); } finally { connection.Close(); } }
public IDomenskiObjekat SearchById(IDomenskiObjekat objekat) { SqlCommand command = new SqlCommand(); command.Transaction = transaction; command.Connection = connection; command.CommandText = $"select * from {objekat.Table} WHERE {objekat.SearchById()}"; SqlDataReader reader = command.ExecuteReader(); List <IDomenskiObjekat> result = objekat.GetReaderResult(reader); if (result.Count > 1) { throw new Exception("Object is not unique"); } if (result.Count == 0) { return(null); } reader.Close(); return(result[0]); }
protected override void IzvrsiOperaciju(IDomenskiObjekat objekat) { object rezultat = broker.VratiNajveciID(objekat); if (rezultat is DBNull) { throw new Exception($"{objekat.NazivTabele} ne postoji!"); } int noviID = (int)rezultat + 1; objekat.PostaviPrimarniKljuc(noviID); int brojRedova = broker.Kreiraj(objekat); if (brojRedova == 1) { Plivac = objekat as Plivac; } else { Plivac = null; throw new System.Exception("Sistem ne moze da zapamti novog plivaca"); } }
protected override object IzvrsiKonkretnuOperaciju(IDomenskiObjekat objekat) { return(broker.Izmeni(objekat)); }
protected override void IzvrsiKonkretnuOperaciju(IDomenskiObjekat objekat) { Proizvodjaci = broker.VratiSve(objekat).Cast <Proizvodjac>().ToList(); }
protected override void IzvrsiKonkretnuOperaciju(IDomenskiObjekat odo) { Mesto o = (Mesto)odo; MestaList = broker.VratiSve(o).OfType <Mesto>().ToList(); }
public static object PrikaziNarudzbenicu(IDomenskiObjekat domenskiObjekat) { OpstaSO so = new PrikaziNarudzbenicu(); return(so.IzvrsiSO(domenskiObjekat)); }
public static object ObrisiProizvod(IDomenskiObjekat domenskiObjekat) { OpstaSO so = new ObrisiProizvod(); return(so.IzvrsiSO(domenskiObjekat)); }
public static object PretraziProizvod(IDomenskiObjekat domenskiObjekat) { OpstaSO so = new PretraziProizvode(); return(so.IzvrsiSO(domenskiObjekat)); }
public static object PretraziNarucioce(IDomenskiObjekat odo) { OpstaSO so = new PretraziNarucioce(); return(so.IzvrsiSO(odo)); }
public static object ZapamtiNarudzbenicu(IDomenskiObjekat odo) { OpstaSO so = new ZapamtiNarudzbenicu(); return(so.IzvrsiSO(odo)); }
protected override void Validacija(IDomenskiObjekat odo) { throw new System.NotImplementedException(); }
protected override void IzvrsiKonkretnuOperaciju(IDomenskiObjekat objekat) { Korisnici = broker.VratiSve(objekat).Cast <Korisnik>().ToList(); }
protected override void IzvrsiKonkretnuOperaciju(IDomenskiObjekat odo) { throw new System.NotImplementedException(); }
public static object KreirajNarucioca(IDomenskiObjekat odo) { OpstaSO so = new KreirajNarucioca(); return(so.IzvrsiSO(odo)); }
protected override object Izvrsi(IDomenskiObjekat odo) { return(Broker.Instance().VratiSveZaUslov(odo).OfType <Narucilac>().ToList <Narucilac>()); }
public static object ZapamtiProizvod(IDomenskiObjekat odo) { OpstaSO so = new ZapamtiProizvod(); return(so.IzvrsiSO(odo)); }