From d64443d5fd9c57c5098e6ffb28ac12ecc5d15ffb Mon Sep 17 00:00:00 2001 From: Fu Diwei Date: Mon, 15 Jan 2024 21:54:30 +0800 Subject: [PATCH] =?UTF-8?q?feat(wxapi):=20=E6=96=B0=E5=A2=9E=E5=B0=8F?= =?UTF-8?q?=E7=A8=8B=E5=BA=8F=E7=9F=AD=E5=89=A7=E6=92=AD=E6=94=BE=E5=99=A8?= =?UTF-8?q?=E6=8E=A8=E8=8D=90=E4=BD=8D=E6=8E=A7=E5=88=B6=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...echatApiClientExecuteWxaDramaExtensions.cs | 32 +++++++++++++++++++ ...amaSetPlayerDramaRecommendSwitchRequest.cs | 22 +++++++++++++ ...maSetPlayerDramaRecommendSwitchResponse.cs | 9 ++++++ ...aSetPlayerDramaRecommendSwitchRequest.json | 4 +++ 4 files changed, 67 insertions(+) create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Api/Extensions/WechatApiClientExecuteWxaDramaExtensions.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Api/Models/WxaDrama/WxaDramaSetPlayerDramaRecommendSwitchRequest.cs create mode 100644 src/SKIT.FlurlHttpClient.Wechat.Api/Models/WxaDrama/WxaDramaSetPlayerDramaRecommendSwitchResponse.cs create mode 100644 test/SKIT.FlurlHttpClient.Wechat.Api.UnitTests/ModelSamples/WxaDrama/WxaDramaSetPlayerDramaRecommendSwitchRequest.json diff --git a/src/SKIT.FlurlHttpClient.Wechat.Api/Extensions/WechatApiClientExecuteWxaDramaExtensions.cs b/src/SKIT.FlurlHttpClient.Wechat.Api/Extensions/WechatApiClientExecuteWxaDramaExtensions.cs new file mode 100644 index 00000000..998835ba --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Api/Extensions/WechatApiClientExecuteWxaDramaExtensions.cs @@ -0,0 +1,32 @@ +using System; +using System.Net.Http; +using System.Threading; +using System.Threading.Tasks; +using Flurl; +using Flurl.Http; + +namespace SKIT.FlurlHttpClient.Wechat.Api +{ + public static class WechatApiClientExecuteWxaDramaExtensions + { + /// + /// 异步调用 [POST] /wxadrama/setplayerdramarecmdswitch 接口。 + /// REF: https://developers.weixin.qq.com/miniprogram/dev/platform-capabilities/industry/videoplayer.html + /// + /// + /// + /// + /// + public static async Task ExecuteWxaDramaSetPlayerDramaRecommendSwitchAsync(this WechatApiClient client, Models.WxaDramaSetPlayerDramaRecommendSwitchRequest 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, "wxadrama", "setplayerdramarecmdswitch") + .SetQueryParam("access_token", request.AccessToken); + + return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken); + } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Api/Models/WxaDrama/WxaDramaSetPlayerDramaRecommendSwitchRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.Api/Models/WxaDrama/WxaDramaSetPlayerDramaRecommendSwitchRequest.cs new file mode 100644 index 00000000..b0d14ed8 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Api/Models/WxaDrama/WxaDramaSetPlayerDramaRecommendSwitchRequest.cs @@ -0,0 +1,22 @@ +namespace SKIT.FlurlHttpClient.Wechat.Api.Models +{ + /// + /// 表示 [POST] /wxadrama/setplayerdramarecmdswitch 接口的请求。 + /// + public class WxaDramaSetPlayerDramaRecommendSwitchRequest : WechatApiRequest, IInferable + { + /// + /// 获取或设置推荐位类型。 + /// + [Newtonsoft.Json.JsonProperty("entry_type")] + [System.Text.Json.Serialization.JsonPropertyName("entry_type")] + public int EntryType { get; set; } + + /// + /// 获取或设置是否打开。 + /// + [Newtonsoft.Json.JsonProperty("switch_status")] + [System.Text.Json.Serialization.JsonPropertyName("switch_status")] + public bool IsOpen { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.Api/Models/WxaDrama/WxaDramaSetPlayerDramaRecommendSwitchResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.Api/Models/WxaDrama/WxaDramaSetPlayerDramaRecommendSwitchResponse.cs new file mode 100644 index 00000000..a09ecc4e --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.Api/Models/WxaDrama/WxaDramaSetPlayerDramaRecommendSwitchResponse.cs @@ -0,0 +1,9 @@ +namespace SKIT.FlurlHttpClient.Wechat.Api.Models +{ + /// + /// 表示 [POST] /wxadrama/setplayerdramarecmdswitch 接口的响应。 + /// + public class WxaDramaSetPlayerDramaRecommendSwitchResponse : WechatApiResponse + { + } +} diff --git a/test/SKIT.FlurlHttpClient.Wechat.Api.UnitTests/ModelSamples/WxaDrama/WxaDramaSetPlayerDramaRecommendSwitchRequest.json b/test/SKIT.FlurlHttpClient.Wechat.Api.UnitTests/ModelSamples/WxaDrama/WxaDramaSetPlayerDramaRecommendSwitchRequest.json new file mode 100644 index 00000000..622d063e --- /dev/null +++ b/test/SKIT.FlurlHttpClient.Wechat.Api.UnitTests/ModelSamples/WxaDrama/WxaDramaSetPlayerDramaRecommendSwitchRequest.json @@ -0,0 +1,4 @@ +{ + "entry_type": 1, + "switch_status": true +}