feat(wxapi): 新增视频号小店兑换虚拟号码接口

This commit is contained in:
Fu Diwei
2024-04-29 20:24:26 +08:00
parent 292dd1ad18
commit 8053284ac2
5 changed files with 77 additions and 0 deletions

View File

@@ -2415,6 +2415,29 @@ namespace SKIT.FlurlHttpClient.Wechat.Api
return await client.SendFlurlRequestAsJsonAsync<Models.ChannelsECOrderSensitiveInfoDecodeResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /channels/ec/order/virtualtelnumber/get 接口。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://developers.weixin.qq.com/doc/channels/API/order/virtualtelnumber_get.html ]]>
/// </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.ChannelsECOrderVirtualTeleNumberGetResponse> ExecuteChannelsECOrderVirtualTeleNumberGetAsync(this WechatApiClient client, Models.ChannelsECOrderVirtualTeleNumberGetRequest 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
.CreateFlurlRequest(request, HttpMethod.Post, "channels", "ec", "order", "virtualtelnumber", "get")
.SetQueryParam("access_token", request.AccessToken);
return await client.SendFlurlRequestAsJsonAsync<Models.ChannelsECOrderVirtualTeleNumberGetResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
#region ECOrder/Address
/// <summary>
/// <para>异步调用 [POST] /channels/ec/order/address/update 接口。</para>

View File

@@ -0,0 +1,15 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /channels/ec/order/virtualtelnumber/get 接口的请求。</para>
/// </summary>
public class ChannelsECOrderVirtualTeleNumberGetRequest : WechatApiRequest, IInferable<ChannelsECOrderVirtualTeleNumberGetRequest, ChannelsECOrderVirtualTeleNumberGetResponse>
{
/// <summary>
/// 获取或设置订单 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("order_id")]
[System.Text.Json.Serialization.JsonPropertyName("order_id")]
public string OrderId { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,29 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /channels/ec/order/virtualtelnumber/get 接口的响应。</para>
/// </summary>
public class ChannelsECOrderVirtualTeleNumberGetResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置虚拟号码。
/// </summary>
[Newtonsoft.Json.JsonProperty("virtual_tel_number")]
[System.Text.Json.Serialization.JsonPropertyName("virtual_tel_number")]
public string VirtualTeleNumber { get; set; } = default!;
/// <summary>
/// 获取或设置虚拟号码过期时间戳。
/// </summary>
[Newtonsoft.Json.JsonProperty("virtual_tel_expire_time")]
[System.Text.Json.Serialization.JsonPropertyName("virtual_tel_expire_time")]
public long VirtualTeleNumberExpireTimestamp { get; set; }
/// <summary>
/// 获取或设置兑换虚拟号码次数。
/// </summary>
[Newtonsoft.Json.JsonProperty("get_virtual_tel_cnt")]
[System.Text.Json.Serialization.JsonPropertyName("get_virtual_tel_cnt")]
public int GetVirtualTeleNumberCount { get; set; }
}
}

View File

@@ -0,0 +1,7 @@
{
"errcode": 0,
"errmsg": "ok",
"virtual_tel_number": "",
"virtual_tel_expire_time": 0,
"get_virtual_tel_cnt": 0
}