public ActionResult SaveFls(SelectFlsViewModel model) { PermissionContext db = new PermissionContext(LogggedInUser); if (!((CustomPrincipal)User).CanEditAdminFeature("FieldLevelSecurity")) { return(RedirectToAction("Index", "Home")); } if (ModelState.IsValid) { string EntName = ""; if (model.Properties.Count() > 0) { EntName = model.Properties[0].EntityName; var list = db.Permissions.FirstOrDefault(q => q.RoleName == model.RoleName && EntName == q.EntityName); Permission permission = (list != null ? list : new Permission()); string NoEdit = ""; string NoView = ""; permission.EntityName = EntName; permission.RoleName = model.RoleName; foreach (var ent in model.Properties) { if (ent.NoEdit) { NoEdit += ent.PropertyName + ","; } if (ent.NoView) { NoView += ent.PropertyName + ","; } } //NoEdit = NoEdit.TrimEnd(",".ToCharArray()); //NoView = NoView.TrimEnd(",".ToCharArray()); permission.NoEdit = NoEdit; permission.NoView = NoView; permission.CanAdd = model.CanAdd; permission.CanEdit = model.CanEdit; permission.CanDelete = model.CanDelete; permission.CanView = model.CanView; if (list == null) { db.Permissions.Add(permission); } db.SaveChanges(); } return(RedirectToAction("Fls", "Permission", new { RoleName = model.RoleName, key = EntName })); } return(View()); }
// GET: /Permission/ public ActionResult Fls(string RoleName, string key) { if (!((CustomPrincipal)User).CanViewAdminFeature("FieldLevelSecurity")) { return(RedirectToAction("Index", "Home")); } string setEntity = key; if (key == null) { setEntity = GeneratorBase.MVC.ModelReflector.Entities[0].Name; } var model = new SelectFlsViewModel(RoleName, setEntity); ViewBag.EntityList = new SelectList(GeneratorBase.MVC.ModelReflector.Entities.Where(p => !p.IsAdminEntity), "Name", "DisplayName", setEntity); return(View(model)); }