public IActionResult Snimi(RegistracijaIndexVM model)
        {
            if (ModelState.IsValid)
            {
                byte[] lozinkaSalt = PasswordSettings.GetSalt();
                string lozinkaHash = PasswordSettings.GetHash(model.Lozinka, lozinkaSalt);

                Korisnik k = new Korisnik
                {
                    KorisnickoIme = model.KorisnickoIme,
                    LozinkaSalt   = Convert.ToBase64String(lozinkaSalt),
                    LozinkaHash   = lozinkaHash,
                    OpstinaId     = model.OpstinaID,
                    UlogaId       = 5
                };

                ctx.Korisnik.Add(k);
                ctx.SaveChanges();

                Kupac kupac = new Kupac
                {
                    Ime        = model.Ime,
                    Prezime    = model.Prezime,
                    Email      = model.Email,
                    Adresa     = model.Adresa,
                    Spol       = model.Spol,
                    KorisnikId = k.Id
                };

                ctx.Kupac.Add(kupac);
                ctx.SaveChanges();


                return(RedirectToAction("PrikazPoruke"));
            }
            else
            {
                return(BadRequest(ModelState));
            }
        }
Пример #2
0
        public IActionResult SpremiNovogZaposlenika(ZaposleniciDodajVM model)
        {
            if (ModelState.IsValid)
            {
                byte[] lozinkaSalt = PasswordSettings.GetSalt();
                string lozinkaHash = PasswordSettings.GetHash(model.Lozinka, lozinkaSalt);

                Korisnik k = new Korisnik
                {
                    KorisnickoIme = model.KorisnickoIme,
                    LozinkaHash   = lozinkaHash,
                    LozinkaSalt   = Convert.ToBase64String(lozinkaSalt),
                    OpstinaId     = model.OpstinaId,
                    UlogaId       = model.UlogaId
                };
                ctx.Korisnik.Add(k);
                ctx.SaveChanges();

                Zaposlenik z = new Zaposlenik
                {
                    Ime        = model.Ime,
                    Prezime    = model.Prezime,
                    Email      = model.Email,
                    Adresa     = model.Adresa,
                    Telefon    = model.Telefon,
                    KorisnikId = k.Id
                };
                ctx.Zaposlenik.Add(z);
                ctx.SaveChanges();

                return(Redirect("/ModulAdministrator/Korisnici/IndexZaposlenici"));
            }
            else
            {
                return(BadRequest(ModelState));
            }
        }
        public IActionResult Prijava()
        {
            if (!_context.Administrators.Any())
            {
                byte[] lozinkaSalt = PasswordSettings.GetSalt();
                string lozinkaHash = PasswordSettings.GetHash("Admin24!", lozinkaSalt);
                if (!_context.Grads.Any())
                {
                    if (!_context.Drzavas.Any())
                    {
                        var novaDrzava = new Drzava
                        {
                            Naziv = "Bosna i Hercegovina"
                        };
                        _context.Add(novaDrzava);
                        _context.SaveChanges();
                    }

                    var noviGrad = new Grad
                    {
                        DrzavaId      = 1,
                        Naziv         = "Jablanica",
                        PostanskiBroj = "88420"
                    };
                    _context.Add(noviGrad);
                    _context.SaveChanges();
                }
                var AdminKorisnik = new KorisnickiNalog
                {
                    Ime           = "Dino",
                    Prezime       = "Nanić",
                    Email         = "*****@*****.**",
                    LozinkaHash   = lozinkaHash,
                    LozinkaSalt   = Convert.ToBase64String(lozinkaSalt),
                    Permisije     = 0,
                    Kreirano      = DateTime.Now,
                    JMBG          = "0101990150023",
                    DatumRodjenja = new DateTime(1990, 1, 1),
                    Mobitel       = "38762516238",
                    Adresa        = "San BB",
                    GradId        = 1,
                    Spol          = "Muško",
                    Slika         = "blank-profile.jpg"
                };
                _context.Add(AdminKorisnik);
                _context.SaveChanges();
                var NoviAdministrator = new Administrator
                {
                    KorisnickiNalog = _context.KorisnickiNalogs.SingleOrDefault(i => i.Email == AdminKorisnik.Email),
                    DatumZaposlenja = DateTime.Now,
                    OpisPosla       = "Administracija stranice",
                    BrojZiroRacuna  = "4343000022225555",
                    Aktivan         = true
                };
                _context.Add(NoviAdministrator);
                _context.SaveChanges();

                var novaTitula = new Titula
                {
                    Naziv = "dr."
                };
                _context.Add(novaTitula);
                _context.SaveChanges();
            }


            if (HttpContext.GetLogiraniKorisnik() != null)
            {
                return(RedirectToAction("Pocetna", "Profil"));
            }

            return(View());
        }
        public IActionResult Registracija(RegistracijaViewModel model)
        {
            if (!ModelState.IsValid)
            {
                model.Gradovi = _context.Grads.Select
                                    (i => new SelectListItem {
                    Text = i.Naziv, Value = i.GradId.ToString()
                }).ToList();
                return(View("Registracija", model));
            }


            if (_context.KorisnickiNalogs.Any(i => i.Email == model.Email))
            {
                TempData["errorMessage"] = "Email adresa se koristi.";
                model.Gradovi            = _context.Grads.Select
                                               (i => new SelectListItem {
                    Text = i.Naziv, Value = i.GradId.ToString()
                }).ToList();
                return(View("Registracija", model));
            }

            byte[] lozinkaSalt = PasswordSettings.GetSalt();
            string lozinkaHash = PasswordSettings.GetHash(model.Lozinka, lozinkaSalt);

            //implementiraj izmjenu lozinke ako je 0 na pocetku, prebaci u 387
            string uniqueFileName = UploadedFile(model);

            KorisnickiNalog korisnickiNalog = new KorisnickiNalog
            {
                Ime           = model.Ime,
                Prezime       = model.Prezime,
                Email         = model.Email,
                LozinkaHash   = lozinkaHash,
                LozinkaSalt   = Convert.ToBase64String(lozinkaSalt),
                Permisije     = 3,
                Kreirano      = DateTime.Now,
                Mobitel       = model.Mobitel,
                GradId        = model.GradID,
                Adresa        = model.Adresa,
                JMBG          = model.JMBG,
                DatumRodjenja = model.DatumRodjenja,
                Spol          = model.Spol,
                Slika         = uniqueFileName
            };
            Pacijent pacijent = new Pacijent
            {
                KorisnickiNalog = korisnickiNalog,
                AlergijaNaLijek = model.AlergijaNaLijek,
                Aparatic        = model.Aparatic,
                Navlake         = model.Navlake,
                Proteza         = model.Proteza,
                Terapija        = model.Terapija
            };

            _context.KorisnickiNalogs.Add(korisnickiNalog);
            _context.Pacijents.Add(pacijent);

            _context.SaveChanges();

            TempData["successMessage"] = "Uspješno ste se registrovali.";
            return(RedirectToAction("Prijava"));
        }
