コード例 #1
0
        public ActionResult Detalji(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Korisnik k = db.KorisnikDbSet.Find(id);

            if (k == null)
            {
                return(HttpNotFound());
            }

            KorisnikDetaljiVM model = db.KorisnikDbSet
                                      .Where(x => x.Id == id)
                                      .Select(f => new KorisnikDetaljiVM
            {
                Id                  = f.Id,
                JMBG                = f.JMBG,
                Ime                 = f.Ime,
                Prezime             = f.Prezime,
                Lokacija            = f.Opcina.NazivOpcine + " " + f.Naselje + " " + f.Adresa,
                ListaAktivnihUsluga = db.AktivneUslugeDbSet.Where(q => q.KorisnikId == f.Id && q.AktivnaUsluga == true).ToList(),
                ListaRacuna         = db.RacuniDbSet.Where(q => q.KorisnikId == f.Id).ToList(),
                ListaSmetnji        = db.SmetnjeDbSet.Where(q => q.KorisnikId == f.Id).ToList(),
            }).Single();

            model.ListaZahtjeva = db.ZahtjevDbSet.Where(q => q.JMBG == k.JMBG).ToList();



            return(View(model));
        }
コード例 #2
0
 private void GenerisiUlogeDetalji(KorisnikDetaljiVM model)
 {
     model.Uloge = _context.Uloge.Select(s => new SelectListItem
     {
         Value = s.UlogaId.ToString(),
         Text  = s.Naziv
     }).ToList();
 }
コード例 #3
0
        public IActionResult Edit(KorisnikDetaljiVM input)
        {
            if (!ModelState.IsValid)
            {
                GenerisiUlogeDetalji(input);
                return(View("Detalji", input));
            }

            var lozinkaSalt = Util.Helper.GenerateSalt();
            var lozinkaHash = Util.Helper.GenerateHash(lozinkaSalt, input.Lozinka);

            var korisnik = _context.Korisnici.Find(input.KorisnikId);

            if (korisnik != null)
            {
                korisnik.Ime            = input.Ime;
                korisnik.Prezime        = input.Prezime;
                korisnik.LozinkaHash    = lozinkaHash;
                korisnik.LozinkaSalt    = lozinkaSalt;
                korisnik.KorisnikStatus = input.KorisnikStatus;

                if (input.KorisnikSlika != null)
                {
                    using var stream = new MemoryStream();
                    input.KorisnikSlika.CopyTo(stream);
                    korisnik.KorisnikSlika = stream.ToArray();
                }

                var UlogeIds = input.Uloge.Where(w => w.Selected).Select(s => s.Value);

                var permisije = _context.Permisije.Where(w => w.KorisnikId == korisnik.KorisnikId && w.PermisijaStatus == true);

                foreach (var permisija in permisije)
                {
                    permisija.PermisijaStatus = false;
                }

                foreach (var id in UlogeIds)
                {
                    Permisija p = new Permisija
                    {
                        DatumIzmjene    = DateTime.Now,
                        KorisnikId      = korisnik.KorisnikId,
                        UlogaId         = int.Parse(id),
                        PermisijaStatus = true
                    };
                    _context.Permisije.Add(p);
                }

                _context.SaveChanges();
            }

            return(RedirectToAction("Index"));
        }
コード例 #4
0
        public IActionResult Detalji(int id)
        {
            var korisnik = _context.Korisnici.Find(id);

            if (korisnik == null)
            {
                Response.StatusCode = 404;
                return(View("Views/Shared/Error404.cshtml"));
            }

            var model = new KorisnikDetaljiVM()
            {
                KorisnikId     = korisnik.KorisnikId,
                Ime            = korisnik.Ime,
                Prezime        = korisnik.Prezime,
                KorisnickoIme  = korisnik.KorisnickoIme,
                KorisnikStatus = korisnik.KorisnikStatus
            };

            var x = ImageHelper.GetImageType(korisnik.KorisnikSlika);

            model.KorisnikSlikaPath = string.Format("data:image/" + x + ";base64,{0}", Convert.ToBase64String(korisnik.KorisnikSlika));

            GenerisiUlogeDetalji(model);

            var ulogeList = _context.Permisije.Where(w => w.KorisnikId == korisnik.KorisnikId && w.PermisijaStatus == true).Select(s => s.UlogaId).ToList();

            foreach (var oznaceneUloge in ulogeList)
            {
                foreach (var uloga in model.Uloge)
                {
                    if (int.Parse(uloga.Value) == oznaceneUloge)
                    {
                        uloga.Selected = true;
                    }
                }
            }

            return(View(model));
        }
コード例 #5
0
        public IActionResult Detalji(int KorisnikID)
        {
            ApplicationUser user   = db.Users.Include(y => y.Grad).FirstOrDefault(x => x.Id == KorisnikID);
            int             RoleID = db.UserRoles.FirstOrDefault(x => x.UserId == user.Id).RoleId;

            KorisnikDetaljiVM model = new KorisnikDetaljiVM()
            {
                KorisnikID         = KorisnikID,
                Ime                = user.Ime,
                Prezime            = user.Prezime,
                DatumRodjenja      = user.DatumRodjenja.ToShortDateString(),
                Grad               = user.GradID != null?user.Grad.Naziv:"",
                Adresa             = user.Adresa,
                KontaktTelefon     = user.PhoneNumber,
                BrojKupovina       = db.Kupovina.Count(z => z.KlijentID == user.Id),
                BrojIznajmljivanja = db.RezervacijaRentanja.Count(z => z.KlijentID == user.Id),
                SlikaURL           = user.SlikaURL,
                TipKorisnika       = db.Roles.Where(y => y.Id == RoleID).FirstOrDefault().Name
            };

            return(View(model));
        }