/// <summary> /// 授予角色 /// </summary> /// <param name="role"></param> public Role GiveRole(Role role) { //角色是否已存在 if (RoleUserInfoRepo.Read().Exists(ru => ru.RoleId == role.Id && ru.UserId == this.Id)) { return(role); } //检查互斥 List <Role> linkRoleList = this.DeepRoleList; foreach (Role linkRole in linkRoleList) { if (RoleMutex.CheckMutex(role, linkRole, RoleMutexType.Static)) { throw new Exception("授予的角色和当前用户或其所在的组织的角色存在静态互斥关系"); } } RoleUserInfo roleUserInfo = new RoleUserInfo(); roleUserInfo.RoleId = role.Id; roleUserInfo.UserId = this.Id; RoleUserInfoRepo.Add(roleUserInfo); return(role); }
/// <summary> /// 取消角色 /// </summary> /// <param name="role"></param> public Role CancelRole(Role role) { RoleUserInfo roleUserInfo = new RoleUserInfo(); roleUserInfo.RoleId = role.Id; roleUserInfo.UserId = this.Id; RoleUserInfoRepo.Delete(roleUserInfo); return(role); }
public int Add(RoleUserInfo info) { return(base.Add <RoleUserInfo>(info)); }
public void AddUserRoleInfo(RoleUserInfo item) { Add(item); }