feat(wxapi): 新增第三方平台小程序流量主代运营相关接口

This commit is contained in:
Fu Diwei
2023-01-16 17:30:45 +08:00
parent 4a5829162a
commit 8a20b838ae
79 changed files with 2717 additions and 0 deletions

View File

@@ -1201,5 +1201,489 @@ namespace SKIT.FlurlHttpClient.Wechat.Api
return await client.SendRequestWithJsonAsync<Models.WxaUpdateShowWxaItemResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
#endregion
#region AMS
#region AMS/Percentage
/// <summary>
/// <para>异步调用 [POST] /wxa/setdefaultamsinfo 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/percentage/SetShareRatio.html </para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/percentage/SetCustomShareRatio.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaSetDefaultAMSInfoResponse> ExecuteWxaSetDefaultAMSInfoAsync(this WechatApiClient client, Models.WxaSetDefaultAMSInfoRequest request, CancellationToken cancellationToken = default)
{
if (client is null) throw new ArgumentNullException(nameof(client));
if (request is null) throw new ArgumentNullException(nameof(request));
if (request.AppId == null)
request.AppId = client.Credentials.AppId;
IFlurlRequest flurlReq = client
.CreateRequest(request, HttpMethod.Post, "wxa", "setdefaultamsinfo")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", request.Action);
return await client.SendRequestWithJsonAsync<Models.WxaSetDefaultAMSInfoResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/getdefaultamsinfo 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/percentage/GetShareRatio.html </para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/percentage/GetCustomShareRatio.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaGetDefaultAMSInfoResponse> ExecuteWxaGetDefaultAMSInfoAsync(this WechatApiClient client, Models.WxaGetDefaultAMSInfoRequest request, CancellationToken cancellationToken = default)
{
if (client is null) throw new ArgumentNullException(nameof(client));
if (request is null) throw new ArgumentNullException(nameof(request));
if (request.AppId == null)
request.AppId = client.Credentials.AppId;
IFlurlRequest flurlReq = client
.CreateRequest(request, HttpMethod.Post, "wxa", "getdefaultamsinfo")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", request.Action);
return await client.SendRequestWithJsonAsync<Models.WxaGetDefaultAMSInfoResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
#endregion
#region AMS/Open
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_check_can_open_publisher 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/open/AgencyCheckCanOpenPublisher.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencyCheckCanOpenPublisherResponse> ExecuteWxaOperationAMSAgencyCheckCanOpenPublisherAsync(this WechatApiClient client, Models.WxaOperationAMSAgencyCheckCanOpenPublisherRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_check_can_open_publisher");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencyCheckCanOpenPublisherResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_create_publisher 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/open/AgencyCreatePublisher.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencyCreatePublisherResponse> ExecuteWxaOperationAMSAgencyCreatePublisherAsync(this WechatApiClient client, Models.WxaOperationAMSAgencyCreatePublisherRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_create_publisher");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencyCreatePublisherResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
#endregion
#region AMS/AdManagement
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_create_adunit 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-mgnt/AgencyCreateAdunit.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencyCreateAdUnitResponse> ExecuteWxaOperationAMSAgencyCreateAdUnitAsync(this WechatApiClient client, Models.WxaOperationAMSAgencyCreateAdUnitRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_create_adunit");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencyCreateAdUnitResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_update_adunit 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-mgnt/AgencyUpdateAdunit.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencyUpdateAdUnitResponse> ExecuteWxaOperationAMSAgencyUpdateAdUnitAsync(this WechatApiClient client, Models.WxaOperationAMSAgencyUpdateAdUnitRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_update_adunit");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencyUpdateAdUnitResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_get_tmpl_type 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-mgnt/AgencyGetTmplType.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencyGetTemplateTypeResponse> ExecuteWxaOperationAMSAgencyGetTemplateTypeAsync(this WechatApiClient client, Models.WxaOperationAMSAgencyGetTemplateTypeRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_get_tmpl_type");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencyGetTemplateTypeResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=get_agency_ad_unit_list 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-mgnt/GetAgencyTmplIdList.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSGetAgencyAdUnitListResponse> ExecuteWxaOperationAMSGetAgencyAdUnitListAsync(this WechatApiClient client, Models.WxaOperationAMSGetAgencyAdUnitListRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "get_agency_ad_unit_list");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSGetAgencyAdUnitListResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_set_cover_adpos_status 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-mgnt/SetCoverAdposStatus.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencySetCoverAdPositionStatusResponse> ExecuteWxaOperationAMSAgencySetCoverAdPositionStatusAsync(this WechatApiClient client, Models.WxaOperationAMSAgencySetCoverAdPositionStatusRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_set_cover_adpos_status");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencySetCoverAdPositionStatusResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_set_cover_adpos_scene 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-mgnt/SetCoverAdposScene.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencySetCoverAdPositionSceneResponse> ExecuteWxaOperationAMSAgencySetCoverAdPositionSceneAsync(this WechatApiClient client, Models.WxaOperationAMSAgencySetCoverAdPositionSceneRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_set_cover_adpos_scene");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencySetCoverAdPositionSceneResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_get_cover_adpos_status 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-mgnt/GetCoverAdposStatus.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencyGetCoverAdPositionStatusResponse> ExecuteWxaOperationAMSAgencyGetCoverAdPositionStatusAsync(this WechatApiClient client, Models.WxaOperationAMSAgencyGetCoverAdPositionStatusRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_get_cover_adpos_status");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencyGetCoverAdPositionStatusResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_get_cover_adpos_scene 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-mgnt/GetCoverAdposScene.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencyGetCoverAdPositionSceneResponse> ExecuteWxaOperationAMSAgencyGetCoverAdPositionSceneAsync(this WechatApiClient client, Models.WxaOperationAMSAgencyGetCoverAdPositionSceneRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_get_cover_adpos_scene");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencyGetCoverAdPositionSceneResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_get_adunit_list 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-mgnt/GetAdunitList.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencyGetAdUnitListResponse> ExecuteWxaOperationAMSAgencyGetAdUnitListAsync(this WechatApiClient client, Models.WxaOperationAMSAgencyGetAdUnitListRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_get_adunit_list");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencyGetAdUnitListResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_get_adunit_code 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-mgnt/GetAdunitCode.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencyGetAdUnitCodeResponse> ExecuteWxaOperationAMSAgencyGetAdUnitCodeAsync(this WechatApiClient client, Models.WxaOperationAMSAgencyGetAdUnitCodeRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_get_adunit_code");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencyGetAdUnitCodeResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
#endregion
#region AMS/AdBlack
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_get_black_list 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-black/GetBlackList.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencyGetBlackListResponse> ExecuteWxaOperationAMSAgencyGetBlackListAsync(this WechatApiClient client, Models.WxaOperationAMSAgencyGetBlackListRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_get_black_list");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencyGetBlackListResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_set_black_list 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-black/SetBlackList.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencySetBlackListResponse> ExecuteWxaOperationAMSAgencySetBlackListAsync(this WechatApiClient client, Models.WxaOperationAMSAgencySetBlackListRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_set_black_list");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencySetBlackListResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_get_mp_amscategory_blacklist 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-black/GetAmsCategoryBlackList.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencyGetMpAMSCategoryBlackListResponse> ExecuteWxaOperationAMSAgencyGetMpAMSCategoryBlackListAsync(this WechatApiClient client, Models.WxaOperationAMSAgencyGetMpAMSCategoryBlackListRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_get_mp_amscategory_blacklist");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencyGetMpAMSCategoryBlackListResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_set_mp_amscategory_blacklist 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-black/SetAmsCategoryBlackList.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencySetMpAMSCategoryBlackListResponse> ExecuteWxaOperationAMSAgencySetMpAMSCategoryBlackListAsync(this WechatApiClient client, Models.WxaOperationAMSAgencySetMpAMSCategoryBlackListRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_set_mp_amscategory_blacklist");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencySetMpAMSCategoryBlackListResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
#endregion
#region AMS/AdData
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_get_adpos_genenral 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-data/GetAdposGenenral.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencyGetAdPositionGenenralResponse> ExecuteWxaOperationAMSAgencyGetAdPositionGenenralAsync(this WechatApiClient client, Models.WxaOperationAMSAgencyGetAdPositionGenenralRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_get_adpos_genenral");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencyGetAdPositionGenenralResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_get_adunit_general 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/ad-data/GetAdposDetail.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencyGetAdUnitGenenralResponse> ExecuteWxaOperationAMSAgencyGetAdUnitGenenralAsync(this WechatApiClient client, Models.WxaOperationAMSAgencyGetAdUnitGenenralRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_get_adunit_general");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencyGetAdUnitGenenralResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
#endregion
#region AMS/Settlement
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=agency_get_settlement 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/settlement/GetSettlement.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSAgencyGetSettlementResponse> ExecuteWxaOperationAMSAgencyGetSettlementAsync(this WechatApiClient client, Models.WxaOperationAMSAgencyGetSettlementRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "agency_get_settlement");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSAgencyGetSettlementResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
/// <summary>
/// <para>异步调用 [POST] /wxa/operationams?action=get_agency_settled_revenue 接口。</para>
/// <para>REF: https://developers.weixin.qq.com/doc/oplatform/openApi/OpenApiDoc/ams/settlement/GetAgencySettlement.html </para>
/// </summary>
/// <param name="client"></param>
/// <param name="request"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
public static async Task<Models.WxaOperationAMSGetAgencySettledRevenueResponse> ExecuteWxaOperationAMSGetAgencySettledRevenueAsync(this WechatApiClient client, Models.WxaOperationAMSGetAgencySettledRevenueRequest 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, "wxa", "operationams")
.SetQueryParam("access_token", request.AccessToken)
.SetQueryParam("action", "get_agency_settled_revenue");
return await client.SendRequestWithJsonAsync<Models.WxaOperationAMSGetAgencySettledRevenueResponse>(flurlReq, data: request, cancellationToken: cancellationToken);
}
#endregion
#endregion
}
}

