部门 #
功能介绍 #
Mall3s获取主要通过nuget包封装(Mal3s.Server.SDK),可以获取公共用户、岗位、角色、部门、公司、站内信等各个基础服务。
备注:本地调试请启动Mall3s.Server项目,否则本地无法启动。
- 功能清单 - 根据公司获取部门(树形)
 
  /// <summary>
        /// 获取部门信息
        /// </summary>
        /// <param name="companyId">公司主键</param>
        /// <param name="keyword"></param>
        /// <param name="cancellationToken">cancellationToken</param>
        /// <returns>Success</returns>
        [HttpGet("api/permission/organize/{companyId}/Department")]
        ITask<RESTfulResult<DepartmentListTreeOutput>> SearchDepartmentAsync([Required] string companyId, string keyword, CancellationToken cancellationToken = default);
返回值
 public class DepartmentListTreeOutput
    {
        public List<DepartmentListOutput> list { get; set; }
    }
    /// <summary>
    /// 部门树列表输出
    /// </summary>
    [SuppressSniffer]
    public class DepartmentListOutput : TreeModel
    {
        /// <summary>
        /// 部门名称
        /// </summary>
        public string fullName { get; set; }
        /// <summary>
        /// 部门编码
        /// </summary>
        public string enCode { get; set; }
        /// <summary>
        /// 备注
        /// </summary>
        public string description { get; set; }
        /// <summary>
        /// 状态
        /// </summary>
        public int? enabledMark { get; set; }
        /// <summary>
        /// 部门经理(姓名/账号)
        /// </summary>
        public string manager { get; set; }
        /// <summary>
        /// 排序号
        /// </summary>
        public long? sortCode { get; set; }
    }
- 获取部门下拉框
/// <summary>
        /// 获取部门下拉框
        /// </summary>
        /// <param name="id"></param>
        /// <param name="cancellationToken">cancellationToken</param>
        /// <returns>Success</returns>
        [HttpGet("api/permission/organize/Department/Selector/{id}")]
        ITask<RESTfulResult<DepartmentListTreeOutput>> DepartmentSelectorAsync([Required] string id, CancellationToken cancellationToken = default);
返回值
同上
- 根据部门id获取部门信息
/// <summary>
        /// 根据Id获取部门信息
        /// </summary>
        /// <param name="id">主键</param>
        /// <param name="cancellationToken">cancellationToken</param>
        /// <returns>Success</returns>
        [HttpGet("api/permission/organize/Department/{id}")]
        ITask<RESTfulResult<DepartmentInfoOutput>> GetDepartmentAsync([Required] string id, CancellationToken cancellationToken = default);
返回值
/// <summary>
    /// 部门信息输出
    /// </summary>
    [SuppressSniffer]
    public class DepartmentInfoOutput
    {
        /// <summary>
        /// id
        /// </summary>
        public string id { get; set; }
        /// <summary>
        /// 上级ID
        /// </summary>
        public string parentId { get; set; }
        /// <summary>
        /// 部门名称
        /// </summary>
        public string fullName { get; set; }
        /// <summary>
        /// 部门编码
        /// </summary>
        public string enCode { get; set; }
        /// <summary>
        /// 状态
        /// </summary>
        public int? enabledMark { get; set; }
        /// <summary>
        /// 备注
        /// </summary>
        public string description { get; set; }
        /// <summary>
        /// 主管ID
        /// </summary>
        public string managerId { get; set; }
        /// <summary>
        /// 排序码
        /// </summary>
        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.GetDepartmentAsync("276306214537659653");
var result = await _sysApi.DepartmentSelectorAsync("276306214537659653");
 var result = await _sysApi.GetDepartmentAsync("276306214537659653");     
