public ActionResult RoleEdit(int id, SuncereRole model) { AjaxResult result; try { int[] permissionIds = Request.Params["SuncerePermissions"].Split(',').Select(o => int.Parse(o)).ToArray(); FluentModel db = Session.GetFluentModel(); SuncereRoleRepository repository = new SuncereRoleRepository(db); SuncerePermissionRepository permissionRepository = new SuncerePermissionRepository(db); SuncereRole role = repository.FirstOrDefault(id); role.Remark = model.Remark; role.LastModifierUserId = Session.GetCurrentUser().Id; foreach (SuncerePermission permission in role.SuncerePermissions) { permission.SuncereRoles.Remove(role); } role.SuncerePermissions.Clear(); foreach (int permissionId in permissionIds) { SuncerePermission permission = permissionRepository.FirstOrDefault(permissionId); role.SuncerePermissions.Add(permission); permission.SuncereRoles.Add(role); } db.SaveChanges(); result = AjaxResult.GetEditAjaxResult(true); } catch (Exception e) { result = AjaxResult.GetEditAjaxResult(false); } return(Json(result, JsonRequestBehavior.DenyGet)); }
public ActionResult PermissionDelete(string ids) { AjaxResult result; try { int[] idArray = ids.Split(',').Select(o => int.Parse(o)).ToArray(); FluentModel db = Session.GetFluentModel(); SuncerePermissionRepository repository = new SuncerePermissionRepository(db); IQueryable <SuncerePermission> query = repository.Query(idArray); foreach (SuncerePermission permission in query) { foreach (SuncereRole role in permission.SuncereRoles) { role.SuncerePermissions.Remove(permission); } permission.SuncereRoles.Clear(); } db.Delete(query); db.SaveChanges(); result = AjaxResult.GetDeleteAjaxResult(true); } catch (Exception e) { result = AjaxResult.GetDeleteAjaxResult(false); } return(Json(result, JsonRequestBehavior.DenyGet)); }
public ActionResult RoleAdd(SuncereRole model) { AjaxResult result; try { int[] permissionIds = Request.Params["SuncerePermissions"].Split(',').Select(o => int.Parse(o)).ToArray(); FluentModel db = Session.GetFluentModel(); SuncereRoleRepository repository = new SuncereRoleRepository(db); SuncerePermissionRepository permissionRepository = new SuncerePermissionRepository(db); if (repository.IsExist(model.Name)) { throw new Exception("名称已存在。"); } model.Status = true; model.CreatorUserId = Session.GetCurrentUser().Id; foreach (int permissionId in permissionIds) { SuncerePermission permission = permissionRepository.FirstOrDefault(permissionId); model.SuncerePermissions.Add(permission); permission.SuncereRoles.Add(model); } db.Add(model); db.SaveChanges(); result = AjaxResult.GetAddAjaxResult(true); } catch (Exception e) { result = AjaxResult.GetAddAjaxResult(false); } return(Json(result, JsonRequestBehavior.DenyGet)); }
public ActionResult PermissionEdit(int id, SuncerePermission model) { AjaxResult result; try { FluentModel db = Session.GetFluentModel(); SuncerePermissionRepository repository = new SuncerePermissionRepository(db); SuncerePermission permission = repository.FirstOrDefault(id); permission.Name = model.Name; permission.ParentId = model.ParentId; permission.Controller = model.Controller; permission.Action = model.Action; permission.Order = model.Order; permission.Remark = model.Remark; permission.LastModifierUserId = Session.GetCurrentUser().Id; db.SaveChanges(); result = AjaxResult.GetEditAjaxResult(true); } catch (Exception e) { result = AjaxResult.GetEditAjaxResult(false); } return(Json(result, JsonRequestBehavior.DenyGet)); }
public ActionResult PermissionAdd(SuncerePermission model) { AjaxResult result; try { FluentModel db = Session.GetFluentModel(); SuncerePermissionRepository repository = new SuncerePermissionRepository(db); if (repository.IsExist(model.Controller, model.Action)) { throw new Exception("权限已存在。"); } if (model.Type == (int)PermissionType.Module) { model.ParentId = 0; model.Action = null; } model.Status = true; model.CreatorUserId = Session.GetCurrentUser().Id; SuncereRole role = db.SuncereRoles.First(); role.SuncerePermissions.Add(model); model.SuncereRoles.Add(role); db.Add(model); db.SaveChanges(); result = AjaxResult.GetAddAjaxResult(true); } catch (Exception e) { result = AjaxResult.GetAddAjaxResult(false); } return(Json(result, JsonRequestBehavior.DenyGet)); }
public ActionResult PermissionEdit(int id) { FluentModel db = Session.GetFluentModel(); SuncerePermissionRepository repository = new SuncerePermissionRepository(db); List <SuncerePermission> modules = db.SuncerePermissions.Where(o => o.Status && o.Type == (int)PermissionType.Module).ToList(); ViewData["SuncerePermissions"] = modules; return(View(repository.FirstOrDefault(id))); }
public ActionResult PermissionList(DateTime?startTime, DateTime?endTime, string keyword) { FluentModel db = Session.GetFluentModel(); SuncerePermissionRepository repository = new SuncerePermissionRepository(db); List <SuncerePermission> list = repository.Query(startTime, endTime, keyword).ToList(); ViewData["startTime"] = startTime; ViewData["endTime"] = endTime; ViewData["keyword"] = keyword; return(View(list)); }
public ActionResult PermissionEnable(int id, bool status) { AjaxResult result; try { FluentModel db = Session.GetFluentModel(); SuncerePermissionRepository repository = new SuncerePermissionRepository(db); SuncerePermission role = repository.FirstOrDefault(id); role.Status = status; role.LastModifierUserId = Session.GetCurrentUser().Id; db.SaveChanges(); result = AjaxResult.GetEditAjaxResult(true); } catch (Exception e) { result = AjaxResult.GetEditAjaxResult(false); } return(Json(result, JsonRequestBehavior.DenyGet)); }