public void insertNewRole(Rola r) { string query = "INSERT INTO T_ROLE(c_rola, c_grupy_ktorych_dotyczy) VALUES ('" + r.Nazwa + "', " + r.Grupy_ktorych_dotyczy + ")"; executeQuery(query); // pobierz_dane :d }
public void WczytajRole() { conn.Open(); var zapytanie = "Select * from Role"; OleDbCommand komenda = new OleDbCommand(zapytanie, conn); OleDbDataReader reader = komenda.ExecuteReader(); role.Clear(); while (reader.Read()) { Rola rola = new Rola( reader.GetString(0), // rola reader.GetBoolean(1), // adresy odczyt reader.GetBoolean(2), // adresy zapis reader.GetBoolean(3), // konta odczyt reader.GetBoolean(4), // konta zapis reader.GetBoolean(5), // oceny odczyt reader.GetBoolean(6), // oceny zapis reader.GetBoolean(7), // produkty odczyt reader.GetBoolean(8), // produkty zapis reader.GetBoolean(9), // role odczyt reader.GetBoolean(10), // role zapis reader.GetBoolean(11), // transakcje odczyt reader.GetBoolean(12), // transakcje zapis reader.GetBoolean(13), // zamowienia odczyt reader.GetBoolean(14) // zamowienia zapis ); role.Add(rola); } conn.Close(); }
public async Task <IActionResult> PutRola(int id, Rola rola) { if (id != rola.RolaId) { return(BadRequest()); } _unitOfWork.Role.Update(rola); try { await _unitOfWork.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!RolaExists(id)) { return(NotFound()); } else { throw; } } return(CreatedAtAction("GetRola", new { id = rola.RolaId }, rola)); }
private void RolesDeselect_Click(object sender, RoutedEventArgs e) { if (SelectedRolesListView.SelectedIndex != -1) { Rola o = (Rola)SelectedRolesListView.SelectedItem; WybraneRole.Remove(o); PozostaleRole.Add(o); } }
private void LogIn_Click(object sender, RoutedEventArgs e) { string Login = LoginBox.Text.Trim(); string Password = PobierzHaslo(); string Rola = RoleBox.SelectedItem.ToString().ToLower(); if (CzyIstniejeUzytkownikODanymLoginie(Login) && CzyHasloJestPrawidlowe(Login, Password)) { Uzytkownik uzytkownik = Baza.pobierzUzytkownikow(" WHERE C_LOGIN = '******'").First(); if ((uzytkownik.Grupa >> (RoleBox.SelectedIndex)) % 2 == 1) { zalogowanyUzytkownik = uzytkownik; aktualnaRola = Baza.pobierzRole(" WHERE C_ROLA = '" + Rola + "'").First(); if (Baza.createSession(zalogowanyUzytkownik.IdUzytkownika, aktualnaRola.Id)) { LoginGrid.Visibility = System.Windows.Visibility.Hidden; UserZalogowanyGrid.Visibility = System.Windows.Visibility.Visible; EdycjaRolColumn2Grid.Visibility = System.Windows.Visibility.Hidden; UstawStatus(Login, Rola); if (Rola == "administrator") { Operacje = Baza.pobierzOperacje(); Uzytkownicy = new ObservableCollection <Uzytkownik>(Baza.pobierzUzytkownikow()); UsersListView.ItemsSource = Uzytkownicy; UserGrid.Visibility = System.Windows.Visibility.Hidden; AdministratorGrid.Visibility = System.Windows.Visibility.Visible; EdycjaRolColumn2Grid.Visibility = System.Windows.Visibility.Hidden; TabeleListView.ItemsSource = PobierzWszystkieTabele(); } else { Operacje = Baza.pobierzOperacje(" join t_przywileje on c_Fk_id_operacji = c_id_operacji where c_Fk_id_roli = " + aktualnaRola.Id); StudiaListView.ItemsSource = WybierzDostepneTabele(); UserGrid.Visibility = System.Windows.Visibility.Visible; AdministratorGrid.Visibility = System.Windows.Visibility.Hidden; } } else { MessageBox.Show("Istnieje aktywna sesja dla tego użytkownika."); } } else { MessageBox.Show("Użytkownik nie posiada wybranej roli"); } } else { MessageBox.Show("Błędne hasło"); } }
private void Init() { if (Session["baza"] == null) { Baza = new DataBase("user123", "haslo123", "localhost", "szkola"); Session["baza"] = Baza; } else { Baza = (DataBase)Session["baza"]; } Role = new ObservableCollection <Rola>(Baza.pobierzRole()); if (Session["Uzytkownik"] != null) { zalogowanyUzytkownik = (Uzytkownik)Session["Uzytkownik"]; zalogowanyUzytkownik = Baza.pobierzUzytkownikow(" where c_id_uzytkownika = " + zalogowanyUzytkownik.IdUzytkownika).First(); Session["Uzytkownik"] = zalogowanyUzytkownik; ViewBag.Uzytkownik = zalogowanyUzytkownik; } if (Session["AktualnaRola"] != null) { aktualnaRola = (Rola)Session["AktualnaRola"]; ViewBag.Rola = aktualnaRola; } if (Session["Operacje"] != null) { if (aktualnaRola.Nazwa.ToLower() == "administrator") { Operacje = Baza.pobierzOperacje(); } else { Operacje = Baza.pobierzOperacje(" join t_przywileje on c_Fk_id_operacji = c_id_operacji where c_Fk_id_roli = " + aktualnaRola.Id); } Session["Operacje"] = Operacje; ViewBag.Operacje = Operacje; } if (Session["Uzytkownicy"] != null) { Uzytkownicy = new ObservableCollection <Uzytkownik>(Baza.pobierzUzytkownikow()); Session["Uzytkownicy"] = Uzytkownicy; } if (Session["Blad"] != null) { ViewBag.Blad = (string)Session["Blad"]; } if (Session["DostepneTabele"] != null) { Session["DostepneTabele"] = WybierzDostepneTabele(); ViewBag.DostepneTabele = WybierzDostepneTabele(); } }
public void ModyfikujRole(string nazwaRoli, Rola rola, List <Operacja> listaOperacji) { string query = "UPDATE T_ROLE Set c_rola='" + nazwaRoli + "' Where c_rola='" + rola.Nazwa + "';"; executeQuery(query); DeleteAllPrivilegesWithThisRole(rola); foreach (Operacja o in listaOperacji) { var przywilej = new Przywilej(rola.Id, o.IdOperacji, true); insertNewPrivilege(przywilej); } }
public async Task <ActionResult <Rola> > PostRola(Rola rola) { if (RolaExists(rola.RolaId)) { return(BadRequest()); } else { _unitOfWork.Role.Add(rola); await _unitOfWork.SaveChangesAsync(); return(CreatedAtAction("GetRola", new { id = rola.RolaId }, rola)); } }
public static int NumerRoli(Rola rola) { switch (rola) { case Rola.Guru: return 0; case Rola.Admin: return 1; case Rola.Janusz: return 2; default: return 10; } }
public static string NazwaRoli(Rola rola) { switch (rola) { case Rola.Guru: return "Guru"; case Rola.Admin: return "Administrator"; case Rola.Janusz: return "Dodawacz"; default: return "Gość"; } }
private void RolesListView_SelectionChanged(object sender, SelectionChangedEventArgs e) { if (RolesListView.SelectedItem != null) { Rola wybranaRola = (Rola)RolesListView.SelectedItem; WybraneOperacje.Clear(); WybraneOperacje = new ObservableCollection <Operacja>(Baza.pobierzOperacjeDlaDanejRoli(wybranaRola.Id)); SelectedOperationsListView.ItemsSource = WybraneOperacje; PozostaleOperacje.Clear(); foreach (Operacja o in Operacje) { if (!WybraneOperacje.Contains(o)) { PozostaleOperacje.Add(o); } } RoleNameTextBox.Text = wybranaRola.Nazwa; SaveRoleButton.Content = "Zapisz zmiany"; EdycjaRolColumn2Grid.Visibility = System.Windows.Visibility.Visible; CheckSelectedTableAndGetOperations(); } }
public void dodajNowaRole(string nazwaRoli, List <Operacja> listaOperacji) { var role = pobierzRole(" WHERE c_rola = '" + nazwaRoli + "'"); if (role.Count > 0 || string.IsNullOrEmpty(nazwaRoli)) { return; } Rola rola = new Rola(-1, nazwaRoli, true, 0); insertNewRole(rola); var stworzonaRola = pobierzRole(" WHERE c_rola = '" + nazwaRoli + "'"); if (stworzonaRola.Count > 0) { foreach (Operacja o in listaOperacji) { var przywilej = new Przywilej(stworzonaRola[0].Id, o.IdOperacji, true); insertNewPrivilege(przywilej); } } }
public ActionResult WeryfikujLogowanie(string name, string par1 = "brak", string par2 = "brak", string par3 = "brak") { Init(); string login = "", haslo = "", rola = ""; if (zalogowanyUzytkownik == null) { if (!string.IsNullOrEmpty(Request["login"])) { login = Request["login"].Trim(); } if (!string.IsNullOrEmpty(Request["haslo"])) { haslo = PobierzHashHasla(Request["haslo"]); } } else { login = zalogowanyUzytkownik.NazwaUzytkownika; haslo = zalogowanyUzytkownik.Haslo; } if (!string.IsNullOrEmpty(Request["rola"])) { rola = Request["rola"].ToLower(); } if (!string.IsNullOrEmpty(login) && !string.IsNullOrEmpty(haslo) && CzyIstniejeUzytkownikODanymLoginie(login) && CzyHasloJestPrawidlowe(login, haslo)) { Uzytkownik uzytkownik = Baza.pobierzUzytkownikow(" WHERE C_LOGIN = '******'").First(); Session["Uzytkownik"] = uzytkownik; if (!string.IsNullOrEmpty(rola) && (uzytkownik.Grupa >> (Role.IndexOf(Role.First((r) => r.Nazwa.ToLower().Equals(rola))))) % 2 == 1) { zalogowanyUzytkownik = uzytkownik; aktualnaRola = Baza.pobierzRole(" WHERE C_ROLA = '" + rola + "'").First(); if (Baza.createSession(zalogowanyUzytkownik.IdUzytkownika, aktualnaRola.Id)) { Session["AktualnaRola"] = aktualnaRola; if (rola == "administrator") { Operacje = Baza.pobierzOperacje(); Session["Operacje"] = Operacje; Uzytkownicy = new ObservableCollection <Uzytkownik>(Baza.pobierzUzytkownikow()); Session["Uzytkownicy"] = Uzytkownicy; } else { Operacje = Baza.pobierzOperacje(" join t_przywileje on c_Fk_id_operacji = c_id_operacji where c_Fk_id_roli = " + aktualnaRola.Id); Session["Operacje"] = Operacje; Session["DostepneTabele"] = WybierzDostepneTabele(); } ViewBag.Blad = null; Session["Blad"] = (string)ViewBag.Blad; } else { ViewBag.Blad = "Istnieje aktywna sesja dla tego użytkownika."; Session["Blad"] = (string)ViewBag.Blad; } } else { if (!string.IsNullOrEmpty(rola)) { ViewBag.Blad = "Użytkownik nie posiada wybranej roli"; Session["Blad"] = (string)ViewBag.Blad; } } } else { ViewBag.Blad = "Błędne hasło lub login"; Session["Blad"] = (string)ViewBag.Blad; } return(View()); }
private void DeleteAllPrivilegesWithThisRole(Rola rola) { string query = "DELETE FROM t_Przywileje WHERE c_Fk_id_roli='" + rola.Id + "';"; executeQuery(query); // pobierz_dane :d }
private void AddEventToList(List <Event> eventList, Rola rola) { foreach (Event e in eventList) { RowDefinition newRow = new RowDefinition(); newRow.Height = new GridLength(100); YourEventsGrid.RowDefinitions.Add(newRow); Grid eventGrid = new Grid(); eventGrid.Effect = new DropShadowEffect { Color = new Color { A = 0, R = 0, G = 0, B = 0 }, Direction = 330, ShadowDepth = 2, Opacity = 0.5, BlurRadius = 4 }; eventGrid.Margin = new Thickness(10); Color color = (Color)ColorConverter.ConvertFromString("#FFF58E78"); eventGrid.Background = new SolidColorBrush(color); eventGrid.MouseDown += CheckEvent; eventGrid.MouseEnter += OverEvent; eventGrid.MouseLeave += OutEvent; RowDefinition newRow2 = new RowDefinition(); newRow2.Height = new GridLength(1, GridUnitType.Star); eventGrid.RowDefinitions.Add(newRow2); RowDefinition newRow3 = new RowDefinition(); newRow3.Height = new GridLength(2, GridUnitType.Star); eventGrid.RowDefinitions.Add(newRow3); ColumnDefinition newColumn = new ColumnDefinition(); newColumn.Width = new GridLength(4, GridUnitType.Star); eventGrid.ColumnDefinitions.Add(newColumn); ColumnDefinition newColumn2 = new ColumnDefinition(); newColumn2.Width = new GridLength(1, GridUnitType.Star); eventGrid.ColumnDefinitions.Add(newColumn2); Label valueLabel = new Label(); valueLabel.Content = e.IdEvent; valueLabel.Visibility = Visibility.Hidden; eventGrid.Children.Add(valueLabel); TextBlock eventName = new TextBlock(); eventName.Text = e.NazwaEventu; eventName.Foreground = new SolidColorBrush(Colors.White); eventName.VerticalAlignment = VerticalAlignment.Center; eventName.FontSize = 30; eventName.Margin = new Thickness(10, 0, 10, 0); Grid.SetRow(eventName, 1); Grid.SetColumn(eventName, 0); eventGrid.Children.Add(eventName); TextBlock role = new TextBlock(); role.Text = rola.ToString(); role.Foreground = new SolidColorBrush(Colors.White); role.VerticalAlignment = VerticalAlignment.Center; role.FontSize = 15; role.Margin = new Thickness(10, 0, 10, 0); Grid.SetRow(role, 0); Grid.SetColumn(role, 0); eventGrid.Children.Add(role); Grid dataGrid = new Grid(); dataGrid.Margin = new Thickness(10, 0, 10, 0); RowDefinition newRow4 = new RowDefinition(); newRow4.Height = new GridLength(1, GridUnitType.Star); dataGrid.RowDefinitions.Add(newRow4); RowDefinition newRow5 = new RowDefinition(); newRow5.Height = new GridLength(1, GridUnitType.Star); dataGrid.RowDefinitions.Add(newRow5); Grid.SetRowSpan(dataGrid, 2); Grid.SetColumn(dataGrid, 1); eventGrid.Children.Add(dataGrid); TextBlock start = new TextBlock(); string text = e.DataRozpoczecia.ToString(); text = text.Remove(text.Length - 9); start.Text = text; start.Foreground = new SolidColorBrush(Colors.White); start.VerticalAlignment = VerticalAlignment.Center; start.FontSize = 15; start.Margin = new Thickness(10, 0, 10, 0); start.HorizontalAlignment = HorizontalAlignment.Center; Grid.SetRow(start, 0); dataGrid.Children.Add(start); TextBlock end = new TextBlock(); text = e.DataZakonczenia.ToString(); text = text.Remove(text.Length - 9); end.Text = text; end.Foreground = new SolidColorBrush(Colors.White); end.VerticalAlignment = VerticalAlignment.Center; end.FontSize = 15; end.Margin = new Thickness(10, 0, 10, 0); end.HorizontalAlignment = HorizontalAlignment.Center; Grid.SetRow(end, 1); dataGrid.Children.Add(end); Grid.SetRow(eventGrid, count++); YourEventsGrid.Children.Add(eventGrid); } }
public HttpResponseMessage Post(LogInZapytanie dane) { HttpResponseMessage odpowiedz; odpowiedz = Request.CreateResponse(HttpStatusCode.OK); using (DB baza = new DB()) { List <Uzytkownik> uzytkownicyWszystko = baza.Uzytkownicy.ToList(); //3 List <Rola> roleWszystko = baza.Rolee.ToList(); List <Uprawnienie> uprawnieniaWszystko = baza.Uprawnienia.ToList(); if (uzytkownicyWszystko.Any(u => u.Login == dane.Login && u.Haslo == dane.Haslo)) // Uzytkownik.sha256(dane.Haslo))) { Uzytkownik uzytkownik = uzytkownicyWszystko.First(u => u.Login == dane.Login); IEnumerable <Rola> uzytkownik_role = roleWszystko.Where(r => uzytkownik.Uzytkownik_Rola.Select(ur => ur.ID_Roli).Contains(r.ID_Roli)); List <Sesja> sesjeUzytkownika = baza.Sesje.Where(s => s.ID_Uzytkownika == uzytkownik.ID_Uzytkownika).ToList(); // wszystkie sesje uzytkownika if (!dane.Rola.HasValue) //logowanie uzytkownika, bez podania roli (pierwszy raz) { if (sesjeUzytkownika.Count > 0) //jezeli uzytkownik kiedykolwiek mial jakakolwiek sesje { for (int i = 0; i < sesjeUzytkownika.Count; i++) { if (konwertujNaStempel(DateTime.Now) < sesjeUzytkownika[i].Data_waznosci) { //jezeli jakas sesja nadal trwa, to zwroc tylko role ktora aktualnie (w tej sesji) pelni uzytkownik - na zadna inna nie moze sie zalogowac Rola rola = uzytkownik_role.FirstOrDefault(ur => ur.ID_Roli == sesjeUzytkownika[i].ID_Roli); List <Rola> wynik = new List <Rola>(); wynik.Add(new Rola { ID_Roli = rola.ID_Roli, Nazwa = rola.Nazwa }); odpowiedz = Request.CreateResponse(HttpStatusCode.OK, wynik); break; } //sesja byla, ale juz nie trwa (minal okres waznosci) - zwroc wszystkie role danego uzytkownika if (i == sesjeUzytkownika.Count - 1) { odpowiedz = Request.CreateResponse(HttpStatusCode.OK, uzytkownik_role); } } } else //uzytkownik nie mial nigdy zadnej sesji wiec zwroc wszystkie jego role { odpowiedz = Request.CreateResponse(HttpStatusCode.OK, uzytkownik_role); } } else { Rola tempRola = uzytkownik_role.FirstOrDefault(r => r.ID_Roli == dane.Rola.Value);//8 Rola rola = new Rola { ID_Roli = tempRola.ID_Roli, Nazwa = tempRola.Nazwa }; IEnumerable <Uprawnienie> uprawnienia_rol = uprawnieniaWszystko.Where(upr => tempRola.Uprawnienie_Rola.Select(uprrola => uprrola.ID_Uprawnienia).Contains(upr.ID_Uprawnienia)); //4 List <Uprawnienie> uprawnienia = new List <Uprawnienie>(); foreach (Uprawnienie u in uprawnienia_rol) { uprawnienia.Add(new Uprawnienie { ID_Uprawnienia = u.ID_Uprawnienia, Instrukcja = u.Instrukcja, Nazwa_tabeli = u.Nazwa_tabeli }); //5 } LogInOdpowiedz zawartoscOdpowiedzi = new LogInOdpowiedz { Nazwa = uzytkownik.Nazwa, ID_Uzytkownika = uzytkownik.ID_Uzytkownika, Rola = rola, Uprawnienia = uprawnienia, Data_waznosci = konwertujNaStempel(DateTime.Now.AddMinutes(10))//6 }; // mamy juz przypisane uprawnienia do roli wybranej przez uzytkownika, teraz sesja if (sesjeUzytkownika.Count > 0) //jezeli istnieje jakas sesja dla tego uzytkownika (o znanej roli) { for (int i = 0; i < sesjeUzytkownika.Count; i++) { if (konwertujNaStempel(DateTime.Now) < sesjeUzytkownika[i].Data_waznosci) //...i ta sesja jest jeszcze wazna... { if (sesjeUzytkownika[i].ID_Roli != rola.ID_Roli) //...i to dla innej roli!!! { return(Request.CreateErrorResponse(HttpStatusCode.Conflict, "Nie możesz zalogować się na tej roli, ponieważ jesteś już zalogowany na innej.")); } else { zawartoscOdpowiedzi.ID_Sesji = sesjeUzytkownika[i].ID_Sesji; sesjeUzytkownika[i].Data_waznosci = zawartoscOdpowiedzi.Data_waznosci; break; } } //ta sesja jest niewazna, wiec przypisujemy jej nowy id sesji if (i == sesjeUzytkownika.Count - 1) { zawartoscOdpowiedzi.ID_Sesji = HttpContext.Current.Session.SessionID; baza.Sesje.Add(new Sesja { ID_Roli = rola.ID_Roli, ID_Sesji = zawartoscOdpowiedzi.ID_Sesji, ID_Uzytkownika = uzytkownik.ID_Uzytkownika, Data_waznosci = zawartoscOdpowiedzi.Data_waznosci }); } } odpowiedz = Request.CreateResponse(HttpStatusCode.OK, zawartoscOdpowiedzi); baza.SaveChanges(); } else //uzytkownik nie mial wczesniej sesji { zawartoscOdpowiedzi.ID_Sesji = HttpContext.Current.Session.SessionID; baza.Sesje.Add(new Sesja { ID_Roli = rola.ID_Roli, ID_Sesji = zawartoscOdpowiedzi.ID_Sesji, ID_Uzytkownika = uzytkownik.ID_Uzytkownika, Data_waznosci = zawartoscOdpowiedzi.Data_waznosci }); } odpowiedz = Request.CreateResponse(HttpStatusCode.OK, zawartoscOdpowiedzi); baza.SaveChanges(); } } else // to jest else do pierwszego ifa sprawdzajacego uzytkownika i haslo! (jeszcze z rola ustawiona na null) { odpowiedz = Request.CreateErrorResponse(HttpStatusCode.Forbidden, "Niepoprawne dane!"); } } return(odpowiedz); }