Пример #1
0
 /// <summary>
 /// 保存菜单权限配置
 /// </summary>
 /// <param name="roleid">角色ID</param>
 /// <param name="arrayMune">菜单集合</param>
 /// <returns></returns>
 public ActionResult SaveRoleMenu(string roleid, List <RoleMenuOrButtonModel> arrayMune)//string roleid, IList<RoleMenuModel> menuArray
 {
     try
     {
         SystemRole        role     = _SystemRoleService.GetKey(roleid);
         List <SystemMenu> menuList = _SystemMenuService.GetAll().ToList();
         if (role != null)
         {
             role.Menu.Clear();
             //arrayMune若为null则实例化一个空对象
             foreach (RoleMenuOrButtonModel model in arrayMune == null ? new List <RoleMenuOrButtonModel>() : arrayMune)
             {
                 Predicate <SystemMenu> match = delegate(SystemMenu m) { if (m.Id == model.Menu)
                                                                         {
                                                                             return(true);
                                                                         }
                                                                         else
                                                                         {
                                                                             return(false);
                                                                         } };
                 SystemMenu menu = menuList.Find(match); //_SystemMenuService.GetKey(model.Menu);
                 role.Menu.Add(menu);
             }
             _SystemRoleService.Edit(role);
             _SystemRoleService.Save();
             return(Json(new { Code = 1, msg = "保存成功" }, JsonRequestBehavior.AllowGet));
         }
         return(Json(new { Code = -1, msg = "保存失败" }, JsonRequestBehavior.AllowGet));
     }
     catch (Exception error)
     {
         return(Json(new { Code = -1, msg = "保存失败:" + error.Message }, JsonRequestBehavior.AllowGet));
     }
 }