/// <summary> /// 添加用户 /// </summary> /// <param name="userInfo">前端用户信息</param> /// <returns>OK</returns> public ActionResult Add(UserInfoRoleInfo userInfoRoleInfo) { var uCode = UserInfoService.GetEntities(u => (u.UCode == userInfoRoleInfo.UCode && u.IsDeleted == false)).FirstOrDefault(); if (uCode == null) { UserInfo userInfo = new UserInfo { UCode = userInfoRoleInfo.UCode, UName = userInfoRoleInfo.UName, Pwd = userInfoRoleInfo.Pwd.ToMD5(), //MD5加密 StatusFlag = userInfoRoleInfo.StatusFlag, Remark = userInfoRoleInfo.Remark, SubTime = DateTime.Now }; int insertedUserId = UserInfoService.Add(userInfo).Id; int roleId = userInfoRoleInfo.RId; //设置用户角色 R_UserInfo_RoleInfoService.ProcessSetRole(insertedUserId, roleId); //写操作日志 OperationLogService.Add("添加员工", "系统管理", LoginInfo, userInfoRoleInfo.UName, ""); return(Content("Ok")); } else { return(Content("fail")); } }
public ActionResult GetActions() { var userRole = R_UserInfo_RoleInfoService.GetEntities(u => (u.UserInfoId == LoginInfo.Id && u.IsDeleted == false)); var rRoleAction = R_RoleInfo_ActionInfoService.GetEntities(r => r.IsDeleted == false); var action = ActionInfoService.GetEntities(a => true); //查找该用户角色对应的权限 var roleAction = from r in userRole from a in rRoleAction where r.RoleInfoId == a.RoleInfoId select a; //查找对应权限的名称 var actionName = (from r in roleAction from a in action where r.ActionInfoId == a.Id select a.ActionName).ToList(); return(Json(actionName, JsonRequestBehavior.AllowGet)); }
//给用户设置角色 public ActionResult ProcessSetRole(int UId) { //第一:当前用户的id ----uid //第二:当前用户在角色关联表中的ID UserInfo user = UserInfoService.GetEntities(u => u.Id == UId).FirstOrDefault(); var allUserInfoIds = (from r in user.R_UserInfo_RoleInfo where r.UserInfoId == UId && r.DelFlag == delflagNormal select r.Id).ToList(); for (int i = 0; i < allUserInfoIds.Count(); i++) { int userInfoId = Convert.ToInt32(allUserInfoIds[i]); var rUserRole = R_UserInfo_RoleInfoService.GetEntities(r => r.Id == userInfoId).FirstOrDefault(); R_UserInfo_RoleInfoService.Delete(rUserRole); } //第三:所有打上对勾的角色 ----list List <int> setRoleIdList = new List <int>(); foreach (var key in Request.Form.AllKeys) { if (key.StartsWith("ckb_")) { int roleId = int.Parse(key.Replace("ckb_", "")); setRoleIdList.Add(roleId); } } for (int i = 0; i < setRoleIdList.Count; i++) { int roleId = Convert.ToInt32(setRoleIdList[i]); R_UserInfo_RoleInfo rUserInfoRoleInfo = new R_UserInfo_RoleInfo(); rUserInfoRoleInfo.UserInfoId = UId; rUserInfoRoleInfo.RoleInfoId = roleId; rUserInfoRoleInfo.DelFlag = delflagNormal; R_UserInfo_RoleInfoService.Add(rUserInfoRoleInfo); } return(Content("Ok")); }