public bool Isplata(string korIme, double novac) { IIdentity id = Thread.CurrentPrincipal.Identity; WindowsIdentity wID = id as WindowsIdentity; CustomPrincipal principal = new CustomPrincipal(wID); if (!principal.IsInRole("Korisnik")) { MyAuditBehavior.LogNeuspesnaAutorizacija(); Console.WriteLine("Nemate permisiju..\n"); return(false); } MyAuditBehavior.LogUspesnaAutorizacija(); if (!MojaBaza.korisnici.ContainsKey(korIme)) { Console.WriteLine("Ne postoji korisnik na ciji racun radnik treba da isplati pare...\n"); MyAuditBehavior.LogNeuspesnaTransakcija(); return(false); } else { if (MojaBaza.korisnici[korIme].StanjeRacuna >= novac) { MojaBaza.korisnici[korIme].StanjeRacuna -= novac; MojaBaza.korisnici[korIme].PrethodneTransakcije.Add(MojaBaza.korisnici[korIme].BrTr, novac); MojaBaza.korisnici[korIme].BrTr++; MojaBaza.korisnici[korIme].Isplate += novac; Console.WriteLine("Stanje na racunu korisnika " + MojaBaza.korisnici[korIme].KorisnickoIme + " nakon isplate je: " + MojaBaza.korisnici[korIme].StanjeRacuna); MyAuditBehavior.LogUspesnaTransakcija(); return(true); } else { Console.WriteLine("Korisnik " + korIme + " nema dovoljno novca za isplatu.\n"); MyAuditBehavior.LogNeuspesnaTransakcija(); return(false); } } }
public bool KorisnikTraziDozvoljeniMinus(string korIme) { IIdentity id = Thread.CurrentPrincipal.Identity; WindowsIdentity wID = id as WindowsIdentity; CustomPrincipal principal = new CustomPrincipal(wID); if (!principal.IsInRole("Radnik")) { MyAuditBehavior.LogNeuspesnaAutorizacija(); Console.WriteLine("Nemate permisiju..\n"); return(false); } MyAuditBehavior.LogUspesnaAutorizacija(); Console.WriteLine("Korisnik " + MojaBaza.korisnici[korIme].KorisnickoIme + " trazi dozvoljeni minus..."); //dodajemo u listu zahteva za dozvoljenim minusom MojaBaza.listaZahtevaZaDozvoljenimMinusom.Add(korIme); foreach (string var in MojaBaza.listaZahtevaZaDozvoljenimMinusom) { Console.WriteLine("U listi se nalazi zahtev korisnika sa korisnickim imenom: " + var); } if (MojaBaza.korisnici[korIme].Isplate >= 100000) { Console.WriteLine("Radnik je odobrio zahtev za dozvoljeni minus korisniku sa korisnickim imenom " + korIme); MojaBaza.korisnici[korIme].DozvoljeniMinus = 0.1 * MojaBaza.korisnici[korIme].Isplate; Console.WriteLine("Stanje korisnika " + MojaBaza.korisnici[korIme].KorisnickoIme + " nakon ispate je: " + MojaBaza.korisnici[korIme].DozvoljeniMinus.ToString()); return(true); } else { Console.WriteLine("Radnik je odobrio zahtev za dozvoljeni minus korisniku sa korisnickim imenom " + korIme); //uklanjamo iz reda zahteva MojaBaza.listaZahtevaZaDozvoljenimMinusom.Remove(korIme); return(false); } }
public Entity Read(int id) { CustomPrincipal principal = Thread.CurrentPrincipal as CustomPrincipal; var permission = Permissions.Read.ToString().ToLower(); if (principal.IsInRole(permission)) { Console.WriteLine("Read() successfully executed."); Entity e = DataBase.ReadFromBase(id); return(e); } else { Console.WriteLine("Read() unsuccessfully executed."); Entity e = null; return(e); } }
public bool MenjajTransakcijuKorisnika(string korIme, double pare, int brojTransakcije) { IIdentity id = Thread.CurrentPrincipal.Identity; WindowsIdentity wID = id as WindowsIdentity; CustomPrincipal principal = new CustomPrincipal(wID); if (!principal.IsInRole("Radnik")) { MyAuditBehavior.LogNeuspesnaAutorizacija(); Console.WriteLine("Nemate permisiju..\n"); return(false); } MyAuditBehavior.LogUspesnaAutorizacija(); if (!MojaBaza.korisnici.ContainsKey(korIme)) { Console.WriteLine("Ne postoji korisnik sa zadatim korisnickim imenom " + MojaBaza.korisnici[korIme].KorisnickoIme + "\n"); return(false); } else { if (MojaBaza.korisnici[korIme].PrethodneTransakcije.Keys.Contains(brojTransakcije)) { MojaBaza.korisnici[korIme].PrethodneTransakcije[brojTransakcije] = pare; Console.WriteLine("Transakcija korisnika " + MojaBaza.korisnici[korIme].KorisnickoIme + " je uspesno promenjena"); return(true); } else { Console.WriteLine("U listi korisnickih transakcija ne postoji transakcija sa tim brojem...\n"); return(false); } } }
public void MenjajParametreProvizijama(double minimalnaPotrosnja, double sumaKojuDobijaKorisnikZaDozvMinus, double provizijaZaIznoseDo3000, double provizijaZaIsnosePreko3000, double provizijaZaMomTransfer, int skalabilneSekunde, double provizijaZaMesecnoOdrzavanje, int brojac) { IIdentity id = Thread.CurrentPrincipal.Identity; WindowsIdentity wID = id as WindowsIdentity; CustomPrincipal principal = new CustomPrincipal(wID); if (!principal.IsInRole("Admiri")) { MyAuditBehavior.LogNeuspesnaAutorizacija(); Console.WriteLine("Nemate permisiju..\n"); return; } MyAuditBehavior.LogUspesnaAutorizacija(); File.Delete("Provizije.txt"); string textZaUpis = minimalnaPotrosnja + ";" + sumaKojuDobijaKorisnikZaDozvMinus + ";" + provizijaZaIznoseDo3000 + ";" + provizijaZaIsnosePreko3000 + ";" + provizijaZaMomTransfer + ";" + skalabilneSekunde + ";" + provizijaZaMesecnoOdrzavanje + ";" + brojac; File.WriteAllText("Provizije.txt", textZaUpis); }
public bool Uplata(string korIme, string korImeUplatioc, double novac, int izbor) { //string temp = ""; IIdentity id = Thread.CurrentPrincipal.Identity; WindowsIdentity wID = id as WindowsIdentity; CustomPrincipal principal = new CustomPrincipal(wID); if (!principal.IsInRole("Korisnik")) { MyAuditBehavior.LogNeuspesnaAutorizacija(); Console.WriteLine("Nemate permisiju..\n"); return(false); } MyAuditBehavior.LogUspesnaAutorizacija(); if (!MojaBaza.korisnici.ContainsKey(korIme)) { Console.WriteLine("Ne postoji korisnik na ciji racun radnik treba da uplati pare...\n"); MyAuditBehavior.LogNeuspesnaTransakcija(); return(false); } else { /* * MojaBaza.korisnici[korIme].StanjeRacuna += novac; * MojaBaza.korisnici[korIme].PrethodneTransakcije.Add(MojaBaza.korisnici[korIme].BrTr++, novac); * Console.WriteLine("Stanje na racunu korisnika nakon uplate je: " + MojaBaza.korisnici[korIme].StanjeRacuna); * return true;*/ switch (izbor) { case 1: MojaBaza.korisnici[korIme].StanjeRacuna += novac; MojaBaza.korisnici[korIme].PrethodneTransakcije.Add(MojaBaza.korisnici[korIme].BrTr, novac); MojaBaza.korisnici[korIme].BrTr++; Console.WriteLine("Stanje na racunu korisnika " + MojaBaza.korisnici[korIme].KorisnickoIme + " nakon uplate je: " + MojaBaza.korisnici[korIme].StanjeRacuna); MyAuditBehavior.LogUspesnaTransakcija(); break; case 2: if (MojaBaza.korisnici[korImeUplatioc].StanjeRacuna > 100) { MojaBaza.korisnici[korIme].StanjeRacuna += novac; MojaBaza.korisnici[korImeUplatioc].StanjeRacuna -= 100; MojaBaza.korisnici[korIme].PrethodneTransakcije.Add(MojaBaza.korisnici[korIme].BrTr, novac); MojaBaza.korisnici[korIme].BrTr++; MyAuditBehavior.LogUspesnaTransakcija(); Console.WriteLine("Stanje na racunu korisnika " + MojaBaza.korisnici[korIme].KorisnickoIme + " nakon uplate je: " + MojaBaza.korisnici[korIme].StanjeRacuna); } else { Console.WriteLine("Nemoguce uplatiti novac"); MyAuditBehavior.LogNeuspesnaTransakcija(); return(false); } break; case 3: if (MojaBaza.korisnici[korImeUplatioc].StanjeRacuna > 0.3 * novac) { MojaBaza.korisnici[korIme].StanjeRacuna += novac; MojaBaza.korisnici[korImeUplatioc].StanjeRacuna -= 0.3 * novac; // Console.WriteLine("Stanje na racunu korisnika nakon uplate je: " + MojaBaza.korisnici[korIme].StanjeRacuna); MojaBaza.korisnici[korIme].PrethodneTransakcije.Add(MojaBaza.korisnici[korIme].BrTr, novac); MojaBaza.korisnici[korIme].BrTr++; Console.WriteLine("Stanje na racunu korisnika " + MojaBaza.korisnici[korIme].KorisnickoIme + " nakon uplate je: " + MojaBaza.korisnici[korIme].StanjeRacuna); MyAuditBehavior.LogUspesnaTransakcija(); } else { Console.WriteLine("Nemoguce uplatiti novac"); MyAuditBehavior.LogNeuspesnaTransakcija(); return(false); } break; case 4: if (MojaBaza.korisnici[korImeUplatioc].StanjeRacuna > 250) { MojaBaza.korisnici[korIme].StanjeRacuna += novac; MojaBaza.korisnici[korImeUplatioc].StanjeRacuna -= 250; MojaBaza.korisnici[korIme].PrethodneTransakcije.Add(MojaBaza.korisnici[korIme].BrTr, novac); MojaBaza.korisnici[korIme].BrTr++; Console.WriteLine("Stanje na racunu korisnika " + MojaBaza.korisnici[korIme].KorisnickoIme + " nakon uplate je: " + MojaBaza.korisnici[korIme].StanjeRacuna); MyAuditBehavior.LogUspesnaTransakcija(); } else { Console.WriteLine("Nemoguce uplatiti novac"); MyAuditBehavior.LogNeuspesnaTransakcija(); return(false); } break; } return(true); } }