public JsonResult RoleSave() { NcManagerRole model = new NcManagerRole(); List <NcManagerRoleValue> modelRoleValue = new List <NcManagerRoleValue>(); action = Request.Form["act"]; if (action.ToLower() == JHEnums.ActionEnum.Edit.ToString().ToLower())//修改 { int id = Utils.StrToInt(Request.Form["id"]); model = dblEf.Find <NcManagerRole>(id); model = RoleSetModel(model, out modelRoleValue); if (RoleUpdate(model, modelRoleValue)) { strStatus = "1"; strMsg = "保存成功"; } } else//新增 { model = RoleSetModel(model, out modelRoleValue); if (RoleAdd(model, modelRoleValue) > 0) { strStatus = "1"; strMsg = "保存成功"; } } return(Json(new { status = strStatus, msg = strMsg })); }
public bool RoleUpdate(NcManagerRole model, List <NcManagerRoleValue> modelRoleValue) { StringBuilder strSql3 = new StringBuilder(); //添加权限 if (modelRoleValue != null) { foreach (NcManagerRoleValue modelt in modelRoleValue) { strSql3.Append("insert into nc_manager_role_value("); strSql3.Append("role_id,nav_name,action_type)"); strSql3.Append(" values ("); strSql3.Append("" + model.Id + ",'" + modelt.NavName + "','" + modelt.ActionType + "');"); } strSql3.Append(@"if @@error<>0 begin rollback tran select N'fail' as result return end" ); } //1.先删除该角色所有权限 //2.添加权限 string sql = @" Begin Tran update nc_manager_role set role_name=@role_name,role_type=@role_type,is_sys=@is_sys where id=@id if @@error<>0 begin rollback tran select N'fail' as result return end delete from nc_manager_role_value where role_id=@role_id if @@error<>0 begin rollback tran select N'fail' as result return end " + strSql3.ToString() + @" select N'success' as result Commit Tran "; DbParameters p = new DbParameters(); p.Add("@role_name", model.RoleName); p.Add("@role_type", model.RoleType); p.Add("@is_sys", model.IsSys); p.Add("@id", model.Id); p.Add("@role_id", model.Id); string result = Utils.ObjectToStr(Dbl.ZZCMS.CreateSqlScalar(sql, p)); return(result == "success"); }
public int RoleAdd(NcManagerRole model, List <NcManagerRoleValue> modelRoleValue) { StringBuilder strSql2 = new StringBuilder(); if (modelRoleValue != null) { foreach (NcManagerRoleValue modelt in modelRoleValue) { strSql2.Append("insert into nc_manager_role_value("); strSql2.Append("role_id,nav_name,action_type)"); strSql2.Append(" values ("); strSql2.Append("@ReturnValue,'" + modelt.NavName + "','" + modelt.ActionType + "');"); } strSql2.Append(@"if @@error<>0 begin rollback tran select N'fail' as result return end" ); } //1.添加角色 //2.添加对应的权限 string sql = @" Begin Tran declare @ReturnValue as int insert into nc_manager_role(role_name,role_type,is_sys) values(@role_name,@role_type,@is_sys);set @ReturnValue= @@IDENTITY if @@error<>0 begin rollback tran select N'fail' as result return end " + strSql2.ToString() + @" select N'success' as result Commit Tran "; DbParameters p = new DbParameters(); p.Add("@role_name", model.RoleName); p.Add("@role_type", model.RoleType); p.Add("@is_sys", model.IsSys); string result = Utils.ObjectToStr(Dbl.ZZCMS.CreateSqlScalar(sql, p)); return(result == "success" ? 1 : 0); }
/// <summary> /// 获取系统菜单 /// </summary> public JsonResult getSysMenu() { int strStatus = 0; string msg = string.Empty; if (!IsAdminLogin()) { msg = "管理员信息异常"; strStatus = 1; return(Json(new { status = strStatus, message = msg })); } NcManagerRole roleModel = dblEf.NcManagerRole.Where(mr => mr.Id == siteAdminInfo.RoleId).FirstOrDefault(); //获得管理角色信息 if (roleModel == null) { msg = "获取角色异常"; strStatus = 1; return(Json(new { status = strStatus, message = msg })); } List <NcManagerRoleValue> roleValueModel = null; if (siteAdminInfo.RoleType > 1) //排除超管 { roleValueModel = dblEf.NcManagerRoleValue.Where(mrv => mrv.RoleId == siteAdminInfo.RoleId).ToList(); //管理员值 if (roleValueModel == null) { msg = "获取角色异常"; strStatus = 1; return(Json(new { status = strStatus, message = msg })); } } DataTable dt = base.GetNavCacheList("nav_type='" + JHEnums.NavigationEnum.System.ToString() + "'");//此处使用缓存 StringBuilder strJson = new StringBuilder(); msg = get_nav_tree(strJson, dt, 0, (int)roleModel.RoleType, roleValueModel); return(Json(new { status = strStatus, message = msg })); }
/// <summary> /// 角色获取赋值 /// </summary> private NcManagerRole RoleSetModel(NcManagerRole model, out List <NcManagerRoleValue> modelRoleValue) { model.RoleType = 2; model.RoleName = Request.Form["RoleName"]; model.IsSys = 0; modelRoleValue = new List <NcManagerRoleValue>(); string[] nav_name = Request.Form["hidName"].ToString().Split(','); for (int i = 0; i < nav_name.Length; i++) { string action_type = Request.Form[nav_name[i]]; if (!string.IsNullOrEmpty(action_type)) { for (int j = 0; j < action_type.Split(',').Length; j++) { string s = action_type.Split(',')[j]; modelRoleValue.Add(new NcManagerRoleValue { RoleId = model.Id, NavName = nav_name[i], ActionType = s }); } } } return(model); }
public ActionResult Role_Edit() { action = Request.Query["act"]; int id = Utils.StrToInt(Request.Query["id"]); CacheHelper.Remove("permisson" + id);//角色编辑清空缓存 NcManagerRole model = new NcManagerRole(); List <NcManagerRoleValue> modelRoleValue = new List <NcManagerRoleValue>(); if (action.ToLower() == JHEnums.ActionEnum.Edit.ToString().ToLower() && id != 0) //修改 { model = BindRoleById(id); modelRoleValue = dblEf.NcManagerRoleValue.Where(mrv => mrv.RoleId == id).ToList(); } NcManager adminModel = siteAdminInfo; //获得当前登录管理员信息 ViewBag.action = action; ViewBag.id = id; ViewBag.DtRoleNav = RoleNavBind((int)adminModel.RoleType, (int)adminModel.RoleId); ViewBag.AdminModel = adminModel; ViewBag.ListRoleValue = modelRoleValue; return(View(model)); }
/// <summary> /// 根据角色id获取角色model /// </summary> /// <param name="id"></param> /// <returns></returns> private NcManagerRole BindRoleById(int id) { NcManagerRole model = dblEf.Find <NcManagerRole>(id); return(model); }