角色 #
功能介绍 #
Mall3s获取主要通过nuget包封装(Mal3s.Server.SDK),可以获取公共用户、岗位、角色、部门、公司、站内信等各个基础服务。
备注:本地调试请启动Mall3s.Server项目,否则本地无法启动。
- 功能清单 - 获取下拉框(类型+角色),树形
 
  /// <summary>
        /// 获取下拉框(类型+角色)
        /// </summary>
        /// <param name="cancellationToken">cancellationToken</param>
        /// <returns>Success</returns>
        [HttpGet("api/permission/role/Selector")]
        ITask<RESTfulResult<RoleListTreeOutput>> RoleSelectorAsync(CancellationToken cancellationToken = default);
返回值
  public class RoleListTreeOutput
    {
        public List<RoleSelectorOutput> list { get; set; }
    }
    /// <summary>
    /// 角色下拉输出
    /// </summary>
    [SuppressSniffer]
    public class RoleSelectorOutput : TreeModel
    {
        /// <summary>
        /// 名称
        /// </summary>
        public string fullName { get; set; }
        /// <summary>
        /// 类型
        /// </summary>
        public string type { get; set; }
        /// <summary>
        /// 编码
        /// </summary>
        public string enCode { get; set; }
        /// <summary>
        /// 删除标记
        /// </summary>
        [JsonIgnore]
        public int? deleteMark { get; set; }
        /// <summary>
        /// 有效标记
        /// </summary>
        [JsonIgnore]
        public int? enabledMark { get; set; }
        /// <summary>
        /// 排序
        /// </summary>
        [JsonIgnore]
        public long? sortCode { get; set; }
    }
- 根据id获取角色信息
  /// <summary>
        /// 根据Id获取角色信息
        /// </summary>
        /// <param name="id">主键</param>
        /// <param name="cancellationToken">cancellationToken</param>
        /// <returns>Success</returns>
        [HttpGet("api/permission/role/{id}")]
        ITask<RESTfulResult<RoleInfoOutput>> GetRoleAsync([Required] string id, CancellationToken cancellationToken = default);
返回值
 /// <summary>
    /// 角色信息输出
    /// </summary>
    [SuppressSniffer]
    public class RoleInfoOutput
    {
        /// <summary>
        /// 主键
        /// </summary>
        public string id { get; set; }
        /// <summary>
        /// 名称
        /// </summary>
        public string fullName { get; set; }
        /// <summary>
        /// 编码
        /// </summary>
        public string enCode { get; set; }
        /// <summary>
        /// 类型
        /// </summary>
        public string type { get; set; }
        /// <summary>
        /// 有效标记
        /// </summary>
        public int? enabledMark { get; set; }
        /// <summary>
        /// 描述
        /// </summary>
        public string description { get; set; }
        /// <summary>
        /// 排序
        /// </summary>
        public long? sortCode { get; set; }
    }
- 搜索角色(树形)
        /// <summary>
        /// 搜索角色
        /// </summary>
        /// <param name="keyword">名称,encode都可以查询</param>
        /// <param name="cancellationToken">cancellationToken</param>
        /// <returns>Success</returns>
        [HttpGet("api/permission/role")]
        ITask<RESTfulResult<RoleListTreeOutput>> SearchRolesAsync([PathQuery] KeywordInput input, CancellationToken cancellationToken = default);
返回值
 public class RoleListTreeOutput
    {
        public List<RoleSelectorOutput> list { get; set; }
    }
    /// <summary>
    /// 角色下拉输出
    /// </summary>
    [SuppressSniffer]
    public class RoleSelectorOutput : TreeModel
    {
        /// <summary>
        /// 名称
        /// </summary>
        public string fullName { get; set; }
        /// <summary>
        /// 类型
        /// </summary>
        public string type { get; set; }
        /// <summary>
        /// 编码
        /// </summary>
        public string enCode { get; set; }
        /// <summary>
        /// 删除标记
        /// </summary>
        [JsonIgnore]
        public int? deleteMark { get; set; }
        /// <summary>
        /// 有效标记
        /// </summary>
        [JsonIgnore]
        public int? enabledMark { get; set; }
        /// <summary>
        /// 排序
        /// </summary>
        [JsonIgnore]
        public long? sortCode { get; set; }
    }
使用说明 #
- 引用nuget包Mal3s.Server.SDK
- 配置文件appsettings.json中NacosConfig节点的Listeners添加配置
{
        "Optional": false,
        "DataId": "netcore-webapi.json",
        "Group": "DEFAULT_GROUP"
},
- 微服务配置
  services.AddServerApiService(_configuration);
- 注入服务
private readonly IHttpSystemApi _httpSystemApi;
 public HomeController(IHttpSystemApi api)
{
  _httpSystemApi = api;
}
- 调用基础服务方法
var result = await _sysApi.GetRoleAsync("27630621785954842);  
var result = await _sysApi.RoleSelectorAsync();
var result = await _sysApi.SearchRolesAsync(new Common.Filter.KeywordInput() { keyword = "2273720015" });
