public void Init() { IsConnected = false; random = new Random(); ListaKonekcija = new ObservableCollection <string>(); string username = BaseAPIService.Username; string password = BaseAPIService.Password; string kredencijali = Convert.ToBase64String(ASCIIEncoding.ASCII.GetBytes(username + ":" + password)); hubKonekcija = new HubConnectionBuilder() .WithUrl(hubUrl, opcije => opcije.Headers.Add("Authorization", "Basic " + kredencijali)) .Build(); hubKonekcija.Closed += async(error) => { OnConnectionClosed?.Invoke(this, new MessageEventArgs("Disconnected..")); IsConnected = false; }; hubKonekcija.On <List <string> >("GetKonekcije", (_listaKonekcija) => { Device.BeginInvokeOnMainThread(() => { ListaKonekcija.Clear(); foreach (var i in _listaKonekcija) { ListaKonekcija.Add(i); } }); }); hubKonekcija.On <string, string, string, string>("PrimiPoruku", (poruka, posiljatelj, primatelj, vrijeme) => { ChatPoruka nova = new ChatPoruka(poruka, posiljatelj, primatelj, vrijeme); StiglaPoruka?.Invoke(this, nova); }); }
public void PrimiPoruku(ChatPoruka poruka) { Console.WriteLine($"[{poruka.VremeSlanja}] {poruka.Korisnik}: {poruka.Sadrzaj}"); Clients.All.SendAsync("pp", poruka); }
public static void Seed(DBContext context, UserManager <User> userManager, RoleManager <Role> roleManager, IWebHostEnvironment host) { if (context.Database.CanConnect()) { return; } context.Database.Migrate(); #region Roles var AdminRole = new Role { Name = "Admin" }; var DoktorRole = new Role { Name = "Doktor" }; var TehnicarRole = new Role { Name = "Tehnicar" }; var KorisnkRole = new Role { Name = "Korisnik" }; roleManager.CreateAsync(AdminRole).GetAwaiter().GetResult(); roleManager.CreateAsync(DoktorRole).GetAwaiter().GetResult(); roleManager.CreateAsync(TehnicarRole).GetAwaiter().GetResult(); roleManager.CreateAsync(KorisnkRole).GetAwaiter().GetResult(); #endregion #region Odjeli var folderPath = host.ContentRootPath; var odjeli = new List <Odjel>() { new Odjel { Naziv = "Stomatologija", Opis = "Odjel stomatologije" }, new Odjel { Naziv = "Urologija", Opis = "Odjel Urologije" }, new Odjel { Naziv = "Ginekologija", Opis = "Odjel ginekologije" }, new Odjel { Naziv = "Psihijatrija", Opis = "Odjel psihijatrije" }, new Odjel { Naziv = "Kardiologija", Opis = "Odjel kardiologije" }, new Odjel { Naziv = "Neurologija", Opis = "Odjel neurologije" }, new Odjel { Naziv = "Dermatologija", Opis = "Odjel dermatologije" }, new Odjel { Naziv = "Otorinolaringologija", Opis = "Odjel otorinolaringologije" }, }; foreach (var o in odjeli) { context.Odjel.Add(o); } context.SaveChanges(); #endregion #region Admin var admin = new Admin { Ime = "Admin", Prezime = "Admin", Email = "*****@*****.**", UserName = "******" }; CreateAdmin(admin, userManager, context); #endregion #region Doktori var psih = context.Odjel.FirstOrDefault(x => x.Naziv == "Psihijatrija"); var psihijatar = new Doktor { OdjelID = psih.ID, Ime = "Ahmed", Prezime = "Pajevic", Email = "*****@*****.**", Spol = "M", UserName = "******", BrojRadneKnjizice = "123456", Specijalizacija = "Psihijatrija", SubSpecijalizacija = "Socijalna Psihijatrija" }; CreateDoktor(psihijatar, userManager, context); var stom = context.Odjel.FirstOrDefault(x => x.Naziv == "Stomatologija"); var zubar = new Doktor { OdjelID = stom.ID, Ime = "Muhamed", Prezime = "Karic", Email = "*****@*****.**", Spol = "M", UserName = "******", BrojRadneKnjizice = "654321", Specijalizacija = "Stomatologija", }; CreateDoktor(zubar, userManager, context); var uro = context.Odjel.FirstOrDefault(x => x.Naziv == "Urologija"); var urolog = new Doktor { OdjelID = uro.ID, Ime = "Mustafa", Prezime = "Bazardzanovic", Email = "*****@*****.**", Spol = "M", UserName = "******", BrojRadneKnjizice = "123321", Specijalizacija = "Urologija", }; CreateDoktor(urolog, userManager, context); var gine = context.Odjel.FirstOrDefault(x => x.Naziv == "Ginekologija"); var ginekolog = new Doktor { OdjelID = gine.ID, Ime = "Seada", Prezime = "Hajdarevic", Email = "*****@*****.**", Spol = "Ž", UserName = "******", BrojRadneKnjizice = "321123", Specijalizacija = "Ginekologija", }; CreateDoktor(ginekolog, userManager, context); var kardio = context.Odjel.FirstOrDefault(x => x.Naziv == "Kardiologija"); var kardiolog = new Doktor { OdjelID = kardio.ID, Ime = "Emir", Prezime = "Kabil", Email = "*****@*****.**", Spol = "M", UserName = "******", BrojRadneKnjizice = "121212", Specijalizacija = "Kardiologija", }; CreateDoktor(kardiolog, userManager, context); var neuro = context.Odjel.FirstOrDefault(x => x.Naziv == "Neurologija"); var neurolog = new Doktor { OdjelID = neuro.ID, Ime = "Osman", Prezime = "Sinanovic", Email = "*****@*****.**", Spol = "M", UserName = "******", BrojRadneKnjizice = "212121", Specijalizacija = "Neurologija", }; CreateDoktor(neurolog, userManager, context); var derma = context.Odjel.FirstOrDefault(x => x.Naziv == "Dermatologija"); var dermatolog = new Doktor { OdjelID = derma.ID, Ime = "Senada", Prezime = "Resic", Email = "*****@*****.**", Spol = "Ž", UserName = "******", BrojRadneKnjizice = "111111", Specijalizacija = "Dermatologija", }; CreateDoktor(dermatolog, userManager, context); var otorina = context.Odjel.FirstOrDefault(x => x.Naziv == "Otorinolaringologija"); var otorinolaringolog = new Doktor { OdjelID = otorina.ID, Ime = "Dervis", Prezime = "Hajdarovic", Email = "*****@*****.**", Spol = "M", UserName = "******", BrojRadneKnjizice = "333333", Specijalizacija = "Otorinolaringologija", }; CreateDoktor(otorinolaringolog, userManager, context); #endregion #region Tehnicari var tehnicari = new List <Tehnicar>() { new Tehnicar { Ime = "Faruk", Prezime = "Smajic", Email = "*****@*****.**", Spol = "M", UserName = "******", BrojRadneKnjizice = "232345", StrucnaSprema = "SSS" }, new Tehnicar { Ime = "Mirza", Prezime = "Babajic", Email = "*****@*****.**", Spol = "M", UserName = "******", BrojRadneKnjizice = "666654", StrucnaSprema = "SSS" }, new Tehnicar { Ime = "Amra", Prezime = "Spahic", Email = "*****@*****.**", Spol = "Ž", UserName = "******", BrojRadneKnjizice = "668654", StrucnaSprema = "SSS" }, new Tehnicar { Ime = "Mia", Prezime = "Turbic", Email = "*****@*****.**", Spol = "Ž", UserName = "******", BrojRadneKnjizice = "968654", StrucnaSprema = "SSS" } }; foreach (var t in tehnicari) { CreateTehnicar(t, userManager, context); } #endregion #region Korisnici var korisnik = new Korisnik { Ime = "Harun", Prezime = "Colic", BrojTelefona = "062817474", DatumRodjenja = new DateTime(1996, 2, 15), Email = "*****@*****.**", UserName = "******", KrvnaGrupa = "A+", Spol = "M" }; CreateKorisnik(korisnik, userManager, context); var korisnica = new Korisnik { Ime = "Fahrizada", Prezime = "Zekotic", BrojTelefona = "06288634", DatumRodjenja = new DateTime(1997, 6, 28), Email = "*****@*****.**", UserName = "******", KrvnaGrupa = "A+", Spol = "Ž" }; CreateKorisnik(korisnica, userManager, context); #endregion #region Pregledi var pregledi = new List <Pregled>() { new Pregled { Datum = DateTime.Now.Date + new TimeSpan(10, 0, 0), DoktorID = psihijatar.Id, KorisnikID = korisnik.Id, OdjelID = psih.ID, TehnicarID = context.Tehnicar.First().Id }, new Pregled { Datum = DateTime.Now.Date + new TimeSpan(10, 0, 0), DoktorID = psihijatar.Id, KorisnikID = korisnik.Id, OdjelID = psih.ID, TehnicarID = context.Tehnicar.OrderBy(x => x.Id).Last().Id }, new Pregled { Datum = DateTime.Now.Date + new TimeSpan(10, 0, 0), KorisnikID = korisnik.Id, OdjelID = psih.ID, }, new Pregled { Datum = DateTime.Now.Date + new TimeSpan(10, 0, 0), DoktorID = zubar.Id, KorisnikID = korisnica.Id, OdjelID = stom.ID, TehnicarID = context.Tehnicar.First().Id }, new Pregled { Datum = DateTime.Now.Date + new TimeSpan(10, 0, 0), DoktorID = zubar.Id, KorisnikID = korisnica.Id, OdjelID = stom.ID, TehnicarID = context.Tehnicar.OrderBy(x => x.Id).Last().Id }, new Pregled { Datum = DateTime.Now.Date + new TimeSpan(10, 0, 0), KorisnikID = korisnica.Id, OdjelID = stom.ID, } }; foreach (var p in pregledi) { context.Pregled.Add(p); } context.SaveChanges(); #endregion #region Uplate var korisnikPregledi = context.Pregled.Where(x => x.KorisnikID == korisnik.Id).ToList(); var korisnicaPregledi = context.Pregled.Where(x => x.KorisnikID == korisnica.Id).ToList(); var uplate = new List <Uplata>() { new Uplata { DatumUplate = DateTime.Now, PregledID = korisnikPregledi[0].ID }, new Uplata { DatumUplate = DateTime.Now, PregledID = korisnikPregledi[1].ID }, new Uplata { DatumUplate = DateTime.Now, PregledID = korisnikPregledi[2].ID }, new Uplata { DatumUplate = DateTime.Now, PregledID = korisnikPregledi[2].ID }, new Uplata { DatumUplate = DateTime.Now, PregledID = korisnicaPregledi[0].ID }, new Uplata { DatumUplate = DateTime.Now, PregledID = korisnicaPregledi[1].ID }, new Uplata { DatumUplate = DateTime.Now, PregledID = korisnicaPregledi[2].ID }, new Uplata { DatumUplate = DateTime.Now, PregledID = korisnicaPregledi[2].ID }, }; foreach (var u in uplate) { context.Uplata.Add(u); } context.SaveChanges(); #endregion #region Nalazi var nalazi = new List <Nalaz>() { new Nalaz { Opis = "Opis nalaza", PregledID = korisnikPregledi[1].ID, }, new Nalaz { Opis = "Opis nalaza", PregledID = korisnikPregledi[2].ID, }, new Nalaz { Opis = "Opis nalaza", PregledID = korisnicaPregledi[1].ID, }, new Nalaz { Opis = "Opis nalaza", PregledID = korisnicaPregledi[2].ID, }, }; foreach (var n in nalazi) { context.Nalaz.Add(n); } context.SaveChanges(); #endregion #region Izvjestaji var izvjestaji = new List <Izvjestaj>() { new Izvjestaj { PregledID = korisnikPregledi[1].ID, Opis = "Opis izvjestaja" }, new Izvjestaj { PregledID = korisnikPregledi[2].ID, Opis = "Opis izvjestaja" }, new Izvjestaj { PregledID = korisnicaPregledi[1].ID, Opis = "Opis izvjestaja" }, new Izvjestaj { PregledID = korisnicaPregledi[2].ID, Opis = "Opis izvjestaja" }, }; foreach (var i in izvjestaji) { context.Izvjestaj.Add(i); } context.SaveChanges(); #endregion #region Rasporedi var pr = context.Pregled.Where(x => x.DoktorID != null && x.TehnicarID != null).ToList(); foreach (var p in pr) { var rasp = new Raspored { PregledID = p.ID, TehnicarID = int.Parse(p.TehnicarID.ToString()), DoktorID = int.Parse(p.DoktorID.ToString()), Vrijeme = "10:00-11:00", Datum = DateTime.Now.Date + new TimeSpan(0, 0, 0) }; context.Raspored.Add(rasp); } context.SaveChanges(); #endregion #region Obaveza var obaveze = new List <Obaveza>() { new Obaveza { Datum = DateTime.Now, Aktivna = true, OdjelID = psih.ID, OsobljeID = psihijatar.OdjelID, Opis = "Opis obaveze" }, new Obaveza { Datum = DateTime.Now, Aktivna = false, OdjelID = psih.ID, OsobljeID = psihijatar.OdjelID, Opis = "Opis obaveze" }, new Obaveza { Datum = DateTime.Now, Aktivna = true, OdjelID = stom.ID, OsobljeID = zubar.OdjelID, Opis = "Opis obaveze" }, new Obaveza { Datum = DateTime.Now, Aktivna = false, OdjelID = stom.ID, OsobljeID = zubar.OdjelID, Opis = "Opis obaveze" }, new Obaveza { Datum = DateTime.Now, Aktivna = true, OdjelID = otorina.ID, OsobljeID = otorinolaringolog.OdjelID, Opis = "Opis obaveze" }, new Obaveza { Datum = DateTime.Now, Aktivna = false, OdjelID = otorina.ID, OsobljeID = otorinolaringolog.OdjelID, Opis = "Opis obaveze" }, }; foreach (var o in obaveze) { context.Obaveza.Add(o); } context.SaveChanges(); #endregion #region ChatObaveze var chatovi = new List <ChatObaveza>() { new ChatObaveza { ObavezaID = context.Obaveza.Where(x => x.Aktivna).ToList()[0].ID, AdminID = context.Admin.First().Id, OsobljeID = context.Obaveza.First().OsobljeID }, new ChatObaveza { ObavezaID = context.Obaveza.Where(x => x.Aktivna).ToList()[1].ID, AdminID = context.Admin.First().Id, OsobljeID = context.Obaveza.First().OsobljeID } }; foreach (var c in chatovi) { context.ChatObaveza.Add(c); } context.SaveChanges(); #endregion #region ChatPoruke var chatovio = context.ChatObaveza.ToList(); for (int i = 0; i < 6; i++) { var poruka1 = new ChatPoruka { ChatObavezaID = chatovio[0].ID, OsobljeID = chatovio[0].OsobljeID, Poruka = "Test poruka" }; var poruka2 = new ChatPoruka { ChatObavezaID = chatovio[0].ID, OsobljeID = chatovio[0].AdminID, Poruka = "Test poruka" }; var poruka3 = new ChatPoruka { ChatObavezaID = chatovio[1].ID, OsobljeID = chatovio[1].OsobljeID, Poruka = "Test poruka" }; var poruka4 = new ChatPoruka { ChatObavezaID = chatovio[1].ID, OsobljeID = chatovio[1].AdminID, Poruka = "Test poruka" }; context.ChatPoruka.Add(poruka1); context.ChatPoruka.Add(poruka2); context.ChatPoruka.Add(poruka3); context.ChatPoruka.Add(poruka4); } context.SaveChanges(); #endregion }