部门 #

功能介绍 #

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; }
    }

使用说明 #

  1. 引用nuget包Mal3s.Server.SDK
  2. 配置文件appsettings.json中NacosConfig节点的Listeners添加配置
{
        "Optional": false,
        "DataId": "netcore-webapi.json",
        "Group": "DEFAULT_GROUP"
},
  1. 微服务配置
  services.AddServerApiService(_configuration);
  1. 注入服务
private readonly IHttpSystemApi _httpSystemApi;
 public HomeController(IHttpSystemApi api)
{
  _httpSystemApi = api;
}
  1. 调用基础服务方法
 var result = await _sysApi.GetDepartmentAsync("276306214537659653");
var result = await _sysApi.DepartmentSelectorAsync("276306214537659653");
 var result = await _sysApi.GetDepartmentAsync("276306214537659653");     
上次更新: 3/10/2023, 5:33:48 PM