/// <summary> /// 授予指定角色指定的操作权限 /// </summary> /// <param name="userInfo">用户</param> /// <param name="roleName">角色名</param> /// <param name="permissionItemCode">权限编号</param> /// <returns>主键</returns> public string GrantRolePermission(UserInfo userInfo, string roleName, string permissionItemCode) { string returnValue = string.Empty; var parameter = ParameterUtil.CreateWithMessage(userInfo, MethodBase.GetCurrentMethod(), this.serviceName, string.Empty); ServiceUtil.ProcessRDIReadDb(userInfo, parameter, dbProvider => { var roleManager = new PiRoleManager(dbProvider, userInfo); var roleId = roleManager.GetId(PiRoleTable.FieldRealName, roleName); var permissionItemManager = new PiPermissionItemManager(dbProvider, userInfo); var permissionItemId = permissionItemManager.GetId(PiPermissionItemTable.FieldCode, permissionItemCode); if (!String.IsNullOrEmpty(roleId) && !String.IsNullOrEmpty(permissionItemId)) { var rolePermissionManager = new RolePermissionManager(dbProvider, userInfo); returnValue = rolePermissionManager.Grant(roleId, permissionItemId); } }); return(returnValue); }
public bool UserInRole(string userId, string roleCode) { var returnValue = false; if (string.IsNullOrEmpty(roleCode)) { return(false); } var roleManager = new PiRoleManager(this.DBProvider, this.UserInfo); var roleId = roleManager.GetId(PiRoleTable.FieldDeleteMark, 0, PiRoleTable.FieldCode, roleCode); if (string.IsNullOrEmpty(roleId)) { return(false); } var roleIds = GetAllRoleIds(userId); returnValue = BusinessLogic.Exists(roleIds, roleId); return(returnValue); }
/// <summary> /// 用户是否在某个角色中 /// </summary> /// <param name="userId">用户主键</param> /// <param name="realName">角色</param> /// <returns>存在</returns> public bool IsInRole(string userId, string realName) { var returnValue = false; if (string.IsNullOrEmpty(realName)) { return(false); } var roleManager = new PiRoleManager(this.DBProvider, this.UserInfo); var roleId = roleManager.GetId(PiRoleTable.FieldDeleteMark, 0, PiRoleTable.FieldRealName, realName); if (string.IsNullOrEmpty(roleId)) { return(false); } var roleIds = GetAllRoleIds(userId); returnValue = StringHelper.Exists(roleIds, roleId); return(returnValue); }