Beispiel #1
0
        public IActionResult UrediPacijent(int id = -1)
        {
            KorisnickiNalog logiraniKorisnik = HttpContext.GetLogiraniKorisnik();

            if (logiraniKorisnik.Permisije == 0)
            {
                TempData["Layout"] = "_Administrator";
            }

            if (logiraniKorisnik.Permisije == 1)
            {
                TempData["Layout"] = "_Stomatolog";
            }

            if (logiraniKorisnik.Permisije == 2)
            {
                TempData["Layout"] = "_MedicinskoOsoblje";
            }

            if (id != -1)
            {
                dynamic korisnik = _context.Pacijents
                                   .Include(i => i.KorisnickiNalog)
                                   .ThenInclude(i => i.Grad)
                                   .SingleOrDefault(i => i.PacijentId == id);


                if (korisnik != null)
                {
                    var model = new KorisnikPrikazViewModel
                    {
                        Ime                 = korisnik.KorisnickiNalog.Ime,
                        Prezime             = korisnik.KorisnickiNalog.Prezime,
                        Email               = korisnik.KorisnickiNalog.Email,
                        JMBG                = korisnik.KorisnickiNalog.JMBG,
                        DatumRodjenjaString = korisnik.KorisnickiNalog.DatumRodjenja.ToString("dd.MM.yyyy"),
                        Mobitel             = korisnik.KorisnickiNalog.Mobitel,
                        Adresa              = korisnik.KorisnickiNalog.Adresa,
                        GradID              = korisnik.KorisnickiNalog.GradId,
                        Grad                = korisnik.KorisnickiNalog.Grad.Naziv,
                        Gradovi             = _context.Grads.Select
                                                  (i => new SelectListItem {
                            Text = i.Naziv, Value = i.GradId.ToString()
                        }).ToList(),
                        Spol            = korisnik.KorisnickiNalog.Spol,
                        Slika           = korisnik.KorisnickiNalog.Slika,
                        AlergijaNaLijek = korisnik.AlergijaNaLijek,
                        Aparatic        = korisnik.Aparatic,
                        Navlake         = korisnik.Navlake,
                        Proteza         = korisnik.Proteza,
                        Terapija        = korisnik.Terapija,
                        VrstaAcc        = "Pacijent",
                        KorisnikId      = id
                    };
                    return(View("UrediKorisnike", model));
                }
            }
            return(View("UrediPacijent"));
        }
Beispiel #2
0
        public IActionResult UrediOsoblje(int id = -1)
        {
            if (id != -1)
            {
                dynamic korisnik = _context.MedicinskoOsobljes.Include(i => i.Titula)
                                   .Include(i => i.KorisnickiNalog)
                                   .ThenInclude(i => i.Grad)
                                   .SingleOrDefault(i => i.MedicinskoOsoboljeId == id);

                TempData["Layout"] = "_Administrator";

                if (korisnik != null)
                {
                    var model = new KorisnikPrikazViewModel
                    {
                        Ime                 = korisnik.KorisnickiNalog.Ime,
                        Prezime             = korisnik.KorisnickiNalog.Prezime,
                        Email               = korisnik.KorisnickiNalog.Email,
                        JMBG                = korisnik.KorisnickiNalog.JMBG,
                        DatumRodjenjaString = korisnik.KorisnickiNalog.DatumRodjenja.ToString("dd.MM.yyyy"),
                        Mobitel             = korisnik.KorisnickiNalog.Mobitel,
                        Adresa              = korisnik.KorisnickiNalog.Adresa,
                        GradID              = korisnik.KorisnickiNalog.GradId,
                        Grad                = korisnik.KorisnickiNalog.Grad.Naziv,
                        Gradovi             = _context.Grads.Select
                                                  (i => new SelectListItem {
                            Text = i.Naziv, Value = i.GradId.ToString()
                        }).ToList(),
                        Spol  = korisnik.KorisnickiNalog.Spol,
                        Slika = korisnik.KorisnickiNalog.Slika,
                        DatumZaposlenjaString = korisnik.DatumZaposlenja.ToString("dd.MM.yyyy"),
                        BrojZiroRacuna        = korisnik.BrojZiroRacuna,
                        OpisPosla             = korisnik.OpisPosla,
                        Aktivan  = korisnik.Aktivan,
                        TitulaID = korisnik.TitulaID,
                        Titula   = korisnik.Titula.Naziv,
                        VrstaAcc = "Medicinsko osoblje",
                        Titule   = _context.Titulas.Select
                                       (i => new SelectListItem {
                            Text = i.Naziv, Value = i.TitulaId.ToString()
                        }).ToList(),
                        KorisnikId = id
                    };
                    return(View("UrediKorisnike", model));
                }
            }
            return(View("UrediOsoblje"));
        }
