public JsonResult ContrlModule(EditModules models) { BaseJsonData json = new BaseJsonData(); if (!User.Identity.IsAuthenticated) { json.msg_text = "没有登陆或登陆失效,请重新登陆后操作。"; json.msg_code = "notLogin"; goto next; } int user = PageValidate.FilterParam(User.Identity.Name); if (!RoleCheck.CheckHasAuthority(user, db, "系统管理")) { json.msg_text = "没有权限。"; json.msg_code = "NoPower"; goto next; } if (ModelState.IsValid) { string ctrl_name; foreach (ModuleInfo info in models.modules) { ctrl_name = info.name; var no1 = db.Role_vs_Controller.Where(x => x.rvc_role_id != 1 && x.rvc_controller == ctrl_name); if (no1.Count() > 0) { db.Role_vs_Controller.RemoveRange(no1); db.SaveChanges(); } if (info.roles != null && info.roles.Length > 0) { foreach (RoleInfo rinfo in info.roles) { Role_vs_Controller rvc = new Role_vs_Controller(); rvc.rvc_role_id = rinfo.id; rvc.rvc_controller = ctrl_name; if (db.Role_vs_Controller.Find(rvc.rvc_role_id, rvc.rvc_controller) == null) { db.Role_vs_Controller.Add(rvc); } } } } db.SaveChanges(); SysLog.WriteLog(user, "修改系统模块", IpHelper.GetIP(), "", 5, "", db); json.state = 1; json.msg_code = "success"; json.msg_text = "数据更新成功。"; DBCaches2.ClearCache("dic-module"); } else { json.msg_code = "error"; json.msg_text = "数据接收错误。"; } next: return(Json(json, JsonRequestBehavior.AllowGet)); }
public ActionResult ControllerRoles(ControllerRolesModel Model) { List <SelectOption> options = DropDownList.GetAllControllers(); ViewData["controllers"] = DropDownList.SetDropDownList(options); options = DropDownList.SysRolesSelect(); ViewData["roles"] = DropDownList.SetDropDownList(options); if (!User.Identity.IsAuthenticated) { ViewBag.msg = "系统管理员权限不允许修改。"; return(View(Model)); } if (Model.roleId == 1) { return(RedirectToRoute(new { controller = "Error", action = "Index", err = "没有权限!" })); } var cs = db.Role_vs_Controllers.Where(x => x.rvc_role_id == Model.roleId); db.Role_vs_Controllers.RemoveRange(cs); string[] list = Model.hascontrollers.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries); foreach (string citem in list) { if (string.IsNullOrEmpty(citem)) { continue; } Role_vs_Controller rcmodel = new Role_vs_Controller(); rcmodel.rvc_role_id = Model.roleId; rcmodel.rvc_controller = PageValidate.InputText(citem, 200); db.Role_vs_Controllers.Add(rcmodel); } try { db.SaveChanges(); ViewBag.msg = "添加成功。"; }catch (Exception e) { ViewBag.msg = "添加出错,请重新操作或联系管理员。"; } return(View(Model)); }