示例#1
0
        public JsonResult Edit(KorisnikUlogaViewModel korisnikUlogaViewModel)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(Json(new { Result = "ERROR", Message = "Form is not valid! Please correct it and try again." }));
                }

                using (var context = new ProdavnicaContext())
                {
                    var nekiKorisnik = context.Korisniks.Find(korisnikUlogaViewModel.KorisnikID);
                    var nekaUloga    = context.Ulogas.Find(korisnikUlogaViewModel.UlogaID);

                    var ima = nekiKorisnik.KorisnikUlogas.Any(u => u.UlogaID == nekaUloga.UlogaID && korisnikUlogaViewModel.KorisnikUlogaID != u.KorisnikUlogaID);

                    if (ima)
                    {
                        return(Json(new { Result = "ERROR", Message = "Korisniku je vec dodjeljena ta uloga" }));
                    }

                    KorisnikUloga korisnikUloga = context.KorisnikUlogas.Find(korisnikUlogaViewModel.KorisnikUlogaID);
                    korisnikUloga.KorisnikID = korisnikUlogaViewModel.KorisnikID;
                    korisnikUloga.UlogaID    = korisnikUlogaViewModel.UlogaID;
                    context.SaveChanges();
                }

                return(Json(new { Result = "OK" }));
            }
            catch (Exception ex)
            {
                return(Json(new { Result = "ERROR", Message = ex.Message }));
            }
        }
        public JsonResult CreateKorisnikUloga(KorisnikUlogaViewModel kUlogaVM)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(Json(new { Result = "ERROR", Message = "Form is not valid! Please correct it and try again." }));
                }

                using (var context = new ProdavnicaContext())
                {
                    //onemoguciti dodavanje vise uloga za istog korisnika
                    var korisnik = context.Korisniks.Find(kUlogaVM.KorisnikId);                     //u korisnik trazim kuloga.korisnikId
                    var ima      = korisnik.KorisnikUlogas.Any(k => k.UlogaId == kUlogaVM.UlogaId); //ako postoji ta uloga u ulogama
                    if (ima)
                    {
                        return(Json(new { Result = "ERROR", Message = "Uloga vec postoji za izabranog korisnika!" }));
                    }


                    KorisnikUloga korisnikUloga = new KorisnikUloga()
                    {
                        KorisnikId      = kUlogaVM.KorisnikId,
                        UlogaId         = kUlogaVM.UlogaId,
                        KorisnikUlogaId = kUlogaVM.KorisnikUlogaId
                    };
                    context.KorisnikUlogas.Add(korisnikUloga);
                    context.SaveChanges();

                    kUlogaVM.KorisnikUlogaId = korisnikUloga.KorisnikUlogaId;

                    return(Json(new { Result = "OK", Record = kUlogaVM }));
                }
            }
            catch (Exception ex)
            {
                return(Json(new { Result = "ERROR", Message = ex.Message }));
            }
        }