using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Security.Claims;
|
using System.Text;
|
using System.Threading.Tasks;
|
|
namespace WIDESEA_Core.HttpContextUser
|
{
|
public interface IUser
|
{
|
/// <summary>
|
/// 名称
|
/// </summary>
|
string UserName { get; }
|
|
/// <summary>
|
/// UserId
|
/// </summary>
|
int UserId { get; }
|
|
/// <summary>
|
/// 租户ID
|
/// </summary>
|
long TenantId { get; }
|
|
int RoleId { get; }
|
|
string Token { get; }
|
|
int MenuType { get; }
|
|
/// <summary>
|
/// 更新用户令牌
|
/// </summary>
|
/// <param name="token">新的令牌字符串</param>
|
void UpdateToke(string token);
|
|
/// <summary>
|
/// 判断当前用户是否已认证
|
/// </summary>
|
/// <returns>如果用户已认证返回true,否则返回false</returns>
|
bool IsAuthenticated();
|
|
/// <summary>
|
/// 获取用户身份声明集合
|
/// </summary>
|
/// <returns>包含用户身份声明的可枚举集合</returns>
|
IEnumerable<Claim> GetClaimsIdentity();
|
|
/// <summary>
|
/// 根据声明类型获取声明值列表
|
/// </summary>
|
/// <param name="ClaimType">要查询的声明类型</param>
|
/// <returns>匹配指定类型的声明值列表</returns>
|
List<string> GetClaimValueByType(string ClaimType);
|
|
/// <summary>
|
/// 获取当前用户的认证令牌
|
/// </summary>
|
/// <returns>用户认证令牌字符串</returns>
|
string GetToken();
|
|
/// <summary>
|
/// 从令牌中获取指定类型的用户信息
|
/// </summary>
|
/// <param name="ClaimType">要获取的声明类型</param>
|
/// <returns>包含用户信息的字符串列表</returns>
|
List<string> GetUserInfoFromToken(string ClaimType);
|
|
bool IsSuperAdmin { get; }
|
|
/// <summary>
|
/// 判断指定角色ID是否为超级管理员
|
/// </summary>
|
/// <param name="roleId">要检查的角色ID</param>
|
/// <returns>如果是超级管理员返回true,否则返回false</returns>
|
bool IsRoleIdSuperAdmin(int roleId);
|
}
|
}
|