View File

@@ -0,0 +1,9 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_black_list 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencyGetBlackListRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencyGetBlackListRequest, WxaOperationAMSAgencyGetBlackListResponse>
{
}
}

View File

@@ -0,0 +1,82 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_black_list 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencyGetBlackListResponse : WechatApiResponse
{
public static class Types
{
public class Advertiser
{
/// <summary>
/// 获取或设置广告主 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("id")]
[System.Text.Json.Serialization.JsonPropertyName("id")]
public string Id { get; set; } = default!;
/// <summary>
/// 获取或设置广告主名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("name")]
[System.Text.Json.Serialization.JsonPropertyName("name")]
public string Name { get; set; } = default!;
/// <summary>
/// 获取或设置广告主头像 URL。
/// </summary>
[Newtonsoft.Json.JsonProperty("icon")]
[System.Text.Json.Serialization.JsonPropertyName("icon")]
public string IconUrl { get; set; } = default!;
}
}
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置屏蔽的广告主列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("blacklist_biz")]
[System.Text.Json.Serialization.JsonPropertyName("blacklist_biz")]
public Types.Advertiser[] BlackList { get; set; } = default!;
/// <summary>
/// 获取或设置屏蔽的小程序广告主列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("blacklist_weapp")]
[System.Text.Json.Serialization.JsonPropertyName("blacklist_weapp")]
public Types.Advertiser[]? WeappBlackList { get; set; }
/// <summary>
/// 获取或设置屏蔽的 iOS 广告主列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("blacklist_ios")]
[System.Text.Json.Serialization.JsonPropertyName("blacklist_ios")]
public Types.Advertiser[]? IOSBlackList { get; set; }
/// <summary>
/// 获取或设置屏蔽的 Android 广告主列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("blacklist_android")]
[System.Text.Json.Serialization.JsonPropertyName("blacklist_android")]
public Types.Advertiser[]? AndroidBlackList { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,9 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_mp_amscategory_blacklist 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencyGetMpAMSCategoryBlackListRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencyGetMpAMSCategoryBlackListRequest, WxaOperationAMSAgencyGetBlackListResponse>
{
}
}

View File

@@ -0,0 +1,36 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_mp_amscategory_blacklist 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencyGetMpAMSCategoryBlackListResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置屏蔽的行业类别列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("ams_category")]
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.TextualStringArrayWithPipeSplitConverter))]
[System.Text.Json.Serialization.JsonPropertyName("ams_category")]
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Converters.TextualStringArrayWithPipeSplitConverter))]
public string[] AMSCategoryList { get; set; } = default!;
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,57 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_set_black_list 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencySetBlackListRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencySetBlackListRequest, WxaOperationAMSAgencySetBlackListResponse>
{
public static class Types
{
public class Advertiser
{
/// <summary>
/// 获取或设置屏蔽类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("type")]
[System.Text.Json.Serialization.JsonPropertyName("type")]
public int Type { get; set; }
/// <summary>
/// 获取或设置广告主 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("id")]
[System.Text.Json.Serialization.JsonPropertyName("id")]
public string Id { get; set; } = string.Empty;
}
}
internal static class Converters
{
internal class RequestPropertyBlackListNewtonsoftJsonConverter : Newtonsoft.Json.Converters.TextualObjectInJsonFormatConverterBase<IList<Types.Advertiser>?>
{
}
internal class RequestPropertyBlackListSystemTextJsonConverter : System.Text.Json.Converters.TextualObjectInJsonFormatConverterBase<IList<Types.Advertiser>?>
{
}
}
/// <summary>
/// 获取或设置操作类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("op")]
[System.Text.Json.Serialization.JsonPropertyName("op")]
public int OperateType { get; set; }
/// <summary>
/// 获取或设置屏蔽的广告主列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("list")]
[Newtonsoft.Json.JsonConverter(typeof(Converters.RequestPropertyBlackListNewtonsoftJsonConverter))]
[System.Text.Json.Serialization.JsonPropertyName("list")]
[System.Text.Json.Serialization.JsonConverter(typeof(Converters.RequestPropertyBlackListSystemTextJsonConverter))]
public IList<Types.Advertiser> BlackList { get; set; } = new List<Types.Advertiser>();
}
}

