feat(work): 新增企业邮箱账号管理相关接口

This commit is contained in:
Fu Diwei 2022-03-14 16:54:19 +08:00
parent ca042d5fd3
commit d740f89db6
6 changed files with 68 additions and 1 deletions

View File

@ -221,5 +221,25 @@ namespace SKIT.FlurlHttpClient.Wechat.Work
return await client.SendRequestWithJsonAsync<Models.CgibinExmailPublicMailGetResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
#endregion
/// <summary>
/// <para>异步调用 [POST] /cgi-bin/exmail/account/act_email 接口。</para>
/// <para>REF: https://developer.work.weixin.qq.com/document/path/95512 </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.CgibinExmailAccountActiveEmailResponse> ExecuteCgibinExmailAccountActiveEmailAsync(this WechatWorkClient client, Models.CgibinExmailAccountActiveEmailRequest request, CancellationToken cancellationToken = default)
{
if (client is null) throw new ArgumentNullException(nameof(client));
if (request is null) throw new ArgumentNullException(nameof(request));
IFlurlRequest flurlReq = client
.CreateRequest(request, HttpMethod.Post, "cgi-bin", "exmail", "account", "act_email")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendRequestWithJsonAsync<Models.CgibinExmailAccountActiveEmailResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
}
}

View File

@ -0,0 +1,29 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/exmail/account/act_email 接口的请求。</para>
/// </summary>
public class CgibinExmailAccountActiveEmailRequest : WechatWorkRequest
{
/// <summary>
/// 获取或设置成员账号。
/// </summary>
[Newtonsoft.Json.JsonProperty("userid")]
[System.Text.Json.Serialization.JsonPropertyName("userid")]
public string? UserId { get; set; }
/// <summary>
/// 获取或设置业务邮箱 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("publicemail_id")]
[System.Text.Json.Serialization.JsonPropertyName("publicemail_id")]
public int? PublicMailId { get; set; }
/// <summary>
/// 获取或设置操作列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("type")]
[System.Text.Json.Serialization.JsonPropertyName("type")]
public int? Type { get; set; }
}
}

View File

@ -0,0 +1,9 @@
namespace SKIT.FlurlHttpClient.Wechat.Work.Models
{
/// <summary>
/// <para>表示 [POST] /cgi-bin/exmail/account/act_email 接口的响应。</para>
/// </summary>
public class CgibinExmailAccountActiveEmailResponse : WechatWorkResponse
{
}
}

View File

@ -6,7 +6,7 @@
public class CgibinExmailPublicMailDeleteRequest : WechatWorkRequest
{
/// <summary>
/// 获取或设置业务邮箱 ID
/// 获取或设置业务邮箱 ID
/// </summary>
[Newtonsoft.Json.JsonProperty("id")]
[System.Text.Json.Serialization.JsonPropertyName("id")]

View File

@ -0,0 +1,5 @@
{
"userid": "member",
"publicemail_id": 1,
"type": 1
}

View File

@ -0,0 +1,4 @@
{
"errcode": 0,
"errmsg": "ok"
}