public TrenutniKorisnik ProveriKorisnika() { _logger.LogInformation("Proveravam korisnika..."); var kor = new TrenutniKorisnik { Ulogovan = User.Identity.IsAuthenticated, Ime = User.Identity.Name, Klejmovi = User.Claims.ToDictionary(klejm => klejm.Type, klejm => klejm.Value) }; string log = "-------------------" + Environment.NewLine; kor.Klejmovi.Keys.ToList().ForEach(k => log += $"{k} -- {kor.Klejmovi[k]}" + Environment.NewLine); log += "-------------------"; _logger.LogInformation(log); return(kor); }
public async Task Init() { TrenutniKorisnik trenutni = new TrenutniKorisnik { korisnikID = CurrentUser.User.Id }; var list = await _pregled.Get <IEnumerable <PreglediVM> >(trenutni); PreglediLista.Clear(); foreach (var pregledi in list) { PreglediLista.Add(pregledi); } }
protected override async void OnAppearing() { if (CurrentUser.IsLogedIn()) { (Shell.Current as AppShell)._profil.IsVisible = true; (Shell.Current as AppShell)._poruke.IsVisible = true; (Shell.Current as AppShell)._prijava.IsVisible = false; (Shell.Current as AppShell)._odjava.IsVisible = true; (Shell.Current as AppShell)._register.IsVisible = false; (Shell.Current as AppShell)._pregledi.IsVisible = true; _login.IsVisible = false; _register.IsVisible = false; } else { (Shell.Current as AppShell)._profil.IsVisible = false; (Shell.Current as AppShell)._poruke.IsVisible = false; (Shell.Current as AppShell)._prijava.IsVisible = true; (Shell.Current as AppShell)._odjava.IsVisible = false; (Shell.Current as AppShell)._register.IsVisible = true; (Shell.Current as AppShell)._pregledi.IsVisible = false; _login.IsVisible = true; _register.IsVisible = true; } if (CurrentUser.IsLogedIn()) { preporukeContainer.Children.Clear(); TrenutniKorisnik trenutni = new TrenutniKorisnik { korisnikID = CurrentUser.User.Id }; gridPreporuke.IsVisible = true; var pregledi = await _pregled.Get <List <Pregledvm> >(trenutni); if (pregledi.Count() == 0 && string.IsNullOrEmpty(CurrentUser.User.Spol)) { gridPreporuke.IsVisible = false; } List <int> odjeliID = new List <int>(); foreach (var pregled in pregledi) { if (!odjeliID.Contains(pregled.OdjelID)) { odjeliID.Add(pregled.OdjelID); } } preporukeContainer.Children.Add(new Label { Text = "Preporuke na osnovu Vaših dosadašnjih pregleda:", FontSize = 20 }); foreach (var i in odjeliID) { var O = await _odjel.GetById <odjeldvm>(i); preporukeContainer.Children.Add(new Label { Text = O.Naziv, HorizontalOptions = LayoutOptions.CenterAndExpand, FontSize = 20 }); } var pacijent = await _korisnik.GetById <K>(trenutni.korisnikID); DateTime now = DateTime.Now; int age = now.Year - pacijent.DatumRodjenja.Year; if (age >= 65 && CurrentUser.User.Spol == "M") { preporukeContainer.Children.Add(new Label { Text = "Na osnovu Vaše starosne dobi preporučujemo pregled na:", FontSize = 20 }); preporukeContainer.Children.Add(new Label { Text = "Oko 60% slučajeva raka prostate je diagnosticirano " + "kod osoba starosne dobi od 65 ili više." + " Vi spadate u ovu grupu ljudi," + " s toga Vam preporučujemo pregled na odjelu: Urologija", FontSize = 20 }); } if (age >= 50 && CurrentUser.User.Spol == "Ž") { preporukeContainer.Children.Add(new Label { Text = "Rak maternice se najčesće pojavjuje kod žena " + "starosne dobi preko 50. Prosječna dob diagnosticiranih " + "slučajeva je 60. Vi spadate u ovu grupu, s toga Vam " + "preporučujemo pregled na odjelu: Ginekologija", FontSize = 20 }); } } else { gridPreporuke.IsVisible = false; } base.OnAppearing(); }