Пример #5
0
        public IActionResult DodajOsoblje(KorisnikDodajOsobljeViewModel model)
        {
            if (!ModelState.IsValid)
            {
                model.Gradovi = _context.Grads.Select
                                    (i => new SelectListItem {
                    Text = i.Naziv, Value = i.GradId.ToString()
                }).ToList();
                model.Titule = _context.Titulas.Select
                                   (i => new SelectListItem {
                    Text = i.Naziv, Value = i.TitulaId.ToString()
                }).ToList();
                return(View("DodajOsoblje", model));
            }


            if (_context.KorisnickiNalogs.Any(i => i.Email == model.Email))
            {
                TempData["errorMessage"] = "Email adresa se koristi.";
                model.Gradovi            = _context.Grads.Select
                                               (i => new SelectListItem {
                    Text = i.Naziv, Value = i.GradId.ToString()
                }).ToList();
                model.Titule = _context.Titulas.Select
                                   (i => new SelectListItem {
                    Text = i.Naziv, Value = i.TitulaId.ToString()
                }).ToList();
                return(View("DodajOsoblje", model));
            }

            byte[] lozinkaSalt = PasswordSettings.GetSalt();
            var    templozinka = GenerateRandomPassword();
            string lozinkaHash = PasswordSettings.GetHash(templozinka, lozinkaSalt);


            string uniqueFileName = UploadedFile(model);

            KorisnickiNalog korisnickiNalog = new KorisnickiNalog
            {
                Ime           = model.Ime,
                Prezime       = model.Prezime,
                Email         = model.Email,
                LozinkaHash   = lozinkaHash,
                LozinkaSalt   = Convert.ToBase64String(lozinkaSalt),
                Permisije     = 2,
                Kreirano      = DateTime.Now,
                Mobitel       = model.Mobitel,
                GradId        = model.GradID,
                Adresa        = model.Adresa,
                JMBG          = model.JMBG,
                DatumRodjenja = model.DatumRodjenja,
                Spol          = model.Spol,
                Slika         = uniqueFileName
            };
            MedicinskoOsoblje osoblje = new MedicinskoOsoblje
            {
                KorisnickiNalog = korisnickiNalog,
                TitulaID        = model.TitulaID,
                DatumZaposlenja = model.DatumZaposlenja,
                BrojZiroRacuna  = model.BrojZiroRacuna,
                Aktivan         = model.Aktivan,
                OpisPosla       = model.OpisPosla
            };

            _context.KorisnickiNalogs.Add(korisnickiNalog);
            _context.MedicinskoOsobljes.Add(osoblje);

            _context.SaveChanges();

            string primalacPoruke = korisnickiNalog.Ime + " " + korisnickiNalog.Prezime;
            string poruka         = primalacPoruke + " vaši pristupni podaci su: \nEmail: " + korisnickiNalog.Email +
                                    "\nPassword: "******"Nalog napravljen", poruka);

            TempData["successMessage"] = "Uspješno ste dodali novog uposlenika.";
            return(RedirectToAction("uredi-osoblje"));
        }
