| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- using System;
- using System.Collections.Generic;
- using System.Collections.ObjectModel;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace SKMC.Api.Client.Access
- {
- /// <summary>
- /// 角色权限访问接口
- /// </summary>
- public interface IClientRoleAccesser
- {
- /// <summary>
- /// 当前角色
- /// </summary>
- ClientRole UserRole { get; set; }
- /// <summary>
- /// 权限标识, 切换权限时变更
- /// </summary>
- int AccessToken { get; set; }
- /// <summary>
- /// 所有角色列表(下拉选择)
- /// </summary>
- ObservableCollection<ClientRole> ClientRoles { get; set; }
- /// <summary>
- /// 角色登录
- /// </summary>
- /// <param name="roleCode">角色码</param>
- /// <param name="password">登录密码</param>
- /// <param name="action">后置动作</param>
- /// <returns></returns>
- bool Login(string roleCode, string password, Action action = null);
- /// <summary>
- /// 当前角色登出
- /// </summary>
- /// <param name="action">后置动作</param>
- void Logout(Action action = null);
- /// <summary>
- /// 密码验证
- /// </summary>
- /// <param name="roleCode">角色码</param>
- /// <param name="password">登录密码</param>
- /// <param name="action">后置动作</param>
- /// <returns></returns>
- bool CheckPassword(string roleCode, string password, Action action = null);
- /// <summary>
- /// 更改密码
- /// </summary>
- /// <param name="roleCode">角色码</param>
- /// <param name="password">登录密码</param>
- /// <param name="newpwd">新密码</param>
- void ChangePassword(string roleCode, string password, string newpwd);
- /// <summary>
- /// 权限验证
- /// </summary>
- /// <param name="accessCode"></param>
- /// <returns></returns>
- bool HasAccess(string accessCode);
- /// <summary>
- /// 权限验证, 并根据设备状态匹配
- /// </summary>
- /// <param name="accessCode"></param>
- /// <returns></returns>
- bool HasAccess(string accessCode, byte deviceStatus);
- /// <summary>
- /// 加载角色(权限)
- /// </summary>
- /// <param name="roleCode">角色码, null表示初始角色</param>
- /// <returns></returns>
- ClientRole LoadRole(string roleCode = null, Action action = null);
- /// <summary>
- /// 加载角色的事件
- /// </summary>
- event Action LoadRoleEvent;
- /// <summary>
- /// 卸载角色(权限)
- /// </summary>
- void UnloadRole(Action action = null);
- }
- }
|