部门 #
功能介绍 #
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");