/// <summary> /// 保存用户角色 /// </summary> /// <param name="ID">用户ID</param> /// <param name="Role_Name">角色名称</param> /// <param name="Role_ID">角色ID</param> /// <returns></returns> public ActionResult SaveRole(int ID, int Role_ID) { using (LFAdminEntities hee = new LFAdminEntities()) { var turList = hee.T_User_Role.Where(o => o.User_ID == ID).ToList(); if (turList.Count > 0) { hee.T_User_Role.RemoveRange(turList); } //保存用户角色 T_User_Role ur = new T_User_Role(); ur.Role_ID = Role_ID; ur.User_ID = ID; hee.T_User_Role.Add(ur); //保存用户角色名称 var user = hee.T_User.Where(o => o.ID == ID).FirstOrDefault(); if (user != null) { var ro = hee.T_Role.Where(o => o.ID == Role_ID).FirstOrDefault(); if (ro != null) { user.Role_Name = ro.Role_Name; } } //保存用户权限 var rpList = hee.T_Role_Permission.Where(o => o.Role_ID == Role_ID).ToList(); if (rpList.Count() > 0) { var upList = hee.T_User_Permission.Where(o => o.User_ID == ID).ToList(); if (upList.Count() > 0) { hee.T_User_Permission.RemoveRange(upList); } foreach (var rp in rpList) { T_User_Permission up = new T_User_Permission(); up.User_ID = ID; up.Rule_Code = rp.Permission_Code; hee.T_User_Permission.Add(up); } } hee.SaveChanges(); rd.IsSuccess = "1"; rd.MessageString = "权限保存成功!"; LoggerHelper.Info(Session["JGLoginAccountID"].ToString(), "UserController-SaveRole", rd.MessageString); return(new JsonResult { Data = rd }); } }
private void AddOrModify(HttpContext context) { //=============================================================== //获取字段:【用户name】 string id, id_role, name, birthday, telephone, address, create_time, remarks, password; id = id_role = name = birthday = telephone = address = create_time = remarks = password = ""; //获取前台传来的值 if (null != context.Request.QueryString["id"]) { id = context.Request.QueryString["id"].ToString().Trim(); } if (null != context.Request.QueryString["id_role"]) { id_role = context.Request.QueryString["id_role"].ToString().Trim(); } if (null != context.Request.QueryString["name"]) { name = context.Request.QueryString["name"].ToString().Trim(); } if (null != context.Request.QueryString["birthday"]) { birthday = context.Request.QueryString["birthday"].ToString().Trim(); } if (null != context.Request.QueryString["telephone"]) { telephone = context.Request.QueryString["telephone"].ToString().Trim(); } if (null != context.Request.QueryString["address"]) { address = context.Request.QueryString["address"].ToString().Trim(); } if (null != context.Request.QueryString["password"]) { password = context.Request.QueryString["password"].ToString().Trim(); } if (null != context.Request.QueryString["create_time"]) { create_time = context.Request.QueryString["create_time"].ToString().Trim(); } if (null != context.Request.QueryString["remarks"]) { remarks = context.Request.QueryString["remarks"].ToString().Trim(); } //获取角色信息 T_Role t_role = new T_Role(); if (id_role != "") { t_role = bll_role.GetModel(Convert.ToInt32(id_role)); } Model.T_User t_user = new Model.T_User(); if (method == "add") { //检查用户名是否已经存在 DataSet ds = bll_user.GetList(" name='" + name + "'"); if (ds.Tables[0].Rows.Count > 0) { message.flag = false; message.msg = "用户名已经存在"; } else { t_user.name = name; t_user.password = Util.GetMD5(password); if (birthday != "") { t_user.birthday = Convert.ToDateTime(birthday); } t_user.telephone = telephone; t_user.address = address; t_user.create_time = DateTime.Now; t_user.remarks = remarks; int n = bll_user.Add(t_user); //插入用户角色信息 Model.T_User_Role t_user_role = new T_User_Role(); if (id_role != "") { t_user_role.id_role = Convert.ToInt32(id_role); } t_user_role.id_user = n; bll_user_role.Add(t_user_role); if (n > 0) { message.flag = true; message.msg = "添加成功"; } else { message.flag = false; message.msg = "添加失败"; } } } else { t_user = bll_user.GetModel(Convert.ToInt32(id)); //检查用户名是否已经存在 DataSet ds = bll_user.GetList(" name='" + name + "' and id != " + id); if (ds.Tables[0].Rows.Count > 0) { message.flag = false; message.msg = "用户名已经存在"; } else { t_user.name = name; t_user.password = Util.GetMD5(password); if (birthday != "") { t_user.birthday = Convert.ToDateTime(birthday); } t_user.telephone = telephone; t_user.address = address; t_user.create_time = DateTime.Now; t_user.remarks = remarks; bool flag = bll_user.Update(t_user); //删除旧的在插入新的 bll_user_role.DeleteByWhere(" id_user = "******"") { t_user_role.id_role = Convert.ToInt32(id_role); } t_user_role.id_user = Convert.ToInt32(id); bll_user_role.Add(t_user_role); if (flag) { message.flag = true; message.msg = "修改成功"; } else { message.flag = false; message.msg = "修改失败"; } } } String jsonString = JsonHelper.Object2Json <Message>(message); context.Response.Write(jsonString); }