View File

@@ -0,0 +1,82 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_set_black_list 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencySetBlackListResponse : WechatApiResponse
{
public static class Types
{
public class Advertiser
{
/// <summary>
/// 获取或设置公众号微信号。
/// </summary>
[Newtonsoft.Json.JsonProperty("id")]
[System.Text.Json.Serialization.JsonPropertyName("id")]
public string Id { get; set; } = default!;
/// <summary>
/// 获取或设置公众号名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("name")]
[System.Text.Json.Serialization.JsonPropertyName("name")]
public string Nickname { get; set; } = default!;
/// <summary>
/// 获取或设置公众号头像 URL。
/// </summary>
[Newtonsoft.Json.JsonProperty("icon")]
[System.Text.Json.Serialization.JsonPropertyName("icon")]
public string AvatarUrl { get; set; } = default!;
}
}
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置屏蔽的广告主列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("blacklist_biz")]
[System.Text.Json.Serialization.JsonPropertyName("blacklist_biz")]
public Types.Advertiser[] BlackList { get; set; } = default!;
/// <summary>
/// 获取或设置屏蔽的小程序广告主列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("blacklist_weapp")]
[System.Text.Json.Serialization.JsonPropertyName("blacklist_weapp")]
public Types.Advertiser[]? WeappBlackList { get; set; }
/// <summary>
/// 获取或设置屏蔽的 iOS 广告主列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("blacklist_ios")]
[System.Text.Json.Serialization.JsonPropertyName("blacklist_ios")]
public Types.Advertiser[]? IOSBlackList { get; set; }
/// <summary>
/// 获取或设置屏蔽的 Android 广告主列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("blacklist_android")]
[System.Text.Json.Serialization.JsonPropertyName("blacklist_android")]
public Types.Advertiser[]? AndroidBlackList { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,19 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_set_mp_amscategory_blacklist 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencySetMpAMSCategoryBlackListRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencySetMpAMSCategoryBlackListRequest, WxaOperationAMSAgencySetMpAMSCategoryBlackListResponse>
{
/// <summary>
/// 获取或设置屏蔽的行业类别列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("ams_category")]
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.TextualStringListWithPipeSplitConverter))]
[System.Text.Json.Serialization.JsonPropertyName("ams_category")]
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Converters.TextualStringListWithPipeSplitConverter))]
public IList<string> AMSCategoryList { get; set; } = new List<string>();
}
}

View File

@@ -0,0 +1,27 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_set_mp_amscategory_blacklist 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencySetMpAMSCategoryBlackListResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,45 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_adpos_genenral 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencyGetAdPositionGenenralRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencyGetAdPositionGenenralRequest, WxaOperationAMSAgencyGetAdPositionGenenralResponse>
{
/// <summary>
/// 获取或设置分页页数。
/// <para>默认值1</para>
/// </summary>
[Newtonsoft.Json.JsonProperty("page")]
[System.Text.Json.Serialization.JsonPropertyName("page")]
public int Page { get; set; } = 1;
/// <summary>
/// 获取或设置分页每页数量。
/// <para>默认值10</para>
/// </summary>
[Newtonsoft.Json.JsonProperty("page_size")]
[System.Text.Json.Serialization.JsonPropertyName("page_size")]
public int Limit { get; set; } = 10;
/// <summary>
/// 获取或设置开始日期字符串格式yyyyMMdd
/// </summary>
[Newtonsoft.Json.JsonProperty("start_date")]
[System.Text.Json.Serialization.JsonPropertyName("start_date")]
public string StartDateString { get; set; } = string.Empty;
/// <summary>
/// 获取或设置结束日期字符串格式yyyyMMdd
/// </summary>
[Newtonsoft.Json.JsonProperty("end_date")]
[System.Text.Json.Serialization.JsonPropertyName("end_date")]
public string EndDateString { get; set; } = string.Empty;
/// <summary>
/// 获取或设置广告位类型名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_slot")]
[System.Text.Json.Serialization.JsonPropertyName("ad_slot")]
public string? AdSlot { get; set; }
}
}

View File

