diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScorePartnerPermissionsExtensions.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScorePartnerPermissionsExtensions.cs
new file mode 100644
index 00000000..b6c595ca
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScorePartnerPermissionsExtensions.cs
@@ -0,0 +1,129 @@
+using System;
+using System.Collections.Generic;
+using System.Net.Http;
+using System.Text;
+using System.Threading;
+using System.Threading.Tasks;
+using Flurl;
+using Flurl.Http;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3
+{
+ ///
+ /// 为 提供微信支付分服务商(免确认模式)相关的 API 扩展方法。
+ ///
+ public static class WechatTenpayClientExecutePayScorePartnerPermissionsExtensions
+ {
+ ///
+ /// 异步调用 [POST] /payscore/partner/permissions 接口。
+ /// REF: https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/payscore_partner/chapter5_1.shtml
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteApplyPayScorePartnerPermissionsAsync(this WechatTenpayClient client, Models.ApplyPayScorePartnerPermissionsRequest 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(HttpMethod.Post, "payscore", "partner", "permissions")
+ .SetOptions(request);
+
+ return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken);
+ }
+
+ ///
+ /// 异步调用 [GET] /payscore/partner/permissions/authorization-code/{authorization_code} 接口。
+ /// REF: https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/payscore_partner/chapter5_2.shtml
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteGetPayScorePartnerPermissionsByAuthorizationCodeAsync(this WechatTenpayClient client, Models.GetPayScorePartnerPermissionsByAuthorizationCodeRequest 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(HttpMethod.Get, "payscore", "partner", "permissions", "authorization-code", request.AuthorizationCode)
+ .SetOptions(request)
+ .SetQueryParam("service_id", request.ServiceId)
+ .SetQueryParam("sub_mchid", request.SubMerchantId);
+
+ return await client.SendRequestAsync(flurlReq, cancellationToken: cancellationToken);
+ }
+
+ ///
+ /// 异步调用 [POST] /payscore/partner/permissions/authorization-code/{authorization_code}/terminate 接口。
+ /// REF: https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/payscore_partner/chapter5_4.shtml
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteTerminatePayScorePartnerPermissionsByAuthorizationCodeAsync(this WechatTenpayClient client, Models.TerminatePayScorePartnerPermissionsByAuthorizationCodeRequest 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(HttpMethod.Post, "payscore", "partner", "permissions", "authorization-code", request.AuthorizationCode, "terminate")
+ .SetOptions(request);
+
+ return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken);
+ }
+
+ ///
+ /// 异步调用 [GET] /payscore/partner/permissions/search 接口。
+ /// REF: https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/payscore_partner/chapter5_3.shtml
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteGetPayScorePartnerPermissionsByOpenIdAsync(this WechatTenpayClient client, Models.GetPayScorePartnerPermissionsByOpenIdRequest 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(HttpMethod.Get, "payscore", "partner", "permissions", "search")
+ .SetOptions(request)
+ .SetQueryParam("service_id", request.ServiceId)
+ .SetQueryParam("sub_mchid", request.SubMerchantId)
+ .SetQueryParam("appid", request.AppId)
+ .SetQueryParam("sub_appid", request.SubAppId);
+
+ if (!string.IsNullOrEmpty(request.OpenId))
+ flurlReq.SetQueryParam("openid", request.OpenId);
+
+ if (!string.IsNullOrEmpty(request.SubOpenId))
+ flurlReq.SetQueryParam("sub_openid", request.SubOpenId);
+
+ return await client.SendRequestAsync(flurlReq, cancellationToken: cancellationToken);
+ }
+
+ ///
+ /// 异步调用 [POST] /payscore/partner/permissions/terminate 接口。
+ /// REF: https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/payscore_partner/chapter5_5.shtml
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteTerminatePayScorePartnerPermissionsByOpenIdAsync(this WechatTenpayClient client, Models.TerminatePayScorePartnerPermissionsByOpenIdRequest 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(HttpMethod.Post, "payscore", "partner", "permissions", "terminate")
+ .SetOptions(request);
+
+ return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken);
+ }
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScorePartnerServiceOrderExtensions.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScorePartnerServiceOrderExtensions.cs
new file mode 100644
index 00000000..36f73446
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScorePartnerServiceOrderExtensions.cs
@@ -0,0 +1,183 @@
+using System;
+using System.Collections.Generic;
+using System.Net.Http;
+using System.Text;
+using System.Threading;
+using System.Threading.Tasks;
+using Flurl;
+using Flurl.Http;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3
+{
+ ///
+ /// 为 提供微信支付分服务商相关的 API 扩展方法。
+ ///
+ public static class WechatTenpayClientExecutePayScorePartnerServiceOrderExtensions
+ {
+ ///
+ /// 异步调用 [POST] /payscore/serviceorder 接口。
+ /// REF: https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/payscore_partner/chapter3_1.shtml
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteCreatePayScorePartnerServiceOrderAsync(this WechatTenpayClient client, Models.CreatePayScorePartnerServiceOrderRequest 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(HttpMethod.Post, "payscore", "partner", "serviceorder")
+ .SetOptions(request);
+
+ return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken);
+ }
+
+ ///
+ /// 异步调用 [GET] /payscore/serviceorder 接口。
+ /// REF: https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/payscore_partner/chapter3_2.shtml
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteGetPayScorePartnerServiceOrderByOutOrderNumberAsync(this WechatTenpayClient client, Models.GetPayScorePartnerServiceOrderByOutOrderNumberRequest 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(HttpMethod.Get, "payscore", "partner", "serviceorder")
+ .SetOptions(request)
+ .SetQueryParam("out_order_no", request.OutOrderNumber)
+ .SetQueryParam("service_id", request.ServiceId)
+ .SetQueryParam("sub_mchid", request.SubMerchantId);
+
+ return await client.SendRequestAsync(flurlReq, cancellationToken: cancellationToken);
+ }
+
+ ///
+ /// 异步调用 [GET] /payscore/serviceorder 接口。
+ /// REF: https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/payscore_partner/chapter3_2.shtml
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteGetPayScorePartnerServiceOrderByQueryIdAsync(this WechatTenpayClient client, Models.GetPayScorePartnerServiceOrderByQueryIdRequest 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(HttpMethod.Get, "payscore", "partner", "serviceorder")
+ .SetOptions(request)
+ .SetQueryParam("query_id", request.QueryId)
+ .SetQueryParam("service_id", request.ServiceId)
+ .SetQueryParam("sub_mchid", request.SubMerchantId);
+
+ return await client.SendRequestAsync(flurlReq, cancellationToken: cancellationToken);
+ }
+
+ ///
+ /// 异步调用 [POST] /payscore/serviceorder/{out_order_no}/cancel 接口。
+ /// REF: https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/payscore_partner/chapter3_3.shtml
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteCancelPayScorePartnerServiceOrderAsync(this WechatTenpayClient client, Models.CancelPayScorePartnerServiceOrderRequest 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(HttpMethod.Post, "payscore", "partner", "serviceorder", request.OutOrderNumber, "cancel")
+ .SetOptions(request);
+
+ return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken);
+ }
+
+ ///
+ /// 异步调用 [POST] /payscore/serviceorder/{out_order_no}/modify 接口。
+ /// REF: https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/payscore_partner/chapter3_4.shtml
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteModifyPayScorePartnerServiceOrderAsync(this WechatTenpayClient client, Models.ModifyPayScorePartnerServiceOrderRequest 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(HttpMethod.Post, "payscore", "partner", "serviceorder", request.OutOrderNumber, "modify")
+ .SetOptions(request);
+
+ return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken);
+ }
+
+ ///
+ /// 异步调用 [POST] /payscore/serviceorder/{out_order_no}/complete 接口。
+ /// REF: https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/payscore_partner/chapter3_5.shtml
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteSetPayScorePartnerServiceOrderCompleteAsync(this WechatTenpayClient client, Models.SetPayScorePartnerServiceOrderCompleteRequest 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(HttpMethod.Post, "payscore", "partner", "serviceorder", request.OutOrderNumber, "complete")
+ .SetOptions(request);
+
+ return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken);
+ }
+
+ ///
+ /// 异步调用 [POST] /payscore/serviceorder/{out_order_no}/pay 接口。
+ /// REF: https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/payscore_partner/chapter3_6.shtml
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteSetPayScorePartnerServiceOrderPayAsync(this WechatTenpayClient client, Models.SetPayScorePartnerServiceOrderPayRequest 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(HttpMethod.Post, "payscore", "partner", "serviceorder", request.OutOrderNumber, "pay")
+ .SetOptions(request);
+
+ return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken);
+ }
+
+ ///
+ /// 异步调用 [POST] /payscore/serviceorder/{out_order_no}/sync 接口。
+ /// REF: https://pay.weixin.qq.com/wiki/doc/apiv3/wxpay/payscore_partner/chapter3_7.shtml
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteSetPayScorePartnerServiceOrderSyncAsync(this WechatTenpayClient client, Models.SetPayScorePartnerServiceOrderSyncRequest 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(HttpMethod.Post, "payscore", "partner", "serviceorder", request.OutOrderNumber, "sync")
+ .SetOptions(request);
+
+ return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken);
+ }
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScorePermissionsExtensions.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScorePermissionsExtensions.cs
index a7854d75..b8c473db 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScorePermissionsExtensions.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScorePermissionsExtensions.cs
@@ -89,7 +89,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3
if (request is null) throw new ArgumentNullException(nameof(request));
IFlurlRequest flurlReq = client
- .CreateRequest(HttpMethod.Get, "payscore", "permissions", "openid", request.OpenId)
+ .CreateRequest(HttpMethod.Get, "payscore", "permissions", "openid", request.OpenId!)
.SetOptions(request)
.SetQueryParam("appid", request.AppId)
.SetQueryParam("service_id", request.ServiceId);
@@ -111,7 +111,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3
if (request is null) throw new ArgumentNullException(nameof(request));
IFlurlRequest flurlReq = client
- .CreateRequest(HttpMethod.Post, "payscore", "permissions", "openid", request.OpenId, "terminate")
+ .CreateRequest(HttpMethod.Post, "payscore", "permissions", "openid", request.OpenId!, "terminate")
.SetOptions(request);
return await client.SendRequestWithJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken);
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayPartnerTransactions/GetPayPartnerTransactionByOutTradeNumberResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayPartnerTransactions/GetPayPartnerTransactionByOutTradeNumberResponse.cs
index f3110053..21200384 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayPartnerTransactions/GetPayPartnerTransactionByOutTradeNumberResponse.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayPartnerTransactions/GetPayPartnerTransactionByOutTradeNumberResponse.cs
@@ -48,7 +48,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
public string MerchantId { get; set; } = default!;
///
- /// 获取或设置子商户商户号。
+ /// 获取或设置子商户号。
///
[Newtonsoft.Json.JsonProperty("sub_mchid")]
[System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/ApplyPayScorePartnerPermissionsRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/ApplyPayScorePartnerPermissionsRequest.cs
new file mode 100644
index 00000000..1dfaaaee
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/ApplyPayScorePartnerPermissionsRequest.cs
@@ -0,0 +1,32 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/permissions 接口的请求。
+ ///
+ public class ApplyPayScorePartnerPermissionsRequest : ApplyPayScorePermissionsRequest
+ {
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
+ public string SubMerchantId { get; set; } = string.Empty;
+
+ ///
+ /// 获取或设置服务商 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("appid")]
+ public override string AppId { get; set; } = string.Empty;
+
+ ///
+ /// 获取或设置子商户 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_appid")]
+ public string SubAppId { get; set; } = string.Empty;
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/ApplyPayScorePartnerPermissionsResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/ApplyPayScorePartnerPermissionsResponse.cs
new file mode 100644
index 00000000..83eda152
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/ApplyPayScorePartnerPermissionsResponse.cs
@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/permissions 接口的响应。
+ ///
+ public class ApplyPayScorePartnerPermissionsResponse : ApplyPayScorePermissionsResponse
+ {
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/GetPayScorePartnerPermissionsByAuthorizationCodeRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/GetPayScorePartnerPermissionsByAuthorizationCodeRequest.cs
new file mode 100644
index 00000000..dd582025
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/GetPayScorePartnerPermissionsByAuthorizationCodeRequest.cs
@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [GET] /payscore/partner/permissions/authorization-code/{authorization_code} 接口的请求。
+ ///
+ public class GetPayScorePartnerPermissionsByAuthorizationCodeRequest : GetPayScorePermissionsByAuthorizationCodeRequest
+ {
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
+ public string SubMerchantId { get; set; } = string.Empty;
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/GetPayScorePartnerPermissionsByAuthorizationCodeResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/GetPayScorePartnerPermissionsByAuthorizationCodeResponse.cs
new file mode 100644
index 00000000..3585809f
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/GetPayScorePartnerPermissionsByAuthorizationCodeResponse.cs
@@ -0,0 +1,46 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [GET] /payscore/partner/permissions/authorization-code/{authorization_code} 接口的响应。
+ ///
+ public class GetPayScorePartnerPermissionsByAuthorizationCodeResponse : GetPayScorePermissionsByAuthorizationCodeResponse
+ {
+ ///
+ /// 获取或设置服务商商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("mchid")]
+ public override string MerchantId { get; set; } = default!;
+
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
+ public string SubMerchantId { get; set; } = default!;
+
+ ///
+ /// 获取或设置服务商 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("appid")]
+ public override string AppId { get; set; } = default!;
+
+ ///
+ /// 获取或设置子商户 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_appid")]
+ public string? SubAppId { get; set; }
+
+ ///
+ /// 获取或设置子商户用户唯一标识。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_openid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_openid")]
+ public string? SubOpenId { get; set; }
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/GetPayScorePartnerPermissionsByOpenIdRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/GetPayScorePartnerPermissionsByOpenIdRequest.cs
new file mode 100644
index 00000000..07f9863b
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/GetPayScorePartnerPermissionsByOpenIdRequest.cs
@@ -0,0 +1,46 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [GET] /payscore/partner/permissions/search 接口的请求。
+ ///
+ public class GetPayScorePartnerPermissionsByOpenIdRequest : GetPayScorePermissionsByOpenIdRequest
+ {
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
+ public string SubMerchantId { get; set; } = string.Empty;
+
+ ///
+ /// 获取或设置服务商 AppId。
+ ///
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
+ public override string AppId { get; set; } = string.Empty;
+
+ ///
+ /// 获取或设置子商户 AppId。
+ ///
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
+ public string? SubAppId { get; set; }
+
+ ///
+ /// 获取或设置用户在服务商下唯一标识。与字段 二选一。
+ ///
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
+ public override string? OpenId { get; set; }
+
+ ///
+ /// 获取或设置用户在子商户下唯一标识。与字段 二选一。
+ ///
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
+ public string? SubOpenId { get; set; }
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/GetPayScorePartnerPermissionsByOpenIdResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/GetPayScorePartnerPermissionsByOpenIdResponse.cs
new file mode 100644
index 00000000..a02f0645
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/GetPayScorePartnerPermissionsByOpenIdResponse.cs
@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [GET] /payscore/partner/permissions/search 接口的响应。
+ ///
+ public class GetPayScorePartnerPermissionsByOpenIdResponse : GetPayScorePartnerPermissionsByAuthorizationCodeResponse
+ {
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/TerminatePayScorePartnerPermissionsByAuthorizationCodeRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/TerminatePayScorePartnerPermissionsByAuthorizationCodeRequest.cs
new file mode 100644
index 00000000..61eb779b
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/TerminatePayScorePartnerPermissionsByAuthorizationCodeRequest.cs
@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/permissions/authorization-code/{authorization_code}/terminate 接口的请求。
+ ///
+ public class TerminatePayScorePartnerPermissionsByAuthorizationCodeRequest : TerminatePayScorePermissionsByAuthorizationCodeRequest
+ {
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
+ public string SubMerchantId { get; set; } = string.Empty;
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/TerminatePayScorePartnerPermissionsByAuthorizationCodeResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/TerminatePayScorePartnerPermissionsByAuthorizationCodeResponse.cs
new file mode 100644
index 00000000..f8384856
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/TerminatePayScorePartnerPermissionsByAuthorizationCodeResponse.cs
@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/permissions/authorization-code/{authorization_code}/terminate 接口的响应。
+ ///
+ public class TerminatePayScorePartnerPermissionsByAuthorizationCodeResponse : TerminatePayScorePermissionsByAuthorizationCodeResponse
+ {
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/TerminatePayScorePartnerPermissionsByOpenIdRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/TerminatePayScorePartnerPermissionsByOpenIdRequest.cs
new file mode 100644
index 00000000..e1ce4beb
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/TerminatePayScorePartnerPermissionsByOpenIdRequest.cs
@@ -0,0 +1,46 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/permissions/terminate 接口的请求。
+ ///
+ public class TerminatePayScorePartnerPermissionsByOpenIdRequest : TerminatePayScorePermissionsByOpenIdRequest
+ {
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
+ public string SubMerchantId { get; set; } = string.Empty;
+
+ ///
+ /// 获取或设置服务商 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("appid")]
+ public override string AppId { get; set; } = string.Empty;
+
+ ///
+ /// 获取或设置子商户 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_appid")]
+ public string SubAppId { get; set; } = string.Empty;
+
+ ///
+ /// 获取或设置用户在服务商下唯一标识。与字段 二选一。
+ ///
+ [Newtonsoft.Json.JsonProperty("openid")]
+ [System.Text.Json.Serialization.JsonPropertyName("openid")]
+ public override string? OpenId { get; set; }
+
+ ///
+ /// 获取或设置用户在子商户下唯一标识。与字段 二选一。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_openid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_openid")]
+ public string? SubOpenId { get; set; }
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/TerminatePayScorePartnerPermissionsByOpenIdResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/TerminatePayScorePartnerPermissionsByOpenIdResponse.cs
new file mode 100644
index 00000000..49147618
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerPermissions/TerminatePayScorePartnerPermissionsByOpenIdResponse.cs
@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/permissions/terminate 接口的响应。
+ ///
+ public class TerminatePayScorePartnerPermissionsByOpenIdResponse : TerminatePayScorePartnerPermissionsByAuthorizationCodeResponse
+ {
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/CancelPayScorePartnerServiceOrderRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/CancelPayScorePartnerServiceOrderRequest.cs
new file mode 100644
index 00000000..e816c4c2
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/CancelPayScorePartnerServiceOrderRequest.cs
@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/serviceorder/{out_order_no}/cancel 接口的请求。
+ ///
+ public class CancelPayScorePartnerServiceOrderRequest : CancelPayScoreServiceOrderRequest
+ {
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
+ public string SubMerchantId { get; set; } = string.Empty;
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/CancelPayScorePartnerServiceOrderResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/CancelPayScorePartnerServiceOrderResponse.cs
new file mode 100644
index 00000000..a23a966c
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/CancelPayScorePartnerServiceOrderResponse.cs
@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/serviceorder/{out_order_no}/cancel 接口的响应。
+ ///
+ public class CancelPayScorePartnerServiceOrderResponse : WechatTenpayResponse
+ {
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/CreatePayScorePartnerServiceOrderRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/CreatePayScorePartnerServiceOrderRequest.cs
new file mode 100644
index 00000000..f427248e
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/CreatePayScorePartnerServiceOrderRequest.cs
@@ -0,0 +1,46 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/serviceorder 接口的请求。
+ ///
+ public class CreatePayScorePartnerServiceOrderRequest : CreatePayScoreServiceOrderRequest
+ {
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
+ public string SubMerchantId { get; set; } = string.Empty;
+
+ ///
+ /// 获取或设置服务商 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("appid")]
+ public override string AppId { get; set; } = string.Empty;
+
+ ///
+ /// 获取或设置子商户 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_appid")]
+ public string? SubAppId { get; set; }
+
+ ///
+ /// 获取或设置用户在服务商下唯一标识。与字段 二选一。
+ ///
+ [Newtonsoft.Json.JsonProperty("openid")]
+ [System.Text.Json.Serialization.JsonPropertyName("openid")]
+ public override string? OpenId { get; set; }
+
+ ///
+ /// 获取或设置用户在子商户下唯一标识。与字段 二选一。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_openid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_openid")]
+ public string? SubOpenId { get; set; }
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/CreatePayScorePartnerServiceOrderResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/CreatePayScorePartnerServiceOrderResponse.cs
new file mode 100644
index 00000000..c8b9fc9c
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/CreatePayScorePartnerServiceOrderResponse.cs
@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/serviceorder 接口的响应。
+ ///
+ public class CreatePayScorePartnerServiceOrderResponse : GetPayScorePartnerServiceOrderByOutOrderNumberResponse
+ {
+ ///
+ /// 获取或设置跳转微信侧小程序订单数据。
+ ///
+ [Newtonsoft.Json.JsonProperty("package")]
+ [System.Text.Json.Serialization.JsonPropertyName("package")]
+ public string Package { get; set; } = default!;
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/GetPayScorePartnerServiceOrderByOutOrderNumberRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/GetPayScorePartnerServiceOrderByOutOrderNumberRequest.cs
new file mode 100644
index 00000000..6a9d5546
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/GetPayScorePartnerServiceOrderByOutOrderNumberRequest.cs
@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [GET] /payscore/partner/serviceorder 接口的请求。
+ ///
+ public class GetPayScorePartnerServiceOrderByOutOrderNumberRequest : GetPayScoreServiceOrderByOutOrderNumberRequest
+ {
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
+ public string SubMerchantId { get; set; } = string.Empty;
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/GetPayScorePartnerServiceOrderByOutOrderNumberResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/GetPayScorePartnerServiceOrderByOutOrderNumberResponse.cs
new file mode 100644
index 00000000..a9874c5f
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/GetPayScorePartnerServiceOrderByOutOrderNumberResponse.cs
@@ -0,0 +1,53 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [GET] /payscore/partner/serviceorder 接口的响应。
+ ///
+ public class GetPayScorePartnerServiceOrderByOutOrderNumberResponse : GetPayScoreServiceOrderByOutOrderNumberResponse
+ {
+ ///
+ /// 获取或设置服务商商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("mchid")]
+ public override string MerchantId { get; set; } = default!;
+
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
+ public string SubMerchantId { get; set; } = default!;
+
+ ///
+ /// 获取或设置服务商 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("appid")]
+ public override string AppId { get; set; } = default!;
+
+ ///
+ /// 获取或设置子商户 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_appid")]
+ public string? SubAppId { get; set; }
+
+ ///
+ /// 获取或设置用户在服务商下唯一标识。
+ ///
+ [Newtonsoft.Json.JsonProperty("openid")]
+ [System.Text.Json.Serialization.JsonPropertyName("openid")]
+ public override string? OpenId { get; set; }
+
+ ///
+ /// 获取或设置用户在子商户下唯一标识。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_openid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_openid")]
+ public string? SubOpenId { get; set; }
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/GetPayScorePartnerServiceOrderByQueryIdRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/GetPayScorePartnerServiceOrderByQueryIdRequest.cs
new file mode 100644
index 00000000..a68d85a4
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/GetPayScorePartnerServiceOrderByQueryIdRequest.cs
@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [GET] /payscore/partner/serviceorder 接口的请求。
+ ///
+ public class GetPayScorePartnerServiceOrderByQueryIdRequest : GetPayScoreServiceOrderByQueryIdRequest
+ {
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
+ public string SubMerchantId { get; set; } = string.Empty;
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/GetPayScorePartnerServiceOrderByQueryIdResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/GetPayScorePartnerServiceOrderByQueryIdResponse.cs
new file mode 100644
index 00000000..b8243a0a
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/GetPayScorePartnerServiceOrderByQueryIdResponse.cs
@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [GET] /payscore/partner/serviceorder 接口的响应。
+ ///
+ public class GetPayScorePartnerServiceOrderByQueryIdResponse : GetPayScorePartnerServiceOrderByOutOrderNumberResponse
+ {
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/ModifyPayScorePartnerServiceOrderRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/ModifyPayScorePartnerServiceOrderRequest.cs
new file mode 100644
index 00000000..8be68623
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/ModifyPayScorePartnerServiceOrderRequest.cs
@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/serviceorder/{out_order_no}/modify 接口的请求。
+ ///
+ public class ModifyPayScorePartnerServiceOrderRequest : ModifyPayScoreServiceOrderRequest
+ {
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
+ public string SubMerchantId { get; set; } = string.Empty;
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/ModifyPayScorePartnerServiceOrderResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/ModifyPayScorePartnerServiceOrderResponse.cs
new file mode 100644
index 00000000..2f7f964a
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/ModifyPayScorePartnerServiceOrderResponse.cs
@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/serviceorder/{out_order_no}/modify 接口的响应。
+ ///
+ public class ModifyPayScorePartnerServiceOrderResponse : WechatTenpayResponse
+ {
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderCompleteRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderCompleteRequest.cs
new file mode 100644
index 00000000..a829564d
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderCompleteRequest.cs
@@ -0,0 +1,27 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/serviceorder/{out_order_no}/complete 接口的请求。
+ ///
+ public class SetPayScorePartnerServiceOrderCompleteRequest : SetPayScoreServiceOrderCompleteRequest
+ {
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
+ public string SubMerchantId { get; set; } = string.Empty;
+
+ ///
+ /// 获取或设置服务完结时间。
+ ///
+ [Newtonsoft.Json.JsonProperty("complete_time")]
+ [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.RFC3339NullableDateTimeOffsetConverter))]
+ [System.Text.Json.Serialization.JsonPropertyName("complete_time")]
+ [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Converters.RFC3339NullableDateTimeOffsetConverter))]
+ public DateTimeOffset? CompleteTime { get; set; }
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderCompleteResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderCompleteResponse.cs
new file mode 100644
index 00000000..fc8a7300
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderCompleteResponse.cs
@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/serviceorder/{out_order_no}/complete 接口的响应。
+ ///
+ public class SetPayScorePartnerServiceOrderCompleteResponse : WechatTenpayResponse
+ {
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderPayRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderPayRequest.cs
new file mode 100644
index 00000000..308687b0
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderPayRequest.cs
@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/serviceorder/{out_order_no}/pay 接口的请求。
+ ///
+ public class SetPayScorePartnerServiceOrderPayRequest : SetPayScoreServiceOrderPayRequest
+ {
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
+ public string SubMerchantId { get; set; } = string.Empty;
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderPayResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderPayResponse.cs
new file mode 100644
index 00000000..b1379281
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderPayResponse.cs
@@ -0,0 +1,46 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/serviceorder/{out_order_no}/pay 接口的响应。
+ ///
+ public class SetPayScorePartnerServiceOrderPayResponse : WechatTenpayResponse
+ {
+ ///
+ /// 获取或设置微信 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("appid")]
+ public string AppId { get; set; } = default!;
+
+ ///
+ /// 获取或设置微信商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("mchid")]
+ public string MerchantId { get; set; } = default!;
+
+ ///
+ /// 获取或设置服务 ID。
+ ///
+ [Newtonsoft.Json.JsonProperty("service_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("service_id")]
+ public string ServiceId { get; set; } = default!;
+
+ ///
+ /// 获取或设置商户服务订单号。
+ ///
+ [Newtonsoft.Json.JsonProperty("out_order_no")]
+ [System.Text.Json.Serialization.JsonPropertyName("out_order_no")]
+ public string OutOrderNumber { get; set; } = default!;
+
+ ///
+ /// 获取或设置微信支付服务订单号。
+ ///
+ [Newtonsoft.Json.JsonProperty("order_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("order_id")]
+ public string OrderId { get; set; } = default!;
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderSyncRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderSyncRequest.cs
new file mode 100644
index 00000000..1bebb6da
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderSyncRequest.cs
@@ -0,0 +1,18 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/serviceorder/{out_order_no}/sync 接口的请求。
+ ///
+ public class SetPayScorePartnerServiceOrderSyncRequest : SetPayScoreServiceOrderSyncRequest
+ {
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
+ public string SubMerchantId { get; set; } = string.Empty;
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderSyncResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderSyncResponse.cs
new file mode 100644
index 00000000..c69ffcc4
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePartnerServiceOrder/SetPayScorePartnerServiceOrderSyncResponse.cs
@@ -0,0 +1,12 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /payscore/partner/serviceorder/{out_order_no}/sync 接口的响应。
+ ///
+ public class SetPayScorePartnerServiceOrderSyncResponse : WechatTenpayResponse
+ {
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/ApplyPayScorePermissionsRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/ApplyPayScorePermissionsRequest.cs
index 5423c374..a030e2ec 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/ApplyPayScorePermissionsRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/ApplyPayScorePermissionsRequest.cs
@@ -13,7 +13,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("appid")]
[System.Text.Json.Serialization.JsonPropertyName("appid")]
- public string AppId { get; set; } = string.Empty;
+ public virtual string AppId { get; set; } = string.Empty;
///
/// 获取或设置授权协议号。
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/GetPayScorePermissionsByAuthorizationCodeResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/GetPayScorePermissionsByAuthorizationCodeResponse.cs
index ab934877..e694c05f 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/GetPayScorePermissionsByAuthorizationCodeResponse.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/GetPayScorePermissionsByAuthorizationCodeResponse.cs
@@ -13,14 +13,14 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("mchid")]
[System.Text.Json.Serialization.JsonPropertyName("mchid")]
- public string MerchantId { get; set; } = default!;
+ public virtual string MerchantId { get; set; } = default!;
///
/// 获取或设置微信 AppId。
///
[Newtonsoft.Json.JsonProperty("appid")]
[System.Text.Json.Serialization.JsonPropertyName("appid")]
- public string AppId { get; set; } = default!;
+ public virtual string AppId { get; set; } = default!;
///
/// 获取或设置服务 ID。
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/GetPayScorePermissionsByOpenIdRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/GetPayScorePermissionsByOpenIdRequest.cs
index c07386b2..d8245f0a 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/GetPayScorePermissionsByOpenIdRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/GetPayScorePermissionsByOpenIdRequest.cs
@@ -8,25 +8,25 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
public class GetPayScorePermissionsByOpenIdRequest : WechatTenpayRequest
{
+ ///
+ /// 获取或设置服务 ID。
+ ///
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
+ public string ServiceId { get; set; } = string.Empty;
+
///
/// 获取或设置微信 AppId。
///
[Newtonsoft.Json.JsonIgnore]
[System.Text.Json.Serialization.JsonIgnore]
- public string AppId { get; set; } = string.Empty;
+ public virtual string AppId { get; set; } = string.Empty;
///
/// 获取或设置用户唯一标识。
///
[Newtonsoft.Json.JsonIgnore]
[System.Text.Json.Serialization.JsonIgnore]
- public string OpenId { get; set; } = string.Empty;
-
- ///
- /// 获取或设置服务 ID。
- ///
- [Newtonsoft.Json.JsonIgnore]
- [System.Text.Json.Serialization.JsonIgnore]
- public string ServiceId { get; set; } = string.Empty;
+ public virtual string? OpenId { get; set; }
}
}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/TerminatePayScorePermissionsByOpenIdRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/TerminatePayScorePermissionsByOpenIdRequest.cs
index 14fdf768..f669ce4f 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/TerminatePayScorePermissionsByOpenIdRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScorePermissions/TerminatePayScorePermissionsByOpenIdRequest.cs
@@ -13,14 +13,14 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("appid")]
[System.Text.Json.Serialization.JsonPropertyName("appid")]
- public string AppId { get; set; } = string.Empty;
+ public virtual string AppId { get; set; } = string.Empty;
///
/// 获取或设置用户唯一标识。
///
[Newtonsoft.Json.JsonIgnore]
[System.Text.Json.Serialization.JsonIgnore]
- public string OpenId { get; set; } = string.Empty;
+ public virtual string? OpenId { get; set; }
///
/// 获取或设置服务 ID。
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/CancelPayScoreServiceOrderRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/CancelPayScoreServiceOrderRequest.cs
index dc5886d3..7a58716b 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/CancelPayScoreServiceOrderRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/CancelPayScoreServiceOrderRequest.cs
@@ -20,7 +20,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("appid")]
[System.Text.Json.Serialization.JsonPropertyName("appid")]
- public string AppId { get; set; } = string.Empty;
+ public string? AppId { get; set; }
///
/// 获取或设置服务 ID。
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/CreatePayScoreServiceOrderRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/CreatePayScoreServiceOrderRequest.cs
index 47953c27..6b757384 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/CreatePayScoreServiceOrderRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/CreatePayScoreServiceOrderRequest.cs
@@ -150,7 +150,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("appid")]
[System.Text.Json.Serialization.JsonPropertyName("appid")]
- public string AppId { get; set; } = string.Empty;
+ public virtual string AppId { get; set; } = string.Empty;
///
/// 获取或设置商户服务订单号。
@@ -192,7 +192,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("openid")]
[System.Text.Json.Serialization.JsonPropertyName("openid")]
- public string? OpenId { get; set; }
+ public virtual string? OpenId { get; set; }
///
/// 获取或设置是否需要用户确认。
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/CreatePayScoreServiceOrderResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/CreatePayScoreServiceOrderResponse.cs
index 048065f0..edc07b2d 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/CreatePayScoreServiceOrderResponse.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/CreatePayScoreServiceOrderResponse.cs
@@ -6,141 +6,13 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
/// 表示 [POST] /payscore/serviceorder 接口的响应。
///
- public class CreatePayScoreServiceOrderResponse : WechatTenpayResponse
+ public class CreatePayScoreServiceOrderResponse : GetPayScoreServiceOrderByOutOrderNumberResponse
{
- public static class Types
- {
- public class Payment : GetPayScoreServiceOrderByOutOrderNumberResponse.Types.Payment
- {
- }
-
- public class Discount : GetPayScoreServiceOrderByOutOrderNumberResponse.Types.Discount
- {
- }
-
- public class TimeRange : GetPayScoreServiceOrderByOutOrderNumberResponse.Types.TimeRange
- {
- }
-
- public class Location : GetPayScoreServiceOrderByOutOrderNumberResponse.Types.Location
- {
- }
-
- public class RiskFund : GetPayScoreServiceOrderByOutOrderNumberResponse.Types.RiskFund
- {
- }
- }
-
- ///
- /// 获取或设置微信 AppId。
- ///
- [Newtonsoft.Json.JsonProperty("appid")]
- [System.Text.Json.Serialization.JsonPropertyName("appid")]
- public string AppId { get; set; } = default!;
-
- ///
- /// 获取或设置微信商户号。
- ///
- [Newtonsoft.Json.JsonProperty("mchid")]
- [System.Text.Json.Serialization.JsonPropertyName("mchid")]
- public string MerchantId { get; set; } = default!;
-
- ///
- /// 获取或设置微信支付服务订单号。
- ///
- [Newtonsoft.Json.JsonProperty("order_id")]
- [System.Text.Json.Serialization.JsonPropertyName("order_id")]
- public string OrderId { get; set; } = default!;
-
- ///
- /// 获取或设置商户服务订单号。
- ///
- [Newtonsoft.Json.JsonProperty("out_order_no")]
- [System.Text.Json.Serialization.JsonPropertyName("out_order_no")]
- public string OutOrderNumber { get; set; } = default!;
-
- ///
- /// 获取或设置服务 ID。
- ///
- [Newtonsoft.Json.JsonProperty("service_id")]
- [System.Text.Json.Serialization.JsonPropertyName("service_id")]
- public string ServiceId { get; set; } = default!;
-
- ///
- /// 获取或设置服务信息。
- ///
- [Newtonsoft.Json.JsonProperty("service_introduction")]
- [System.Text.Json.Serialization.JsonPropertyName("service_introduction")]
- public string ServiceIntroduction { get; set; } = default!;
-
- ///
- /// 获取或设置服务订单状态。
- ///
- [Newtonsoft.Json.JsonProperty("state")]
- [System.Text.Json.Serialization.JsonPropertyName("state")]
- public string State { get; set; } = default!;
-
- ///
- /// 获取或设置服务订单状态说明。
- ///
- [Newtonsoft.Json.JsonProperty("state_description")]
- [System.Text.Json.Serialization.JsonPropertyName("state_description")]
- public string StateDescription { get; set; } = default!;
-
///
/// 获取或设置跳转微信侧小程序订单数据。
///
[Newtonsoft.Json.JsonProperty("package")]
[System.Text.Json.Serialization.JsonPropertyName("package")]
public string Package { get; set; } = default!;
-
- ///
- /// 获取或设置附加数据。
- ///
- [Newtonsoft.Json.JsonProperty("attach")]
- [System.Text.Json.Serialization.JsonPropertyName("attach")]
- public string Attachment { get; set; } = default!;
-
- ///
- /// 获取或设置付费项目列表。
- ///
- [Newtonsoft.Json.JsonProperty("post_payments")]
- [System.Text.Json.Serialization.JsonPropertyName("post_payments")]
- public Types.Payment[]? PostPaymentList { get; set; }
-
- ///
- /// 获取或设置商户优惠列表。
- ///
- [Newtonsoft.Json.JsonProperty("post_discounts")]
- [System.Text.Json.Serialization.JsonPropertyName("post_discounts")]
- public Types.Discount[]? PostDiscountList { get; set; }
-
- ///
- /// 获取或设置服务时间段信息。
- ///
- [Newtonsoft.Json.JsonProperty("time_range")]
- [System.Text.Json.Serialization.JsonPropertyName("time_range")]
- public Types.TimeRange? TimeRange { get; set; }
-
- ///
- /// 获取或设置服务位置信息。
- ///
- [Newtonsoft.Json.JsonProperty("location")]
- [System.Text.Json.Serialization.JsonPropertyName("location")]
- public Types.Location? Location { get; set; }
-
- ///
- /// 获取或设置订单风险金信息。
- ///
- [Newtonsoft.Json.JsonProperty("risk_fund")]
- [System.Text.Json.Serialization.JsonPropertyName("risk_fund")]
- public Types.RiskFund? RiskFund { get; set; }
-
- ///
- /// 获取或设置通知回调地址。
- ///
- [Newtonsoft.Json.JsonProperty("notify_url")]
- [System.Text.Json.Serialization.JsonPropertyName("notify_url")]
- public string? NotifyUrl { get; set; }
}
}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/GetPayScoreServiceOrderByOutOrderNumberRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/GetPayScoreServiceOrderByOutOrderNumberRequest.cs
index 3933b692..b6924435 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/GetPayScoreServiceOrderByOutOrderNumberRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/GetPayScoreServiceOrderByOutOrderNumberRequest.cs
@@ -18,15 +18,15 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
/// 获取或设置微信 AppId。
///
- [Newtonsoft.Json.JsonProperty("appid")]
- [System.Text.Json.Serialization.JsonPropertyName("appid")]
- public string AppId { get; set; } = string.Empty;
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
+ public string? AppId { get; set; }
///
/// 获取或设置服务 ID。
///
- [Newtonsoft.Json.JsonProperty("service_id")]
- [System.Text.Json.Serialization.JsonPropertyName("service_id")]
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
public string ServiceId { get; set; } = string.Empty;
}
}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/GetPayScoreServiceOrderByOutOrderNumberResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/GetPayScoreServiceOrderByOutOrderNumberResponse.cs
index 8a1da4b0..7bd5c61d 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/GetPayScoreServiceOrderByOutOrderNumberResponse.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/GetPayScoreServiceOrderByOutOrderNumberResponse.cs
@@ -155,7 +155,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("seq")]
[System.Text.Json.Serialization.JsonPropertyName("seq")]
- public int SequenceNumber { get; set; }
+ public int Sequence { get; set; }
///
/// 获取或设置单笔收款金额(单位:分)。
@@ -226,19 +226,19 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
}
}
- ///
- /// 获取或设置微信 AppId。
- ///
- [Newtonsoft.Json.JsonProperty("appid")]
- [System.Text.Json.Serialization.JsonPropertyName("appid")]
- public string AppId { get; set; } = default!;
-
///
/// 获取或设置微信商户号。
///
[Newtonsoft.Json.JsonProperty("mchid")]
[System.Text.Json.Serialization.JsonPropertyName("mchid")]
- public string MerchantId { get; set; } = default!;
+ public virtual string MerchantId { get; set; } = default!;
+
+ ///
+ /// 获取或设置微信 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("appid")]
+ public virtual string AppId { get; set; } = default!;
///
/// 获取或设置商户服务订单号。
@@ -301,7 +301,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("openid")]
[System.Text.Json.Serialization.JsonPropertyName("openid")]
- public string? OpenId { get; set; }
+ public virtual string? OpenId { get; set; }
///
/// 获取或设置付费项目列表。
@@ -350,6 +350,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("need_collection")]
[System.Text.Json.Serialization.JsonPropertyName("need_collection")]
+ [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Converters.StringTypedNullableBooleanConverter))]
public bool? RequireCollection { get; set; }
///
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/GetPayScoreServiceOrderByQueryIdRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/GetPayScoreServiceOrderByQueryIdRequest.cs
index 732c61cb..030759f1 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/GetPayScoreServiceOrderByQueryIdRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/GetPayScoreServiceOrderByQueryIdRequest.cs
@@ -18,15 +18,15 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
/// 获取或设置微信 AppId。
///
- [Newtonsoft.Json.JsonProperty("appid")]
- [System.Text.Json.Serialization.JsonPropertyName("appid")]
- public string AppId { get; set; } = string.Empty;
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
+ public string? AppId { get; set; }
///
/// 获取或设置服务 ID。
///
- [Newtonsoft.Json.JsonProperty("service_id")]
- [System.Text.Json.Serialization.JsonPropertyName("service_id")]
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
public string ServiceId { get; set; } = string.Empty;
}
}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/ModifyPayScoreServiceOrderRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/ModifyPayScoreServiceOrderRequest.cs
index b26de64f..82138651 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/ModifyPayScoreServiceOrderRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/ModifyPayScoreServiceOrderRequest.cs
@@ -31,7 +31,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("appid")]
[System.Text.Json.Serialization.JsonPropertyName("appid")]
- public string AppId { get; set; } = string.Empty;
+ public string? AppId { get; set; }
///
/// 获取或设置服务 ID。
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/SetPayScoreServiceOrderCompleteRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/SetPayScoreServiceOrderCompleteRequest.cs
index 7cdc34cb..4609e49b 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/SetPayScoreServiceOrderCompleteRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/SetPayScoreServiceOrderCompleteRequest.cs
@@ -22,14 +22,8 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
{
}
- public class Location
+ public class Location : CreatePayScoreServiceOrderRequest.Types.Location
{
- ///
- /// 获取或设置服务结束地点。
- ///
- [Newtonsoft.Json.JsonProperty("end_location")]
- [System.Text.Json.Serialization.JsonPropertyName("end_location")]
- public string EndLocation { get; set; } = string.Empty;
}
}
@@ -45,7 +39,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("appid")]
[System.Text.Json.Serialization.JsonPropertyName("appid")]
- public string AppId { get; set; } = string.Empty;
+ public string? AppId { get; set; }
///
/// 获取或设置服务 ID。
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/SetPayScoreServiceOrderPayRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/SetPayScoreServiceOrderPayRequest.cs
index 8ba82e53..5c1113cf 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/SetPayScoreServiceOrderPayRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/SetPayScoreServiceOrderPayRequest.cs
@@ -41,7 +41,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("appid")]
[System.Text.Json.Serialization.JsonPropertyName("appid")]
- public string AppId { get; set; } = string.Empty;
+ public string? AppId { get; set; }
///
/// 获取或设置服务 ID。
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/SetPayScoreServiceOrderSyncRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/SetPayScoreServiceOrderSyncRequest.cs
index a0be354b..f4c6511c 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/SetPayScoreServiceOrderSyncRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScoreServiceOrder/SetPayScoreServiceOrderSyncRequest.cs
@@ -13,13 +13,27 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
public class Detail
{
///
- /// 获取或设置收款成功时间字符串(格式:yyyyMMddHHmmss 或 yyyyMMdd)。
+ /// 获取或设置收款序号。
+ ///
+ [Newtonsoft.Json.JsonProperty("seq")]
+ [System.Text.Json.Serialization.JsonPropertyName("seq")]
+ public int? Sequence { get; set; }
+
+ ///
+ /// 获取或设置收款成功时间。
///
[Newtonsoft.Json.JsonProperty("paid_time")]
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.CommonWithoutSeparatorsNullableDateTimeOffsetConverter))]
[System.Text.Json.Serialization.JsonPropertyName("paid_time")]
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Converters.CommonWithoutSeparatorsNullableDateTimeOffsetConverter))]
public DateTimeOffset? PaidTime { get; set; }
+
+ ///
+ /// 获取或设置收款金额(单位:分)。
+ ///
+ [Newtonsoft.Json.JsonProperty("paid_amount")]
+ [System.Text.Json.Serialization.JsonPropertyName("paid_amount")]
+ public int? PaidAmount { get; set; }
}
}
@@ -35,7 +49,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("appid")]
[System.Text.Json.Serialization.JsonPropertyName("appid")]
- public string AppId { get; set; } = string.Empty;
+ public string? AppId { get; set; }
///
/// 获取或设置服务 ID。
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Resources/PayPartnerTransactions/PartnerRefundResource.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Resources/PayPartnerTransactions/PartnerRefundResource.cs
index 21424e6c..b94e717a 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Resources/PayPartnerTransactions/PartnerRefundResource.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Resources/PayPartnerTransactions/PartnerRefundResource.cs
@@ -25,7 +25,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Resources
public string MerchantId { get; set; } = default!;
///
- /// 获取或设置子商户商户号。
+ /// 获取或设置子商户号。
///
[Newtonsoft.Json.JsonProperty("sub_mchid")]
[System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Resources/PayPartnerTransactions/PartnerTransactionResource.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Resources/PayPartnerTransactions/PartnerTransactionResource.cs
index 15eab04b..71b04c7e 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Resources/PayPartnerTransactions/PartnerTransactionResource.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Resources/PayPartnerTransactions/PartnerTransactionResource.cs
@@ -35,7 +35,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Resources
public string MerchantId { get; set; } = default!;
///
- /// 获取或设置子商户商户号。
+ /// 获取或设置子商户号。
///
[Newtonsoft.Json.JsonProperty("sub_mchid")]
[System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Resources/PayScorePartnerPermissions/PayScorePartnerPermissionsResource.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Resources/PayScorePartnerPermissions/PayScorePartnerPermissionsResource.cs
new file mode 100644
index 00000000..c000df75
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Resources/PayScorePartnerPermissions/PayScorePartnerPermissionsResource.cs
@@ -0,0 +1,84 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Resources
+{
+ ///
+ /// 表示 PAYSCORE.USER_OPEN_SERVICE 通知的数据。
+ /// 表示 PAYSCORE.USER_CLOSE_SERVICE 通知的数据。
+ ///
+ public class PayScorePartnerPermissionsResource : WechatTenpayCallback.Types.IDecryptedResource
+ {
+ ///
+ /// 获取或设置服务商商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("mch_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("mch_id")]
+ public string MerchantId { get; set; } = default!;
+
+ ///
+ /// 获取或设置子商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mch_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mch_id")]
+ public string SubMerchantId { get; set; } = default!;
+
+ ///
+ /// 获取或设置服务商 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("appid")]
+ public string AppId { get; set; } = default!;
+
+ ///
+ /// 获取或设置子商户 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_appid")]
+ public string? SubAppId { get; set; }
+
+ ///
+ /// 获取或设置授权协议号。
+ ///
+ [Newtonsoft.Json.JsonProperty("authorization_code")]
+ [System.Text.Json.Serialization.JsonPropertyName("authorization_code")]
+ public string? AuthorizationCode { get; set; }
+
+ ///
+ /// 获取或设置服务 ID。
+ ///
+ [Newtonsoft.Json.JsonProperty("service_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("service_id")]
+ public string ServiceId { get; set; } = default!;
+
+ ///
+ /// 获取或设置用户在服务商下唯一标识。
+ ///
+ [Newtonsoft.Json.JsonProperty("openid")]
+ [System.Text.Json.Serialization.JsonPropertyName("openid")]
+ public string? OpenId { get; set; }
+
+ ///
+ /// 获取或设置用户在子商户下唯一标识。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_openid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_openid")]
+ public string? SubOpenId { get; set; }
+
+ ///
+ /// 获取或设置回调状态。
+ ///
+ [Newtonsoft.Json.JsonProperty("user_service_status")]
+ [System.Text.Json.Serialization.JsonPropertyName("user_service_status")]
+ public string? UserServiceStatus { get; set; }
+
+ ///
+ /// 获取或设置服务开启或解除授权时间。
+ ///
+ [Newtonsoft.Json.JsonProperty("openorclose_time")]
+ [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.CommonWithoutSeparatorsNullableDateTimeOffsetConverter))]
+ [System.Text.Json.Serialization.JsonPropertyName("openorclose_time")]
+ [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Converters.CommonWithoutSeparatorsNullableDateTimeOffsetConverter))]
+ public DateTimeOffset? OpenOrCloseTime { get; set; }
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Resources/PayScorePartnerServiceOrder/PayScorePartnerServiceOrderResource.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Resources/PayScorePartnerServiceOrder/PayScorePartnerServiceOrderResource.cs
new file mode 100644
index 00000000..35c4d8ad
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Resources/PayScorePartnerServiceOrder/PayScorePartnerServiceOrderResource.cs
@@ -0,0 +1,186 @@
+using System;
+using System.Collections.Generic;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Resources
+{
+ ///
+ /// 表示 PAYSCORE.USER_CONFIRM 通知的数据。
+ /// 表示 PAYSCORE.USER_PAID 通知的数据。
+ ///
+ public class PayScorePartnerServiceOrderResource : WechatTenpayCallback.Types.IDecryptedResource
+ {
+ public static class Types
+ {
+ public class Payment : PayScoreServiceOrderResource.Types.Payment
+ {
+ }
+
+ public class Discount : PayScoreServiceOrderResource.Types.Discount
+ {
+ }
+
+ public class TimeRange : PayScoreServiceOrderResource.Types.TimeRange
+ {
+ }
+
+ public class Location : PayScoreServiceOrderResource.Types.Location
+ {
+ }
+
+ public class RiskFund : PayScoreServiceOrderResource.Types.RiskFund
+ {
+ }
+
+ public class Collection : PayScoreServiceOrderResource.Types.Collection
+ {
+ }
+ }
+
+ ///
+ /// 获取或设置服务商商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("mchid")]
+ public string MerchantId { get; set; } = default!;
+
+ ///
+ /// 获取或设置子商户商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
+ public string SubMerchantId { get; set; } = default!;
+
+ ///
+ /// 获取或设置服务商 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("appid")]
+ public string AppId { get; set; } = default!;
+
+ ///
+ /// 获取或设置子商户 AppId。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_appid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_appid")]
+ public string? SubAppId { get; set; }
+
+ ///
+ /// 获取或设置商户服务订单号。
+ ///
+ [Newtonsoft.Json.JsonProperty("out_order_no")]
+ [System.Text.Json.Serialization.JsonPropertyName("out_order_no")]
+ public string OutOrderNumber { get; set; } = default!;
+
+ ///
+ /// 获取或设置微信支付服务订单号。
+ ///
+ [Newtonsoft.Json.JsonProperty("order_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("order_id")]
+ public string? OrderId { get; set; }
+
+ ///
+ /// 获取或设置服务 ID。
+ ///
+ [Newtonsoft.Json.JsonProperty("service_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("service_id")]
+ public string ServiceId { get; set; } = default!;
+
+ ///
+ /// 获取或设置服务信息。
+ ///
+ [Newtonsoft.Json.JsonProperty("service_introduction")]
+ [System.Text.Json.Serialization.JsonPropertyName("service_introduction")]
+ public string ServiceIntroduction { get; set; } = default!;
+
+ ///
+ /// 获取或设置用户在服务商下唯一标识。
+ ///
+ [Newtonsoft.Json.JsonProperty("openid")]
+ [System.Text.Json.Serialization.JsonPropertyName("openid")]
+ public string? OpenId { get; set; }
+
+ ///
+ /// 获取或设置用户在子商户下唯一标识。
+ ///
+ [Newtonsoft.Json.JsonProperty("sub_openid")]
+ [System.Text.Json.Serialization.JsonPropertyName("sub_openid")]
+ public string? SubOpenId { get; set; }
+
+ ///
+ /// 获取或设置服务订单状态。
+ ///
+ [Newtonsoft.Json.JsonProperty("state")]
+ [System.Text.Json.Serialization.JsonPropertyName("state")]
+ public string State { get; set; } = default!;
+
+ ///
+ /// 获取或设置服务订单状态说明。
+ ///
+ [Newtonsoft.Json.JsonProperty("state_description")]
+ [System.Text.Json.Serialization.JsonPropertyName("state_description")]
+ public string? StateDescription { get; set; }
+
+ ///
+ /// 获取或设置商户收款总金额(单位:分)。
+ ///
+ [Newtonsoft.Json.JsonProperty("total_amount")]
+ [System.Text.Json.Serialization.JsonPropertyName("total_amount")]
+ public int? TotalAmount { get; set; }
+
+ ///
+ /// 获取或设置附加数据。
+ ///
+ [Newtonsoft.Json.JsonProperty("attach")]
+ [System.Text.Json.Serialization.JsonPropertyName("attach")]
+ public string? Attachment { get; set; }
+
+ ///
+ /// 获取或设置付费项目列表。
+ ///
+ [Newtonsoft.Json.JsonProperty("post_payments")]
+ [System.Text.Json.Serialization.JsonPropertyName("post_payments")]
+ public Types.Payment[]? PostPaymentList { get; set; }
+
+ ///
+ /// 获取或设置商户优惠列表。
+ ///
+ [Newtonsoft.Json.JsonProperty("post_discounts")]
+ [System.Text.Json.Serialization.JsonPropertyName("post_discounts")]
+ public Types.Discount[]? PostDiscountList { get; set; }
+
+ ///
+ /// 获取或设置服务时间段信息。
+ ///
+ [Newtonsoft.Json.JsonProperty("time_range")]
+ [System.Text.Json.Serialization.JsonPropertyName("time_range")]
+ public Types.TimeRange? TimeRange { get; set; }
+
+ ///
+ /// 获取或设置服务位置信息。
+ ///
+ [Newtonsoft.Json.JsonProperty("location")]
+ [System.Text.Json.Serialization.JsonPropertyName("location")]
+ public Types.Location? Location { get; set; }
+
+ ///
+ /// 获取或设置订单风险金信息。
+ ///
+ [Newtonsoft.Json.JsonProperty("risk_fund")]
+ [System.Text.Json.Serialization.JsonPropertyName("risk_fund")]
+ public Types.RiskFund? RiskFund { get; set; }
+
+ ///
+ /// 获取或设置是否需要收款。
+ ///
+ [Newtonsoft.Json.JsonProperty("need_collection")]
+ [System.Text.Json.Serialization.JsonPropertyName("need_collection")]
+ public bool? RequireCollection { get; set; }
+
+ ///
+ /// 获取或设置收款信息。
+ ///
+ [Newtonsoft.Json.JsonProperty("collection")]
+ [System.Text.Json.Serialization.JsonPropertyName("collection")]
+ public Types.Collection? Collection { get; set; }
+ }
+}