Пример #6
0
        public IActionResult DodajPacijenta(KorisnikDodajPacijentaViewModel model)
        {
            if (!ModelState.IsValid)
            {
                model.Gradovi = _context.Grads.Select
                                    (i => new SelectListItem {
                    Text = i.Naziv, Value = i.GradId.ToString()
                }).ToList();
                return(View("DodajPacijenta", model));
            }

            if (_context.KorisnickiNalogs.Any(i => i.Email == model.Email))
            {
                TempData["errorMessage"] = "Email adresa se koristi.";
                model.Gradovi            = _context.Grads.Select
                                               (i => new SelectListItem {
                    Text = i.Naziv, Value = i.GradId.ToString()
                }).ToList();
                return(View("DodajPacijenta", model));
            }

            byte[] lozinkaSalt = PasswordSettings.GetSalt();
            var    templozinka = GenerateRandomPassword();
            string lozinkaHash = PasswordSettings.GetHash(templozinka, lozinkaSalt);

            string uniqueFileName = UploadedFile(model);

            KorisnickiNalog korisnickiNalog = new KorisnickiNalog
            {
                Ime           = model.Ime,
                Prezime       = model.Prezime,
                Email         = model.Email,
                LozinkaHash   = lozinkaHash,
                LozinkaSalt   = Convert.ToBase64String(lozinkaSalt),
                Permisije     = 3,
                Kreirano      = DateTime.Now,
                Mobitel       = model.Mobitel,
                GradId        = model.GradID,
                Adresa        = model.Adresa,
                JMBG          = model.JMBG,
                DatumRodjenja = model.DatumRodjenja,
                Spol          = model.Spol,
                Slika         = uniqueFileName
            };
            Pacijent pacijent = new Pacijent
            {
                KorisnickiNalog = korisnickiNalog,
                AlergijaNaLijek = model.AlergijaNaLijek,
                Aparatic        = model.Aparatic,
                Navlake         = model.Navlake,
                Proteza         = model.Proteza,
                Terapija        = model.Terapija
            };

            _context.KorisnickiNalogs.Add(korisnickiNalog);
            _context.Pacijents.Add(pacijent);

            _context.SaveChanges();

            string primalacPoruke = korisnickiNalog.Ime + " " + korisnickiNalog.Prezime;
            string poruka         = primalacPoruke + " vaši pristupni podaci su: \nEmail: " + korisnickiNalog.Email +
                                    "\nPassword: "******"Nalog napravljen", poruka);

            TempData["successMessage"] = "Uspješno ste dodali novog pacijenta.";

            return(RedirectToAction("uredi-pacijent"));
        }