@@ -0,0 +1,127 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_adpos_genenral 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencyGetAdPositionGenenralResponse : WechatApiResponse
{
public static class Types
{
public class Record : Summary
{
/// <summary>
/// 获取或设置广告位类型 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("slot_id")]
[System.Text.Json.Serialization.JsonPropertyName("slot_id")]
public long AdSlotId { get; set; }
/// <summary>
/// 获取或设置广告位类型名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_slot")]
[System.Text.Json.Serialization.JsonPropertyName("ad_slot")]
public string AdSlot { get; set; } = default!;
/// <summary>
/// 获取或设置日期字符串格式yyyyMMdd
/// </summary>
[Newtonsoft.Json.JsonProperty("date")]
[System.Text.Json.Serialization.JsonPropertyName("date")]
public string DateString { get; set; } = default!;
}
public class Summary
{
/// <summary>
/// 获取或设置拉取数。
/// </summary>
[Newtonsoft.Json.JsonProperty("req_succ_count")]
[System.Text.Json.Serialization.JsonPropertyName("req_succ_count")]
public int RequestSuccessCount { get; set; }
/// <summary>
/// 获取或设置曝光量。
/// </summary>
[Newtonsoft.Json.JsonProperty("exposure_count")]
[System.Text.Json.Serialization.JsonPropertyName("exposure_count")]
public int ExposureCount { get; set; }
/// <summary>
/// 获取或设置曝光率范围01
/// </summary>
[Newtonsoft.Json.JsonProperty("exposure_rate")]
[System.Text.Json.Serialization.JsonPropertyName("exposure_rate")]
public double ExposureRate { get; set; }
/// <summary>
/// 获取或设置点击量。
/// </summary>
[Newtonsoft.Json.JsonProperty("click_count")]
[System.Text.Json.Serialization.JsonPropertyName("click_count")]
public int ClickCount { get; set; }
/// <summary>
/// 获取或设置点击率范围01
/// </summary>
[Newtonsoft.Json.JsonProperty("click_rate")]
[System.Text.Json.Serialization.JsonPropertyName("click_rate")]
public double ClickRate { get; set; }
/// <summary>
/// 获取或设置收入(单位:分)。
/// </summary>
[Newtonsoft.Json.JsonProperty("income")]
[System.Text.Json.Serialization.JsonPropertyName("income")]
public double Income { get; set; }
/// <summary>
/// 获取或设置广告千次曝光收益(单位:分)。
/// </summary>
[Newtonsoft.Json.JsonProperty("ecpm")]
[System.Text.Json.Serialization.JsonPropertyName("ecpm")]
public double ECPM { get; set; }
}
}
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置汇总数据信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("summary")]
[System.Text.Json.Serialization.JsonPropertyName("summary")]
public Types.Summary Summary { get; set; } = default!;
/// <summary>
/// 获取或设置每日数据列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("list")]
[System.Text.Json.Serialization.JsonPropertyName("list")]
public Types.Record[] RecordList { get; set; } = default!;
/// <summary>
/// 获取或设置数据总数。
/// </summary>
[Newtonsoft.Json.JsonProperty("total_num")]
[System.Text.Json.Serialization.JsonPropertyName("total_num")]
public int TotalCount { get; set; } = default!;
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,52 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_adunit_general 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencyGetAdUnitGenenralRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencyGetAdUnitGenenralRequest, WxaOperationAMSAgencyGetAdUnitGenenralResponse>
{
/// <summary>
/// 获取或设置分页页数。
/// <para>默认值1</para>
/// </summary>
[Newtonsoft.Json.JsonProperty("page")]
[System.Text.Json.Serialization.JsonPropertyName("page")]
public int Page { get; set; } = 1;
/// <summary>
/// 获取或设置分页每页数量。
/// <para>默认值10</para>
/// </summary>
[Newtonsoft.Json.JsonProperty("page_size")]
[System.Text.Json.Serialization.JsonPropertyName("page_size")]
public int Limit { get; set; } = 10;
/// <summary>
/// 获取或设置开始日期字符串格式yyyyMMdd
/// </summary>
[Newtonsoft.Json.JsonProperty("start_date")]
[System.Text.Json.Serialization.JsonPropertyName("start_date")]
public string StartDateString { get; set; } = string.Empty;
/// <summary>
/// 获取或设置结束日期字符串格式yyyyMMdd
/// </summary>
[Newtonsoft.Json.JsonProperty("end_date")]
[System.Text.Json.Serialization.JsonPropertyName("end_date")]
public string EndDateString { get; set; } = string.Empty;
/// <summary>
/// 获取或设置广告位类型名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_slot")]
[System.Text.Json.Serialization.JsonPropertyName("ad_slot")]
public string? AdSlot { get; set; }
/// <summary>
/// 获取或设置广告单元 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_id")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_id")]
public string? AdUnitId { get; set; }
}
}

View File

@@ -0,0 +1,88 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_adunit_general 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencyGetAdUnitGenenralResponse : WechatApiResponse
{
public static class Types
{
public class Record
{
public static class Types
{
public class Statistics : WxaOperationAMSAgencyGetAdPositionGenenralResponse.Types.Summary
{
/// <summary>
/// 获取或设置广告位类型名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_slot")]
[System.Text.Json.Serialization.JsonPropertyName("ad_slot")]
public string AdSlot { get; set; } = default!;
/// <summary>
/// 获取或设置日期字符串格式yyyyMMdd
/// </summary>
[Newtonsoft.Json.JsonProperty("date")]
[System.Text.Json.Serialization.JsonPropertyName("date")]
public string DateString { get; set; } = default!;
}
}
/// <summary>
/// 获取或设置广告单元 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_id")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_id")]
public string AdUnitId { get; set; } = default!;
/// <summary>
/// 获取或设置广告单元名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_name")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_name")]
public string AdUnitName { get; set; } = default!;
/// <summary>
/// 获取或设置统计数据列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("stat_item")]
[System.Text.Json.Serialization.JsonPropertyName("stat_item")]
public Types.Statistics[] StatisticsList { get; set; } = default!;
}
}
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置每日数据列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("list")]
[System.Text.Json.Serialization.JsonPropertyName("list")]
public Types.Record[] RecordList { get; set; } = default!;
/// <summary>
/// 获取或设置数据总数。
/// </summary>
[Newtonsoft.Json.JsonProperty("total_num")]
[System.Text.Json.Serialization.JsonPropertyName("total_num")]
public int TotalCount { get; set; } = default!;
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,50 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_create_adunit 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencyCreateAdUnitRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencyCreateAdUnitRequest, WxaOperationAMSAgencyCreateAdUnitResponse>
{
/// <summary>
/// 获取或设置广告单元名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("name")]
[System.Text.Json.Serialization.JsonPropertyName("name")]
public string Name { get; set; } = string.Empty;
/// <summary>
/// 获取或设置广告单元类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("type")]
[System.Text.Json.Serialization.JsonPropertyName("type")]
public string Type { get; set; } = string.Empty;
/// <summary>
/// 获取或设置广告展示时长最小值(单位:秒)。
/// </summary>
[Newtonsoft.Json.JsonProperty("video_duration_min")]
[System.Text.Json.Serialization.JsonPropertyName("video_duration_min")]
public int? MinVideoDuration { get; set; }
/// <summary>
/// 获取或设置广告展示时长最大值(单位:秒)。
/// </summary>
[Newtonsoft.Json.JsonProperty("video_duration_max")]
[System.Text.Json.Serialization.JsonPropertyName("video_duration_max")]
public int? MaxVideoDuration { get; set; }
/// <summary>
/// 获取或设置模板类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("tmpl_type")]
[System.Text.Json.Serialization.JsonPropertyName("tmpl_type")]
public int? TemplateType { get; set; }
/// <summary>
/// 获取或设置模板 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("tmpl_id")]
[System.Text.Json.Serialization.JsonPropertyName("tmpl_id")]
public string? TemplateId { get; set; }
}
}

View File