Beispiel #3
0
        private string UploadedFile(KorisnikPrikazViewModel model)
        {
            string uniqueFileName = null;

            if (model.NovaSlika != null)
            {
                string uploadsFolder = Path.Combine(_webHostEnvironment.WebRootPath, "images");
                uniqueFileName = Guid.NewGuid().ToString() + "_" + model.NovaSlika.FileName;
                string filePath = Path.Combine(uploadsFolder, uniqueFileName);
                using (var fileStream = new FileStream(filePath, FileMode.Create))
                {
                    model.NovaSlika.CopyTo(fileStream);
                }
            }
            return(uniqueFileName);
        }
Beispiel #4
0
        public IActionResult SnimiIzmjene(KorisnikPrikazViewModel model)
        {
            KorisnickiNalog logiraniKorisnik = HttpContext.GetLogiraniKorisnik();

            if (logiraniKorisnik.Permisije == 0)
            {
                TempData["Layout"] = "_Administrator";
            }

            if (logiraniKorisnik.Permisije == 1)
            {
                TempData["Layout"] = "_Stomatolog";
            }

            if (logiraniKorisnik.Permisije == 2)
            {
                TempData["Layout"] = "_MedicinskoOsoblje";
            }


            if (!ModelState.IsValid)
            {
                return(RedirectToAction("uredi-pacijent", model.KorisnikId));
            }

            var vrsta = model.VrstaAcc;

            dynamic korisnik = null;

            if (vrsta == "Stomatolog")
            {
                var korisnickiId = _context.Stomatologs.Where(i => i.StomatologId == model.KorisnikId).Select(i => i.KorisnickiNalogId).SingleOrDefault();
                korisnik = _context.Stomatologs
                           .Include(i => i.KorisnickiNalog)
                           .ThenInclude(i => i.Grad)
                           .SingleOrDefault(i => i.KorisnickiNalogId == korisnickiId);
            }
            if (vrsta == "Medicinsko osoblje")
            {
                var korisnickiId = _context.MedicinskoOsobljes.Where(i => i.MedicinskoOsoboljeId == model.KorisnikId).Select(i => i.KorisnickiNalogId).SingleOrDefault();

                korisnik = _context.MedicinskoOsobljes
                           .Include(i => i.KorisnickiNalog)
                           .ThenInclude(i => i.Grad)
                           .SingleOrDefault(i => i.KorisnickiNalogId == korisnickiId);
            }
            if (vrsta == "Pacijent")
            {
                var korisnickiId = _context.Pacijents.Where(i => i.PacijentId == model.KorisnikId).Select(i => i.KorisnickiNalogId).SingleOrDefault();

                korisnik = _context.Pacijents
                           .Include(i => i.KorisnickiNalog)
                           .ThenInclude(i => i.Grad)
                           .SingleOrDefault(i => i.KorisnickiNalogId == korisnickiId);
            }


            if (korisnik != null)
            {
                if (korisnik.KorisnickiNalog.Ime != model.Ime)
                {
                    korisnik.KorisnickiNalog.Ime = model.Ime;
                    _context.SaveChanges();

                    TempData["successMessage"] = "Ime uspješno promjenuto.";
                }

                if (korisnik.KorisnickiNalog.Prezime != model.Prezime)
                {
                    korisnik.KorisnickiNalog.Prezime = model.Prezime;
                    _context.SaveChanges();

                    TempData["successMessage"] = "Prezime uspješno promjenuto.";
                }

                if (korisnik.KorisnickiNalog.Mobitel != model.Mobitel)
                {
                    korisnik.KorisnickiNalog.Mobitel = model.Mobitel;
                    _context.SaveChanges();

                    TempData["successMessage"] = "Broj mobitela uspješno promjenut.";
                }

                if (korisnik.KorisnickiNalog.Adresa != model.Adresa)
                {
                    korisnik.KorisnickiNalog.Adresa = model.Adresa;
                    _context.SaveChanges();

                    TempData["successMessage"] = "Adresa uspješno promjenuta.";
                }

                if (korisnik.KorisnickiNalog.GradId != model.GradID)
                {
                    korisnik.KorisnickiNalog.GradId = model.GradID;
                    _context.SaveChanges();

                    TempData["successMessage"] = "Grad uspješno promjenut.";
                }

                string uniqueFileName = UploadedFile(model);
                if (uniqueFileName != null)
                {
                    string imageToBeDeleted = Path.Combine(_webHostEnvironment.WebRootPath, "images",
                                                           korisnik.KorisnickiNalog.Slika);

                    if (System.IO.File.Exists(imageToBeDeleted))
                    {
                        if (korisnik.KorisnickiNalog.Slika != "blank-profile.jpg")
                        {
                            System.IO.File.Delete(imageToBeDeleted);
                        }
                    }

                    korisnik.KorisnickiNalog.Slika = uniqueFileName;
                    _context.SaveChanges();

                    TempData["successMessage"] = "Slika uspješno promjenuta.";
                }

                if (vrsta == "Pacijent")
                {
                    if (korisnik.AlergijaNaLijek != model.AlergijaNaLijek)
                    {
                        korisnik.AlergijaNaLijek = model.AlergijaNaLijek;
                        _context.SaveChanges();

                        TempData["successMessage"] = "Promjena uspješno sačuvana.";
                    }

                    if (korisnik.Proteza != model.Proteza)
                    {
                        korisnik.Proteza = model.Proteza;
                        _context.SaveChanges();

                        TempData["successMessage"] = "Promjena uspješno sačuvana.";
                    }

                    if (korisnik.Terapija != model.Terapija)
                    {
                        korisnik.Terapija = model.Terapija;
                        _context.SaveChanges();

                        TempData["successMessage"] = "Slika uspješno promjenuta.";
                    }

                    if (korisnik.Navlake != model.Navlake)
                    {
                        korisnik.Navlake = model.Navlake;
                        _context.SaveChanges();

                        TempData["successMessage"] = "Slika uspješno promjenuta.";
                    }

                    if (korisnik.Aparatic != model.Aparatic)
                    {
                        korisnik.Aparatic = model.Aparatic;
                        _context.SaveChanges();

                        TempData["successMessage"] = "Slika uspješno promjenuta.";
                    }
                }
                else
                {
                    if (vrsta == "Administrator" || vrsta == "Medicinsko osoblje")
                    {
                        if (korisnik.OpisPosla != model.OpisPosla)
                        {
                            korisnik.OpisPosla = model.OpisPosla;
                            _context.SaveChanges();

                            TempData["successMessage"] = "Opis posla uspješno promjenut.";
                        }
                    }

                    if (korisnik.BrojZiroRacuna != model.BrojZiroRacuna)
                    {
                        korisnik.BrojZiroRacuna = model.BrojZiroRacuna;
                        _context.SaveChanges();

                        TempData["successMessage"] = "Broj žiro računa uspješno promjenut.";
                    }

                    if (korisnik.Aktivan != model.Aktivan)
                    {
                        korisnik.Aktivan = model.Aktivan;
                        _context.SaveChanges();

                        TempData["successMessage"] = "Aktivnost korisnika uspješno promjenuta";
                    }

                    if (vrsta == "Stomatolog" || vrsta == "Medicinsko osoblje")
                    {
                        if (korisnik.TitulaID != model.TitulaID)
                        {
                            korisnik.TitulaID = model.TitulaID;
                            _context.SaveChanges();

                            TempData["successMessage"] = "Titula uspješno promjenuta.";
                        }
                    }
                }
            }

            if (vrsta == "Stomatolog")
            {
                return(RedirectToAction("uredi-stomatolog"));
            }

            if (vrsta == "Medicinsko osoblje")
            {
                return(RedirectToAction("uredi-osoblje"));
            }

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