@@ -0,0 +1,34 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_create_adunit 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencyCreateAdUnitResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置广告单元 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_id")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_id")]
public string AdUnitId { get; set; } = default!;
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,15 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_adunit_code 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencyGetAdUnitCodeRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencyGetAdUnitCodeRequest, WxaOperationAMSAgencyGetAdUnitCodeResponse>
{
/// <summary>
/// 获取或设置广告单元 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_id")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_id")]
public string AdUnitId { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,34 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_adunit_code 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencyGetAdUnitCodeResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置广告单元代码。
/// </summary>
[Newtonsoft.Json.JsonProperty("code")]
[System.Text.Json.Serialization.JsonPropertyName("code")]
public string Code { get; set; } = default!;
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,38 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_adunit_list 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencyGetAdUnitListRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencyGetAdUnitListRequest, WxaOperationAMSAgencyGetAdUnitListResponse>
{
/// <summary>
/// 获取或设置分页页数。
/// <para>默认值1</para>
/// </summary>
[Newtonsoft.Json.JsonProperty("page")]
[System.Text.Json.Serialization.JsonPropertyName("page")]
public int Page { get; set; } = 1;
/// <summary>
/// 获取或设置分页每页数量。
/// <para>默认值10</para>
/// </summary>
[Newtonsoft.Json.JsonProperty("page_size")]
[System.Text.Json.Serialization.JsonPropertyName("page_size")]
public int Limit { get; set; } = 10;
/// <summary>
/// 获取或设置广告位类型名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_slot")]
[System.Text.Json.Serialization.JsonPropertyName("ad_slot")]
public string? AdSlot { get; set; }
/// <summary>
/// 获取或设置广告单元 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_id")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_id")]
public string? AdUnitId { get; set; }
}
}

View File

@@ -0,0 +1,137 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_adunit_list 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencyGetAdUnitListResponse : WechatApiResponse
{
public static class Types
{
public class AdUnit
{
public static class Types
{
public class Size
{
/// <summary>
/// 获取或设置宽度(单位:宽度)。
/// </summary>
[Newtonsoft.Json.JsonProperty("width")]
[System.Text.Json.Serialization.JsonPropertyName("width")]
public int Width { get; set; }
/// <summary>
/// 获取或设置高度(单位:宽度)。
/// </summary>
[Newtonsoft.Json.JsonProperty("height")]
[System.Text.Json.Serialization.JsonPropertyName("height")]
public int Height { get; set; }
}
}
/// <summary>
/// 获取或设置广告单元 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_id")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_id")]
public string AdUnitId { get; set; } = default!;
/// <summary>
/// 获取或设置广告单元名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_name")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_name")]
public string AdUnitName { get; set; } = default!;
/// <summary>
/// 获取或设置广告位类型 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("slot_id")]
[System.Text.Json.Serialization.JsonPropertyName("slot_id")]
public string? AdSlotId { get; set; }
/// <summary>
/// 获取或设置广告位类型名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_slot")]
[System.Text.Json.Serialization.JsonPropertyName("ad_slot")]
public string? AdSlot { get; set; }
/// <summary>
/// 获取或设置广告单元类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_type")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_type")]
public string Type { get; set; } = default!;
/// <summary>
/// 获取或设置开关状态。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_status")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_status")]
public int Status { get; set; }
/// <summary>
/// 获取或设置尺寸列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_size")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_size")]
public Types.Size[]? SizeList { get; set; }
/// <summary>
/// 获取或设置小程序 AppId。
/// </summary>
[Newtonsoft.Json.JsonProperty("appid")]
[System.Text.Json.Serialization.JsonPropertyName("appid")]
public string? AppId { get; set; }
/// <summary>
/// 获取或设置广告展示时长最小值(单位:秒)。
/// </summary>
[Newtonsoft.Json.JsonProperty("video_duration_min")]
[System.Text.Json.Serialization.JsonPropertyName("video_duration_min")]
public int? MinVideoDuration { get; set; }
/// <summary>
/// 获取或设置广告展示时长最大值(单位:秒)。
/// </summary>
[Newtonsoft.Json.JsonProperty("video_duration_max")]
[System.Text.Json.Serialization.JsonPropertyName("video_duration_max")]
public int? MaxVideoDuration { get; set; }
}
}
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置广告单元列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit")]
public Types.AdUnit[] AdUnitList { get; set; } = default!;
/// <summary>
/// 获取或设置总数量。
/// </summary>
[Newtonsoft.Json.JsonProperty("total_num")]
[System.Text.Json.Serialization.JsonPropertyName("total_num")]
public int TotalCount { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,9 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_cover_adpos_scene 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencyGetCoverAdPositionSceneRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencyGetCoverAdPositionSceneRequest, WxaOperationAMSAgencyGetCoverAdPositionSceneResponse>
{
}
}

View File

@@ -0,0 +1,36 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_cover_adpos_scene 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencyGetCoverAdPositionSceneResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置封面场景值列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("cover_scene_list")]
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.TextualIntegerArrayWithCommaSplitConverter))]
[System.Text.Json.Serialization.JsonPropertyName("cover_scene_list")]
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Converters.TextualIntegerArrayWithCommaSplitConverter))]
public int[] CoverSceneList { get; set; } = default!;
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,9 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_cover_adpos_status 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencyGetCoverAdPositionStatusRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencyGetCoverAdPositionStatusRequest, WxaOperationAMSAgencyGetCoverAdPositionStatusResponse>
{
}
}

View File

@@ -0,0 +1,41 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_cover_adpos_status 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencyGetCoverAdPositionStatusResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置开关状态。
/// </summary>
[Newtonsoft.Json.JsonProperty("status")]
[System.Text.Json.Serialization.JsonPropertyName("status")]
public int Status { get; set; }
/// <summary>
/// 获取或设置下次允许开启的封面广告位的时间戳。
/// </summary>
[Newtonsoft.Json.JsonProperty("next_open_time")]
[System.Text.Json.Serialization.JsonPropertyName("next_open_time")]
public long? NextOpenTimestamp { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,15 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_tmpl_type 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencyGetTemplateTypeRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencyGetTemplateTypeRequest, WxaOperationAMSAgencyGetTemplateTypeResponse>
{
/// <summary>
/// 获取或设置广告单元 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_id")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_id")]
public string AdUnitId { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,34 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_tmpl_type 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencyGetTemplateTypeResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置模板类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("tmpl_type")]
[System.Text.Json.Serialization.JsonPropertyName("tmpl_type")]
public int TemplateType { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,19 @@
using System.Collections.Generic;
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_set_cover_adpos_scene 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencySetCoverAdPositionSceneRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencySetCoverAdPositionSceneRequest, WxaOperationAMSAgencySetCoverAdPositionSceneResponse>
{
/// <summary>
/// 获取或设置封面场景值列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("cover_scene_list")]
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.TextualIntegerListWithCommaSplitConverter))]
[System.Text.Json.Serialization.JsonPropertyName("cover_scene_list")]
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Converters.TextualIntegerListWithCommaSplitConverter))]
public IList<int> CoverSceneList { get; set; } = new List<int>();
}
}

View File

@@ -0,0 +1,27 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_set_cover_adpos_scene 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencySetCoverAdPositionSceneResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,15 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_set_cover_adpos_status 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencySetCoverAdPositionStatusRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencySetCoverAdPositionStatusRequest, WxaOperationAMSAgencySetCoverAdPositionStatusResponse>
{
/// <summary>
/// 获取或设置开关状态。
/// </summary>
[Newtonsoft.Json.JsonProperty("status")]
[System.Text.Json.Serialization.JsonPropertyName("status")]
public int Status { get; set; }
}
}

View File

@@ -0,0 +1,27 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_set_cover_adpos_status 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencySetCoverAdPositionStatusResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,57 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_update_adunit 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencyUpdateAdUnitRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencyUpdateAdUnitRequest, WxaOperationAMSAgencyUpdateAdUnitResponse>
{
/// <summary>
/// 获取或设置广告单元 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_id")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_id")]
public string AdUnitId { get; set; } = string.Empty;
/// <summary>
/// 获取或设置广告单元名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("name")]
[System.Text.Json.Serialization.JsonPropertyName("name")]
public string Name { get; set; } = string.Empty;
/// <summary>
/// 获取或设置广告单元开关状态。
/// </summary>
[Newtonsoft.Json.JsonProperty("status")]
[System.Text.Json.Serialization.JsonPropertyName("status")]
public string Status { get; set; } = string.Empty;
/// <summary>
/// 获取或设置广告展示时长最小值(单位:秒)。
/// </summary>
[Newtonsoft.Json.JsonProperty("video_duration_min")]
[System.Text.Json.Serialization.JsonPropertyName("video_duration_min")]
public int? MinVideoDuration { get; set; }
/// <summary>
/// 获取或设置广告展示时长最大值(单位:秒)。
/// </summary>
[Newtonsoft.Json.JsonProperty("video_duration_max")]
[System.Text.Json.Serialization.JsonPropertyName("video_duration_max")]
public int? MaxVideoDuration { get; set; }
/// <summary>
/// 获取或设置模板类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("tmpl_type")]
[System.Text.Json.Serialization.JsonPropertyName("tmpl_type")]
public int? TemplateType { get; set; }
/// <summary>
/// 获取或设置模板 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("tmpl_id")]
[System.Text.Json.Serialization.JsonPropertyName("tmpl_id")]
public string? TemplateId { get; set; }
}
}

View File

@@ -0,0 +1,27 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_update_adunit 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencyUpdateAdUnitResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,47 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=get_agency_ad_unit_list 接口的请求。</para>
/// </summary>
public class WxaOperationAMSGetAgencyAdUnitListRequest : WechatApiRequest, IInferable<WxaOperationAMSGetAgencyAdUnitListRequest, WxaOperationAMSGetAgencyAdUnitListResponse>
{
/// <summary>
/// 获取或设置分页页数。
/// <para>默认值1</para>
/// </summary>
[Newtonsoft.Json.JsonProperty("page")]
[System.Text.Json.Serialization.JsonPropertyName("page")]
public int Page { get; set; } = 1;
/// <summary>
/// 获取或设置分页每页数量。
/// <para>默认值10</para>
/// </summary>
[Newtonsoft.Json.JsonProperty("page_size")]
[System.Text.Json.Serialization.JsonPropertyName("page_size")]
public int Limit { get; set; } = 10;
/// <summary>
/// 获取或设置广告位类型名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_slot")]
[System.Text.Json.Serialization.JsonPropertyName("ad_slot")]
public string? AdSlot { get; set; }
/// <summary>
/// 获取或设置模板广告单元 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("tmpl_id")]
[System.Text.Json.Serialization.JsonPropertyName("tmpl_id")]
public string? TemplateId { get; set; }
/// <summary>
/// 获取或设置是否返回该模板广告单元 ID 绑定的商户广告单元信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("is_return_tmpl_bind_list")]
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.NumericalNullableBooleanConverter))]
[System.Text.Json.Serialization.JsonPropertyName("is_return_tmpl_bind_list")]
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Converters.NumericalNullableBooleanConverter))]
public bool? RequireReturnTemplateBindList { get; set; }
}
}

View File

@@ -0,0 +1,96 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=get_agency_ad_unit_list 接口的响应。</para>
/// </summary>
public class WxaOperationAMSGetAgencyAdUnitListResponse : WechatApiResponse
{
public static class Types
{
public class Template
{
public static class Types
{
public class AdUnit : WxaOperationAMSAgencyGetAdUnitListResponse.Types.AdUnit
{
}
}
/// <summary>
/// 获取或设置模板 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("tmpl_id")]
[System.Text.Json.Serialization.JsonPropertyName("tmpl_id")]
public string TemplateId { get; set; } = default!;
/// <summary>
/// 获取或设置广告单元名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_name")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_name")]
public string Name { get; set; } = default!;
/// <summary>
/// 获取或设置广告位类型 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("slot_id")]
[System.Text.Json.Serialization.JsonPropertyName("slot_id")]
public string? AdSlotId { get; set; }
/// <summary>
/// 获取或设置广告位类型名称。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_slot")]
[System.Text.Json.Serialization.JsonPropertyName("ad_slot")]
public string? AdSlot { get; set; }
/// <summary>
/// 获取或设置绑定的商户广告单元数量。
/// </summary>
[Newtonsoft.Json.JsonProperty("tmpl_bind_total_num")]
[System.Text.Json.Serialization.JsonPropertyName("tmpl_bind_total_num")]
public int AdUnitTotalCount { get; set; }
/// <summary>
/// 获取或设置绑定的商户广告单元列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("tmpl_bind_list")]
[System.Text.Json.Serialization.JsonPropertyName("tmpl_bind_list")]
public Types.AdUnit[]? AdUnitList { get; set; }
}
}
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置模板列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("ad_unit_list")]
[System.Text.Json.Serialization.JsonPropertyName("ad_unit_list")]
public Types.Template[] TemplateList { get; set; } = default!;
/// <summary>
/// 获取或设置总数量。
/// </summary>
[Newtonsoft.Json.JsonProperty("total_num")]
[System.Text.Json.Serialization.JsonPropertyName("total_num")]
public int TotalCount { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,9 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_check_can_open_publisher 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencyCheckCanOpenPublisherRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencyCheckCanOpenPublisherRequest, WxaOperationAMSAgencyCheckCanOpenPublisherResponse>
{
}
}

View File

@@ -0,0 +1,34 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_check_can_open_publisher 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencyCheckCanOpenPublisherResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置开通状态。
/// </summary>
[Newtonsoft.Json.JsonProperty("status")]
[System.Text.Json.Serialization.JsonPropertyName("status")]
public int Status { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,9 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_create_publisher 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencyCreatePublisherRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencyCreatePublisherRequest, WxaOperationAMSAgencyCreatePublisherResponse>
{
}
}

View File

@@ -0,0 +1,27 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_create_publisher 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencyCreatePublisherResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,22 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/getdefaultamsinfo 接口的请求。</para>
/// </summary>
public class WxaGetDefaultAMSInfoRequest : WechatApiRequest, IInferable<WxaGetDefaultAMSInfoRequest, WxaGetDefaultAMSInfoResponse>
{
/// <summary>
/// 获取或设置操作类型。
/// </summary>
[Newtonsoft.Json.JsonIgnore]
[System.Text.Json.Serialization.JsonIgnore]
public string Action { get; set; } = string.Empty;
/// <summary>
/// 获取或设置小程序 AppId。如果不指定将使用构造 <see cref="WechatApiClient"/> 时的 <see cref="WechatApiClientOptions.AppId"/> 参数。
/// </summary>
[Newtonsoft.Json.JsonProperty("appid")]
[System.Text.Json.Serialization.JsonPropertyName("appid")]
public string? AppId { get; set; }
}
}

View File

@@ -0,0 +1,34 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/getdefaultamsinfo 接口的响应。</para>
/// </summary>
public class WxaGetDefaultAMSInfoResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置分账比例(单位:百分比)。
/// </summary>
[Newtonsoft.Json.JsonProperty("share_ratio")]
[System.Text.Json.Serialization.JsonPropertyName("share_ratio")]
public int ShareRatio { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,29 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/setdefaultamsinfo 接口的请求。</para>
/// </summary>
public class WxaSetDefaultAMSInfoRequest : WechatApiRequest, IInferable<WxaSetDefaultAMSInfoRequest, WxaSetDefaultAMSInfoResponse>
{
/// <summary>
/// 获取或设置操作类型。
/// </summary>
[Newtonsoft.Json.JsonIgnore]
[System.Text.Json.Serialization.JsonIgnore]
public string Action { get; set; } = string.Empty;
/// <summary>
/// 获取或设置小程序 AppId。如果不指定将使用构造 <see cref="WechatApiClient"/> 时的 <see cref="WechatApiClientOptions.AppId"/> 参数。
/// </summary>
[Newtonsoft.Json.JsonProperty("appid")]
[System.Text.Json.Serialization.JsonPropertyName("appid")]
public string? AppId { get; set; }
/// <summary>
/// 获取或设置分账比例(单位:百分比)。
/// </summary>
[Newtonsoft.Json.JsonProperty("share_ratio")]
[System.Text.Json.Serialization.JsonPropertyName("share_ratio")]
public int ShareRatio { get; set; }
}
}

View File

@@ -0,0 +1,27 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/setdefaultamsinfo 接口的响应。</para>
/// </summary>
public class WxaSetDefaultAMSInfoResponse : WechatApiResponse
{
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,38 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_settlement 接口的请求。</para>
/// </summary>
public class WxaOperationAMSAgencyGetSettlementRequest : WechatApiRequest, IInferable<WxaOperationAMSAgencyGetSettlementRequest, WxaOperationAMSAgencyGetSettlementResponse>
{
/// <summary>
/// 获取或设置分页页数。
/// <para>默认值1</para>
/// </summary>
[Newtonsoft.Json.JsonProperty("page")]
[System.Text.Json.Serialization.JsonPropertyName("page")]
public int Page { get; set; } = 1;
/// <summary>
/// 获取或设置分页每页数量。
/// <para>默认值10</para>
/// </summary>
[Newtonsoft.Json.JsonProperty("page_size")]
[System.Text.Json.Serialization.JsonPropertyName("page_size")]
public int Limit { get; set; } = 10;
/// <summary>
/// 获取或设置开始日期字符串格式yyyyMMdd
/// </summary>
[Newtonsoft.Json.JsonProperty("start_date")]
[System.Text.Json.Serialization.JsonPropertyName("start_date")]
public string StartDateString { get; set; } = string.Empty;
/// <summary>
/// 获取或设置结束日期字符串格式yyyyMMdd
/// </summary>
[Newtonsoft.Json.JsonProperty("end_date")]
[System.Text.Json.Serialization.JsonPropertyName("end_date")]
public string EndDateString { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,151 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=agency_get_settlement 接口的响应。</para>
/// </summary>
public class WxaOperationAMSAgencyGetSettlementResponse : WechatApiResponse
{
public static class Types
{
public class Settlement
{
public static class Types
{
public class SlotRevenue
{
/// <summary>
/// 获取或设置广告位类型 ID。
/// </summary>
[Newtonsoft.Json.JsonProperty("slot_id")]
[System.Text.Json.Serialization.JsonPropertyName("slot_id")]
public string AdSlotId { get; set; } = default!;
/// <summary>
/// 获取或设置广告位结算收入(单位:分)。
/// </summary>
[Newtonsoft.Json.JsonProperty("slot_settled_revenue")]
[System.Text.Json.Serialization.JsonPropertyName("slot_settled_revenue")]
public int SettledRevenue { get; set; }
}
}
/// <summary>
/// 获取或设置日期字符串格式yyyyMMdd
/// </summary>
[Newtonsoft.Json.JsonProperty("date")]
[System.Text.Json.Serialization.JsonPropertyName("date")]
public string DateString { get; set; } = default!;
/// <summary>
/// 获取或设置日期区间字符串。
/// </summary>
[Newtonsoft.Json.JsonProperty("zone")]
[System.Text.Json.Serialization.JsonPropertyName("zone")]
public string ZoneString { get; set; } = default!;
/// <summary>
/// 获取或设置收入月份字符串。
/// </summary>
[Newtonsoft.Json.JsonProperty("month")]
[System.Text.Json.Serialization.JsonPropertyName("month")]
public string MonthString { get; set; } = default!;
/// <summary>
/// 获取或设置半月次序。
/// </summary>
[Newtonsoft.Json.JsonProperty("order")]
[System.Text.Json.Serialization.JsonPropertyName("order")]
public int Order { get; set; }
/// <summary>
/// 获取或设置结算状态。
/// </summary>
[Newtonsoft.Json.JsonProperty("sett_status")]
[System.Text.Json.Serialization.JsonPropertyName("sett_status")]
public int SettlementStatus { get; set; }
/// <summary>
/// 获取或设置结算单号。
/// </summary>
[Newtonsoft.Json.JsonProperty("sett_no")]
[System.Text.Json.Serialization.JsonPropertyName("sett_no")]
public string SettlementNumber { get; set; } = default!;
/// <summary>
/// 获取或设置结算收入(单位:分)。
/// </summary>
[Newtonsoft.Json.JsonProperty("settled_revenue")]
[System.Text.Json.Serialization.JsonPropertyName("settled_revenue")]
public long SettledRevenue { get; set; }
/// <summary>
/// 获取或设置申请补发结算单次数。
/// </summary>
[Newtonsoft.Json.JsonProperty("mail_send_cnt")]
[System.Text.Json.Serialization.JsonPropertyName("mail_send_cnt")]
public int MailSendCount { get; set; }
/// <summary>
/// 获取或设置广告位收入列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("slot_revenue")]
[System.Text.Json.Serialization.JsonPropertyName("slot_revenue")]
public Types.SlotRevenue[] SlotRevenueList { get; set; } = default!;
}
}
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置累计收入(单位:分)。
/// </summary>
[Newtonsoft.Json.JsonProperty("revenue_all")]
[System.Text.Json.Serialization.JsonPropertyName("revenue_all")]
public long RevenueAll { get; set; }
/// <summary>
/// 获取或设置扣除金额(单位:分)。
/// </summary>
[Newtonsoft.Json.JsonProperty("penalty_all")]
[System.Text.Json.Serialization.JsonPropertyName("penalty_all")]
public long PenaltyAll { get; set; }
/// <summary>
/// 获取或设置已结算金额(单位:分)。
/// </summary>
[Newtonsoft.Json.JsonProperty("settled_revenue_all")]
[System.Text.Json.Serialization.JsonPropertyName("settled_revenue_all")]
public long SettledRevenueAll { get; set; }
/// <summary>
/// 获取或设置结算数据列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("settlement_list")]
[System.Text.Json.Serialization.JsonPropertyName("settlement_list")]
public Types.Settlement[] SettlementList { get; set; } = default!;
/// <summary>
/// 获取或设置结算数据总数量。
/// </summary>
[Newtonsoft.Json.JsonProperty("total_num")]
[System.Text.Json.Serialization.JsonPropertyName("total_num")]
public int TotalCount { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}

View File

@@ -0,0 +1,38 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=get_agency_settled_revenue 接口的请求。</para>
/// </summary>
public class WxaOperationAMSGetAgencySettledRevenueRequest : WechatApiRequest, IInferable<WxaOperationAMSGetAgencySettledRevenueRequest, WxaOperationAMSAgencyGetSettlementResponse>
{
/// <summary>
/// 获取或设置分页页数。
/// <para>默认值1</para>
/// </summary>
[Newtonsoft.Json.JsonProperty("page")]
[System.Text.Json.Serialization.JsonPropertyName("page")]
public int Page { get; set; } = 1;
/// <summary>
/// 获取或设置分页每页数量。
/// <para>默认值10</para>
/// </summary>
[Newtonsoft.Json.JsonProperty("page_size")]
[System.Text.Json.Serialization.JsonPropertyName("page_size")]
public int Limit { get; set; } = 10;
/// <summary>
/// 获取或设置开始日期字符串格式yyyyMMdd
/// </summary>
[Newtonsoft.Json.JsonProperty("start_date")]
[System.Text.Json.Serialization.JsonPropertyName("start_date")]
public string StartDateString { get; set; } = string.Empty;
/// <summary>
/// 获取或设置结束日期字符串格式yyyyMMdd
/// </summary>
[Newtonsoft.Json.JsonProperty("end_date")]
[System.Text.Json.Serialization.JsonPropertyName("end_date")]
public string EndDateString { get; set; } = string.Empty;
}
}

View File

@@ -0,0 +1,82 @@
namespace SKIT.FlurlHttpClient.Wechat.Api.Models
{
/// <summary>
/// <para>表示 [POST] /wxa/operationams?action=get_agency_settled_revenue 接口的响应。</para>
/// </summary>
public class WxaOperationAMSGetAgencySettledRevenueResponse : WechatApiResponse
{
public static class Types
{
public class Settlement : WxaOperationAMSAgencyGetSettlementResponse.Types.Settlement
{
public static new class Types
{
public class SlotRevenue : WxaOperationAMSAgencyGetSettlementResponse.Types.Settlement.Types.SlotRevenue
{
}
}
/// <summary>
/// 获取或设置广告位收入列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("slot_revenue")]
[System.Text.Json.Serialization.JsonPropertyName("slot_revenue")]
public new Types.SlotRevenue[] SlotRevenueList { get; set; } = default!;
}
}
/// <summary>
/// 获取或设置返回错误码。
/// </summary>
[Newtonsoft.Json.JsonProperty("ret")]
[System.Text.Json.Serialization.JsonPropertyName("ret")]
public int ReturnCode { get; set; }
/// <summary>
/// 获取或设置返回错误信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("err_msg")]
[System.Text.Json.Serialization.JsonPropertyName("err_msg")]
public string? ReturnMessage { get; set; }
/// <summary>
/// 获取或设置累计收入(单位:分)。
/// </summary>
[Newtonsoft.Json.JsonProperty("revenue_all")]
[System.Text.Json.Serialization.JsonPropertyName("revenue_all")]
public long RevenueAll { get; set; }
/// <summary>
/// 获取或设置扣除金额(单位:分)。
/// </summary>
[Newtonsoft.Json.JsonProperty("penalty_all")]
[System.Text.Json.Serialization.JsonPropertyName("penalty_all")]
public long PenaltyAll { get; set; }
/// <summary>
/// 获取或设置已结算金额(单位:分)。
/// </summary>
[Newtonsoft.Json.JsonProperty("settled_revenue_all")]
[System.Text.Json.Serialization.JsonPropertyName("settled_revenue_all")]
public long SettledRevenueAll { get; set; }
/// <summary>
/// 获取或设置结算数据列表。
/// </summary>
[Newtonsoft.Json.JsonProperty("settlement_list")]
[System.Text.Json.Serialization.JsonPropertyName("settlement_list")]
public Types.Settlement[] SettlementList { get; set; } = default!;
/// <summary>
/// 获取或设置结算数据总数量。
/// </summary>
[Newtonsoft.Json.JsonProperty("total_num")]
[System.Text.Json.Serialization.JsonPropertyName("total_num")]
public int TotalCount { get; set; }
public override bool IsSuccessful()
{
return base.IsSuccessful() && ReturnCode == 0;
}
}
}