diff --git a/docs/WechatTenpayV3/Basic_ModelDefinition.md b/docs/WechatTenpayV3/Basic_ModelDefinition.md index 1118a8fc..a4a0ffcb 100644 --- a/docs/WechatTenpayV3/Basic_ModelDefinition.md +++ b/docs/WechatTenpayV3/Basic_ModelDefinition.md @@ -233,6 +233,10 @@ - 查询单笔退款:`GetRefundDomesticRefundByOutRefundNumber` + - 下发服务费用待处理消息:`SendPayScoreServiceOrderPendingMessage` + + - 下发服务预扣费消息:`SendPayScoreServiceOrderPrepaidMessage` + - 微信支付分(免确认模式) - 创单结单合并:`CreatePayScoreServiceOrderDirectComplete` @@ -249,6 +253,10 @@ - 解除用户授权关系(OpenId):`TerminatePayScorePermissionsByOpenId` + - 用户分层 + + - 评估用户分层:`AssessPayScorePermissionsUserRiskLevel` + - 微信支付分停车 - 创建停车入场:`CreateVehicleParking` @@ -741,6 +749,10 @@ - 商户申请获取对账单:`GetPayScoreMerchantBill` + - 下发服务费用待处理消息:`SendPayScorePartnerServiceOrderPendingMessage` + + - 下发服务预扣费消息:`SendPayScorePartnerServiceOrderPrepaidMessage` + - 微信支付分(免确认预授权模式) - 商户预授权:`ApplyPayScorePartnerPermissions` @@ -753,6 +765,10 @@ - 解除用户授权关系(OpenId):`TerminatePayScorePartnerPermissionsByOpenId` + - 用户分层 + + - 服务商评估用户分层:`AssessPayScorePartnerPermissionsUserRiskLevel` + - 微信支付分停车 - 查询车牌服务开通信息:`GetVehicleParkingService` diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScoreExtensions.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScoreExtensions.cs index a7bd95f6..4fd18649 100644 --- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScoreExtensions.cs +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScoreExtensions.cs @@ -122,6 +122,28 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3 return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false); } + + /// + /// 异步调用 [POST] /payscore/permissions/assess-user-risk-level 接口。 + /// + /// REF:
+ /// + ///
+ ///
+ /// + /// + /// + /// + public static async Task ExecuteAssessPayScorePermissionsUserRiskLevelAsync(this WechatTenpayClient client, Models.AssessPayScorePermissionsUserRiskLevelRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateFlurlRequest(request, HttpMethod.Post, "payscore", "permissions", "assess-user-risk-level"); + + return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false); + } #endregion #region Plan @@ -396,6 +418,50 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3 return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false); } + + /// + /// 异步调用 [POST] /payscore/serviceorder/{out_order_no}/send-pendingmessage 接口。 + /// + /// REF:
+ /// + ///
+ ///
+ /// + /// + /// + /// + public static async Task ExecuteSendPayScoreServiceOrderPendingMessageAsync(this WechatTenpayClient client, Models.SendPayScoreServiceOrderPendingMessageRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateFlurlRequest(request, HttpMethod.Post, "payscore", "serviceorder", request.OutOrderNumber, "send-pendingmessage"); + + return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false); + } + + /// + /// 异步调用 [POST] /payscore/serviceorder/{out_order_no}/send-prepaidmessage 接口。 + /// + /// REF:
+ /// + ///
+ ///
+ /// + /// + /// + /// + public static async Task ExecuteSendPayScoreServiceOrderPrepaidMessageAsync(this WechatTenpayClient client, Models.SendPayScoreServiceOrderPrepaidMessageRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateFlurlRequest(request, HttpMethod.Post, "payscore", "serviceorder", request.OutOrderNumber, "send-prepaidmessage"); + + return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false); + } #endregion #region SignPlan diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScorePartnerExtensions.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScorePartnerExtensions.cs index 747fe4e8..8bec126a 100644 --- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScorePartnerExtensions.cs +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecutePayScorePartnerExtensions.cs @@ -131,6 +131,28 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3 return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false); } + + /// + /// 异步调用 [POST] /payscore/partner/permissions/assess-user-risk-level 接口。 + /// + /// REF:
+ /// + ///
+ ///
+ /// + /// + /// + /// + public static async Task ExecuteAssessPayScorePartnerPermissionsUserRiskLevelAsync(this WechatTenpayClient client, Models.AssessPayScorePartnerPermissionsUserRiskLevelRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateFlurlRequest(request, HttpMethod.Post, "payscore", "partner", "permissions", "assess-user-risk-level"); + + return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false); + } #endregion #region Plan @@ -384,6 +406,50 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3 return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false); } + + /// + /// 异步调用 [POST] /payscore/partner/serviceorder/{out_order_no}/send-pendingmessage 接口。 + /// + /// REF:
+ /// + ///
+ ///
+ /// + /// + /// + /// + public static async Task ExecuteSendPayScorePartnerServiceOrderPendingMessageAsync(this WechatTenpayClient client, Models.SendPayScorePartnerServiceOrderPendingMessageRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateFlurlRequest(request, HttpMethod.Post, "payscore", "partner", "serviceorder", request.OutOrderNumber, "send-pendingmessage"); + + return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false); + } + + /// + /// 异步调用 [POST] /payscore/partner/serviceorder/{out_order_no}/send-prepaidmessage 接口。 + /// + /// REF:
+ /// + ///
+ ///
+ /// + /// + /// + /// + public static async Task ExecuteSendPayScorePartnerServiceOrderPrepaidMessageAsync(this WechatTenpayClient client, Models.SendPayScorePartnerServiceOrderPrepaidMessageRequest request, CancellationToken cancellationToken = default) + { + if (client is null) throw new ArgumentNullException(nameof(client)); + if (request is null) throw new ArgumentNullException(nameof(request)); + + IFlurlRequest flurlReq = client + .CreateFlurlRequest(request, HttpMethod.Post, "payscore", "partner", "serviceorder", request.OutOrderNumber, "send-prepaidmessage"); + + return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false); + } #endregion #region ServiceQuota diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/Permissions/AssessPayScorePermissionsUserRiskLevelRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/Permissions/AssessPayScorePermissionsUserRiskLevelRequest.cs new file mode 100644 index 00000000..0272f56d --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/Permissions/AssessPayScorePermissionsUserRiskLevelRequest.cs @@ -0,0 +1,99 @@ +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models +{ + /// + /// 表示 [POST] /payscore/permissions/assess-user-risk-level 接口的请求。 + /// + public class AssessPayScorePermissionsUserRiskLevelRequest : WechatTenpayRequest + { + public static class Types + { + public class ShoppingInfo + { + public static class Types + { + public class Goods + { + /// + /// 获取或设置商品名称。 + /// + [Newtonsoft.Json.JsonProperty("name")] + [System.Text.Json.Serialization.JsonPropertyName("name")] + public string Name { get; set; } = string.Empty; + + /// + /// 获取或设置商品图片链接。 + /// + [Newtonsoft.Json.JsonProperty("picture")] + [System.Text.Json.Serialization.JsonPropertyName("picture")] + public string PictureUrl { get; set; } = string.Empty; + + /// + /// 获取或设置商品单价(单位:分)。 + /// + [Newtonsoft.Json.JsonProperty("amount")] + [System.Text.Json.Serialization.JsonPropertyName("amount")] + public int Amount { get; set; } + + /// + /// 获取或设置商品数量。 + /// + [Newtonsoft.Json.JsonProperty("count")] + [System.Text.Json.Serialization.JsonPropertyName("count")] + public int Count { get; set; } + + /// + /// 获取或设置商品品类 ID 列表。 + /// + [Newtonsoft.Json.JsonProperty("category_id")] + [System.Text.Json.Serialization.JsonPropertyName("category_id")] + public IList? CategoryIdList { get; set; } + } + } + + /// + /// 获取或设置商品列表。 + /// + [Newtonsoft.Json.JsonProperty("goods")] + [System.Text.Json.Serialization.JsonPropertyName("goods")] + public IList? GoodsList { get; set; } + } + } + + /// + /// 获取或设置微信 AppId。 + /// + [Newtonsoft.Json.JsonProperty("appid")] + [System.Text.Json.Serialization.JsonPropertyName("appid")] + public string AppId { get; set; } = string.Empty; + + /// + /// 获取或设置服务 ID。 + /// + [Newtonsoft.Json.JsonProperty("service_id")] + [System.Text.Json.Serialization.JsonPropertyName("service_id")] + public string ServiceId { get; set; } = string.Empty; + + /// + /// 获取或设置用户的 OpenId。 + /// + [Newtonsoft.Json.JsonProperty("openid")] + [System.Text.Json.Serialization.JsonPropertyName("openid")] + public string? OpenId { get; set; } + + /// + /// 获取或设置授权协议号。 + /// + [Newtonsoft.Json.JsonProperty("authorization_code")] + [System.Text.Json.Serialization.JsonPropertyName("authorization_code")] + public string? AuthorizationCode { get; set; } + + /// + /// 获取或设置先用后付商品信息。 + /// + [Newtonsoft.Json.JsonProperty("shopping_info")] + [System.Text.Json.Serialization.JsonPropertyName("shopping_info")] + public Types.ShoppingInfo? ShoppingInfo { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/Permissions/AssessPayScorePermissionsUserRiskLevelResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/Permissions/AssessPayScorePermissionsUserRiskLevelResponse.cs new file mode 100644 index 00000000..f107f7d5 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/Permissions/AssessPayScorePermissionsUserRiskLevelResponse.cs @@ -0,0 +1,36 @@ +namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models +{ + /// + /// 表示 [POST] /payscore/permissions/assess-user-risk-level 接口的响应。 + /// + public class AssessPayScorePermissionsUserRiskLevelResponse : GetPayScorePermissionsByAuthorizationCodeResponse + { + /// + /// 获取或设置渠道商商户号。 + /// + [Newtonsoft.Json.JsonProperty("channel_id")] + [System.Text.Json.Serialization.JsonPropertyName("channel_id")] + public string? ChannelId { get; set; } + + /// + /// 获取或设置用户标签。 + /// + [Newtonsoft.Json.JsonProperty("user_label")] + [System.Text.Json.Serialization.JsonPropertyName("user_label")] + public string? UserLabel { get; set; } + + /// + /// 获取或设置用户分层。 + /// + [Newtonsoft.Json.JsonProperty("user_risk_level")] + [System.Text.Json.Serialization.JsonPropertyName("user_risk_level")] + public int? UserRiskLevel { get; set; } + + /// + /// 获取或设置分层版本。 + /// + [Newtonsoft.Json.JsonProperty("risk_level_version")] + [System.Text.Json.Serialization.JsonPropertyName("risk_level_version")] + public int? RiskLevelVersion { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/Permissions/GetPayScorePermissionsByAuthorizationCodeResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/Permissions/GetPayScorePermissionsByAuthorizationCodeResponse.cs index 84181a21..8f7888a3 100644 --- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/Permissions/GetPayScorePermissionsByAuthorizationCodeResponse.cs +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/Permissions/GetPayScorePermissionsByAuthorizationCodeResponse.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models { @@ -40,7 +40,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models /// [Newtonsoft.Json.JsonProperty("authorization_code")] [System.Text.Json.Serialization.JsonPropertyName("authorization_code")] - public string AuthorizationCode { get; set; } = default!; + public string? AuthorizationCode { get; set; } /// /// 获取或设置授权状态。 @@ -73,5 +73,19 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models [System.Text.Json.Serialization.JsonPropertyName("authorization_success_time")] [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.Rfc3339DateTimeOffsetConverter))] public DateTimeOffset? AuthorizationSuccessTime { get; set; } + + /// + /// 获取或设置用户分层。 + /// + [Newtonsoft.Json.JsonProperty("user_risk_level")] + [System.Text.Json.Serialization.JsonPropertyName("user_risk_level")] + public int? UserRiskLevel { get; set; } + + /// + /// 获取或设置分层版本。 + /// + [Newtonsoft.Json.JsonProperty("risk_level_version")] + [System.Text.Json.Serialization.JsonPropertyName("risk_level_version")] + public int? RiskLevelVersion { get; set; } } } diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/ServiceOrder/SendPayScoreServiceOrderPendingMessageRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/ServiceOrder/SendPayScoreServiceOrderPendingMessageRequest.cs new file mode 100644 index 00000000..c9fc5b34 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/ServiceOrder/SendPayScoreServiceOrderPendingMessageRequest.cs @@ -0,0 +1,63 @@ +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models +{ + /// + /// 表示 [POST] /payscore/serviceorder/{out_order_no}/send-pendingmessage 接口的请求。 + /// + public class SendPayScoreServiceOrderPendingMessageRequest : WechatTenpayRequest + { + public static class Types + { + public class Payment : CreatePayScoreServiceOrderRequest.Types.Payment + { + } + + public class Discount : CreatePayScoreServiceOrderRequest.Types.Discount + { + } + } + + /// + /// 获取或设置商户服务订单号。 + /// + [Newtonsoft.Json.JsonIgnore] + [System.Text.Json.Serialization.JsonIgnore] + public string OutOrderNumber { get; set; } = string.Empty; + + /// + /// 获取或设置服务 ID。 + /// + [Newtonsoft.Json.JsonProperty("service_id")] + [System.Text.Json.Serialization.JsonPropertyName("service_id")] + public string ServiceId { get; set; } = string.Empty; + + /// + /// 获取或设置付费项目列表。 + /// + [Newtonsoft.Json.JsonProperty("post_payments")] + [System.Text.Json.Serialization.JsonPropertyName("post_payments")] + public IList PostPaymentList { get; set; } = new List(); + + /// + /// 获取或设置商户优惠列表。 + /// + [Newtonsoft.Json.JsonProperty("post_discounts")] + [System.Text.Json.Serialization.JsonPropertyName("post_discounts")] + public IList? PostDiscountList { get; set; } + + /// + /// 获取或设置总金额。 + /// + [Newtonsoft.Json.JsonProperty("total_amount")] + [System.Text.Json.Serialization.JsonPropertyName("total_amount")] + public int TotalAmount { get; set; } + + /// + /// 获取或设置预计扣费时间字符串(格式:yyyyMMddHH)。 + /// + [Newtonsoft.Json.JsonProperty("prepaid_time")] + [System.Text.Json.Serialization.JsonPropertyName("prepaid_time")] + public string? PrepaidTimeString { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/ServiceOrder/SendPayScoreServiceOrderPendingMessageResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/ServiceOrder/SendPayScoreServiceOrderPendingMessageResponse.cs new file mode 100644 index 00000000..6848ffec --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/ServiceOrder/SendPayScoreServiceOrderPendingMessageResponse.cs @@ -0,0 +1,9 @@ +namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models +{ + /// + /// 表示 [POST] /payscore/serviceorder/{out_order_no}/send-pendingmessage 接口的响应。 + /// + public class SendPayScoreServiceOrderPendingMessageResponse : WechatTenpayResponse + { + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/ServiceOrder/SendPayScoreServiceOrderPrepaidMessageRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/ServiceOrder/SendPayScoreServiceOrderPrepaidMessageRequest.cs new file mode 100644 index 00000000..0aa3fd3d --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/ServiceOrder/SendPayScoreServiceOrderPrepaidMessageRequest.cs @@ -0,0 +1,63 @@ +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models +{ + /// + /// 表示 [POST] /payscore/serviceorder/{out_order_no}/send-prepaidmessage 接口的请求。 + /// + public class SendPayScoreServiceOrderPrepaidMessageRequest : WechatTenpayRequest + { + public static class Types + { + public class Payment : CreatePayScoreServiceOrderRequest.Types.Payment + { + } + + public class Discount : CreatePayScoreServiceOrderRequest.Types.Discount + { + } + } + + /// + /// 获取或设置商户服务订单号。 + /// + [Newtonsoft.Json.JsonIgnore] + [System.Text.Json.Serialization.JsonIgnore] + public string OutOrderNumber { get; set; } = string.Empty; + + /// + /// 获取或设置服务 ID。 + /// + [Newtonsoft.Json.JsonProperty("service_id")] + [System.Text.Json.Serialization.JsonPropertyName("service_id")] + public string ServiceId { get; set; } = string.Empty; + + /// + /// 获取或设置付费项目列表。 + /// + [Newtonsoft.Json.JsonProperty("post_payments")] + [System.Text.Json.Serialization.JsonPropertyName("post_payments")] + public IList PostPaymentList { get; set; } = new List(); + + /// + /// 获取或设置商户优惠列表。 + /// + [Newtonsoft.Json.JsonProperty("post_discounts")] + [System.Text.Json.Serialization.JsonPropertyName("post_discounts")] + public IList? PostDiscountList { get; set; } + + /// + /// 获取或设置总金额。 + /// + [Newtonsoft.Json.JsonProperty("total_amount")] + [System.Text.Json.Serialization.JsonPropertyName("total_amount")] + public int TotalAmount { get; set; } + + /// + /// 获取或设置预计扣费时间字符串(格式:yyyyMMddHH)。 + /// + [Newtonsoft.Json.JsonProperty("prepaid_time")] + [System.Text.Json.Serialization.JsonPropertyName("prepaid_time")] + public string? PrepaidTimeString { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/ServiceOrder/SendPayScoreServiceOrderPrepaidMessageResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/ServiceOrder/SendPayScoreServiceOrderPrepaidMessageResponse.cs new file mode 100644 index 00000000..de6d0544 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/PayScore/ServiceOrder/SendPayScoreServiceOrderPrepaidMessageResponse.cs @@ -0,0 +1,9 @@ +namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models +{ + /// + /// 表示 [POST] /payscore/serviceorder/{out_order_no}/send-prepaidmessage 接口的响应。 + /// + public class SendPayScoreServiceOrderPrepaidMessageResponse : WechatTenpayResponse + { + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/Permissions/AssessPayScorePartnerPermissionsUserRiskLevelRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/Permissions/AssessPayScorePartnerPermissionsUserRiskLevelRequest.cs new file mode 100644 index 00000000..df9839c3 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/Permissions/AssessPayScorePartnerPermissionsUserRiskLevelRequest.cs @@ -0,0 +1,29 @@ +namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models +{ + /// + /// 表示 [POST] /payscore/partner/permissions/assess-user-risk-level 接口的请求。 + /// + public class AssessPayScorePartnerPermissionsUserRiskLevelRequest : AssessPayScorePermissionsUserRiskLevelRequest + { + /// + /// 获取或设置子商户号。 + /// + [Newtonsoft.Json.JsonIgnore] + [System.Text.Json.Serialization.JsonIgnore] + public string SubMerchantId { get; set; } = string.Empty; + + /// + /// 获取或设置子商户 AppId。 + /// + [Newtonsoft.Json.JsonProperty("sub_appid")] + [System.Text.Json.Serialization.JsonPropertyName("sub_appid")] + public string? SubAppId { get; set; } + + /// + /// 获取或设置用户在子商户的 OpenId。 + /// + [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/_Partner/PayScore/Permissions/AssessPayScorePartnerPermissionsUserRiskLevelResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/Permissions/AssessPayScorePartnerPermissionsUserRiskLevelResponse.cs new file mode 100644 index 00000000..8b2b97fa --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/Permissions/AssessPayScorePartnerPermissionsUserRiskLevelResponse.cs @@ -0,0 +1,29 @@ +namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models +{ + /// + /// 表示 [POST] /payscore/partner/permissions/assess-user-risk-level 接口的响应。 + /// + public class AssessPayScorePartnerPermissionsUserRiskLevelResponse : AssessPayScorePermissionsUserRiskLevelResponse + { + /// + /// 获取或设置子商户号。 + /// + [Newtonsoft.Json.JsonProperty("sub_mchid")] + [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")] + public string SubMerchantId { get; set; } = default!; + + /// + /// 获取或设置子商户 AppId。 + /// + [Newtonsoft.Json.JsonProperty("sub_appid")] + [System.Text.Json.Serialization.JsonPropertyName("sub_appid")] + public string? SubAppId { get; set; } + + /// + /// 获取或设置用户在子商户的 OpenId。 + /// + [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/_Partner/PayScore/Permissions/GetPayScorePartnerPermissionsByAuthorizationCodeResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/Permissions/GetPayScorePartnerPermissionsByAuthorizationCodeResponse.cs index 9456b128..540dfad7 100644 --- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/Permissions/GetPayScorePartnerPermissionsByAuthorizationCodeResponse.cs +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/Permissions/GetPayScorePartnerPermissionsByAuthorizationCodeResponse.cs @@ -1,4 +1,4 @@ -namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models +namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models { /// /// 表示 [GET] /payscore/partner/permissions/authorization-code/{authorization_code} 接口的响应。 diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPendingMessageRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPendingMessageRequest.cs new file mode 100644 index 00000000..83e272b1 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPendingMessageRequest.cs @@ -0,0 +1,70 @@ +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models +{ + /// + /// 表示 [POST] /payscore/partner/serviceorder/{out_order_no}/send-pendingmessage 接口的请求。 + /// + public class SendPayScorePartnerServiceOrderPendingMessageRequest : WechatTenpayRequest + { + public static class Types + { + public class Payment : CreatePayScorePartnerServiceOrderRequest.Types.Payment + { + } + + public class Discount : CreatePayScorePartnerServiceOrderRequest.Types.Discount + { + } + } + + /// + /// 获取或设置子商户商户号。 + /// + [Newtonsoft.Json.JsonProperty("sub_mchid")] + [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")] + public string SubMerchantId { get; set; } = string.Empty; + + /// + /// 获取或设置商户服务订单号。 + /// + [Newtonsoft.Json.JsonIgnore] + [System.Text.Json.Serialization.JsonIgnore] + public string OutOrderNumber { get; set; } = string.Empty; + + /// + /// 获取或设置服务 ID。 + /// + [Newtonsoft.Json.JsonProperty("service_id")] + [System.Text.Json.Serialization.JsonPropertyName("service_id")] + public string ServiceId { get; set; } = string.Empty; + + /// + /// 获取或设置付费项目列表。 + /// + [Newtonsoft.Json.JsonProperty("post_payments")] + [System.Text.Json.Serialization.JsonPropertyName("post_payments")] + public IList PostPaymentList { get; set; } = new List(); + + /// + /// 获取或设置商户优惠列表。 + /// + [Newtonsoft.Json.JsonProperty("post_discounts")] + [System.Text.Json.Serialization.JsonPropertyName("post_discounts")] + public IList? PostDiscountList { get; set; } + + /// + /// 获取或设置总金额。 + /// + [Newtonsoft.Json.JsonProperty("total_amount")] + [System.Text.Json.Serialization.JsonPropertyName("total_amount")] + public int TotalAmount { get; set; } + + /// + /// 获取或设置预计扣费时间字符串(格式:yyyyMMddHH)。 + /// + [Newtonsoft.Json.JsonProperty("prepaid_time")] + [System.Text.Json.Serialization.JsonPropertyName("prepaid_time")] + public string? PrepaidTimeString { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPendingMessageResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPendingMessageResponse.cs new file mode 100644 index 00000000..35bf7ac9 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPendingMessageResponse.cs @@ -0,0 +1,9 @@ +namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models +{ + /// + /// 表示 [POST] /payscore/partner/serviceorder/{out_order_no}/send-pendingmessage 接口的响应。 + /// + public class SendPayScorePartnerServiceOrderPendingMessageResponse : WechatTenpayResponse + { + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPrepaidMessageRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPrepaidMessageRequest.cs new file mode 100644 index 00000000..4c0838e0 --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPrepaidMessageRequest.cs @@ -0,0 +1,70 @@ +using System.Collections.Generic; + +namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models +{ + /// + /// 表示 [POST] /payscore/partner/serviceorder/{out_order_no}/send-prepaidmessage 接口的请求。 + /// + public class SendPayScorePartnerServiceOrderPrepaidMessageRequest : WechatTenpayRequest + { + public static class Types + { + public class Payment : CreatePayScorePartnerServiceOrderRequest.Types.Payment + { + } + + public class Discount : CreatePayScorePartnerServiceOrderRequest.Types.Discount + { + } + } + + /// + /// 获取或设置子商户商户号。 + /// + [Newtonsoft.Json.JsonProperty("sub_mchid")] + [System.Text.Json.Serialization.JsonPropertyName("sub_mchid")] + public string SubMerchantId { get; set; } = string.Empty; + + /// + /// 获取或设置商户服务订单号。 + /// + [Newtonsoft.Json.JsonIgnore] + [System.Text.Json.Serialization.JsonIgnore] + public string OutOrderNumber { get; set; } = string.Empty; + + /// + /// 获取或设置服务 ID。 + /// + [Newtonsoft.Json.JsonProperty("service_id")] + [System.Text.Json.Serialization.JsonPropertyName("service_id")] + public string ServiceId { get; set; } = string.Empty; + + /// + /// 获取或设置付费项目列表。 + /// + [Newtonsoft.Json.JsonProperty("post_payments")] + [System.Text.Json.Serialization.JsonPropertyName("post_payments")] + public IList PostPaymentList { get; set; } = new List(); + + /// + /// 获取或设置商户优惠列表。 + /// + [Newtonsoft.Json.JsonProperty("post_discounts")] + [System.Text.Json.Serialization.JsonPropertyName("post_discounts")] + public IList? PostDiscountList { get; set; } + + /// + /// 获取或设置总金额。 + /// + [Newtonsoft.Json.JsonProperty("total_amount")] + [System.Text.Json.Serialization.JsonPropertyName("total_amount")] + public int TotalAmount { get; set; } + + /// + /// 获取或设置预计扣费时间字符串(格式:yyyyMMddHH)。 + /// + [Newtonsoft.Json.JsonProperty("prepaid_time")] + [System.Text.Json.Serialization.JsonPropertyName("prepaid_time")] + public string? PrepaidTimeString { get; set; } + } +} diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPrepaidMessageResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPrepaidMessageResponse.cs new file mode 100644 index 00000000..5d1e7e2a --- /dev/null +++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPrepaidMessageResponse.cs @@ -0,0 +1,9 @@ +namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models +{ + /// + /// 表示 [POST] /payscore/partner/serviceorder/{out_order_no}/send-prepaidmessage 接口的响应。 + /// + public class SendPayScorePartnerServiceOrderPrepaidMessageResponse : WechatTenpayResponse + { + } +} diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/Permissions/AssessPayScorePermissionsUserRiskLevelRequest.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/Permissions/AssessPayScorePermissionsUserRiskLevelRequest.json new file mode 100644 index 00000000..18fa468a --- /dev/null +++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/Permissions/AssessPayScorePermissionsUserRiskLevelRequest.json @@ -0,0 +1,19 @@ +{ + "service_id": "500001", + "appid": "wxd678efh567hg6787", + "authorization_code": "1234323JKHDFE1243252", + "openid": "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o", + "shopping_info": { + "goods": [ + { + "name": "森海塞尔 MOMENTUM 4 无线耳机大馒头4 头戴式蓝牙音乐耳机自适应降噪", + "picture": "http://mmbiz.qpic.cn/mmbiz_png/ldTw9dg46zkjOrzyTkbQAvQkysliaiblZhdthZWewgQMyqLZwStaNEsJrYmjwh2MlK7G4wibAFOEuISQKplSnxMWA/640?wx_fmt=png&wxfrom=200", + "amount": 550, + "count": 1, + "category_id": [ + "6032" + ] + } + ] + } +} diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/Permissions/AssessPayScorePermissionsUserRiskLevelResponse.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/Permissions/AssessPayScorePermissionsUserRiskLevelResponse.json new file mode 100644 index 00000000..43c6d5c0 --- /dev/null +++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/Permissions/AssessPayScorePermissionsUserRiskLevelResponse.json @@ -0,0 +1,15 @@ +{ + "service_id": "2002000000000558128851361561536", + "appid": "wxd678efh567hg6787", + "mchid": "1230000109", + "openid": "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o", + "authorization_code": "1275342195190894594", + "authorization_state": "UNAVAILABLE", + "notify_url": "https://www.weixin.com", + "cancel_authorization_time": "2015-05-20T13:29:35+08:00", + "authorization_success_time": "2015-05-20T13:29:35+08:00", + "user_label": "A", + "channel_id": "1230000109", + "user_risk_level": 1, + "risk_level_version": 1 +} diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/Permissions/GetPayScorePermissionsByAuthorizationCodeResponse.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/Permissions/GetPayScorePermissionsByAuthorizationCodeResponse.json index 8d40e61d..f18261c6 100644 --- a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/Permissions/GetPayScorePermissionsByAuthorizationCodeResponse.json +++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/Permissions/GetPayScorePermissionsByAuthorizationCodeResponse.json @@ -1,4 +1,4 @@ -{ +{ "service_id": "2002000000000558128851361561536", "appid": "wxd678efh567hg6787", "mchid": "1230000109", @@ -7,5 +7,7 @@ "authorization_state": "UNAVAILABLE", "notify_url": "https://www.weixin.com", "cancel_authorization_time": "2015-05-20T13:29:35.120+08:00", - "authorization_success_time": "2015-05-20T13:29:35.120+08:00" + "authorization_success_time": "2015-05-20T13:29:35.120+08:00", + "user_risk_level": 1, + "risk_level_version": 1 } diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/Permissions/GetPayScorePermissionsByOpenIdResponse.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/Permissions/GetPayScorePermissionsByOpenIdResponse.json index 8d40e61d..f18261c6 100644 --- a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/Permissions/GetPayScorePermissionsByOpenIdResponse.json +++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/Permissions/GetPayScorePermissionsByOpenIdResponse.json @@ -1,4 +1,4 @@ -{ +{ "service_id": "2002000000000558128851361561536", "appid": "wxd678efh567hg6787", "mchid": "1230000109", @@ -7,5 +7,7 @@ "authorization_state": "UNAVAILABLE", "notify_url": "https://www.weixin.com", "cancel_authorization_time": "2015-05-20T13:29:35.120+08:00", - "authorization_success_time": "2015-05-20T13:29:35.120+08:00" + "authorization_success_time": "2015-05-20T13:29:35.120+08:00", + "user_risk_level": 1, + "risk_level_version": 1 } diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/ServiceOrder/SendPayScoreServiceOrderPendingMessageRequest.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/ServiceOrder/SendPayScoreServiceOrderPendingMessageRequest.json new file mode 100644 index 00000000..ae15b234 --- /dev/null +++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/ServiceOrder/SendPayScoreServiceOrderPendingMessageRequest.json @@ -0,0 +1,21 @@ +{ + "service_id": "2002000000000558128851361561536", + "post_payments": [ + { + "name": "就餐费用", + "amount": 40000, + "description": "就餐人均100元", + "count": 4 + } + ], + "post_discounts": [ + { + "name": "满20减1元", + "description": "不与其他优惠叠加", + "amount": 100, + "count": 2 + } + ], + "total_amount": 50000, + "prepaid_time": "20231218" +} diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/ServiceOrder/SendPayScoreServiceOrderPrepaidMessageRequest.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/ServiceOrder/SendPayScoreServiceOrderPrepaidMessageRequest.json new file mode 100644 index 00000000..ae15b234 --- /dev/null +++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/PayScore/ServiceOrder/SendPayScoreServiceOrderPrepaidMessageRequest.json @@ -0,0 +1,21 @@ +{ + "service_id": "2002000000000558128851361561536", + "post_payments": [ + { + "name": "就餐费用", + "amount": 40000, + "description": "就餐人均100元", + "count": 4 + } + ], + "post_discounts": [ + { + "name": "满20减1元", + "description": "不与其他优惠叠加", + "amount": 100, + "count": 2 + } + ], + "total_amount": 50000, + "prepaid_time": "20231218" +} diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/Permissions/AssessPayScorePartnerPermissionsUserRiskLevelRequest.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/Permissions/AssessPayScorePartnerPermissionsUserRiskLevelRequest.json new file mode 100644 index 00000000..35231024 --- /dev/null +++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/Permissions/AssessPayScorePartnerPermissionsUserRiskLevelRequest.json @@ -0,0 +1,21 @@ +{ + "service_id": "500001", + "appid": "wxd678efh567hg6787", + "sub_appid": "wxd678efh567hg6787", + "authorization_code": "1234323JKHDFE1243252", + "openid": "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o", + "sub_openid": "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o", + "shopping_info": { + "goods": [ + { + "name": "森海塞尔 MOMENTUM 4 无线耳机大馒头4 头戴式蓝牙音乐耳机自适应降噪", + "picture": "http://mmbiz.qpic.cn/mmbiz_png/ldTw9dg46zkjOrzyTkbQAvQkysliaiblZhdthZWewgQMyqLZwStaNEsJrYmjwh2MlK7G4wibAFOEuISQKplSnxMWA/640?wx_fmt=png&wxfrom=200", + "amount": 550, + "count": 1, + "category_id": [ + "6032" + ] + } + ] + } +} diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/Permissions/AssessPayScorePartnerPermissionsUserRiskLevelResponse.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/Permissions/AssessPayScorePartnerPermissionsUserRiskLevelResponse.json new file mode 100644 index 00000000..6fbd127b --- /dev/null +++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/Permissions/AssessPayScorePartnerPermissionsUserRiskLevelResponse.json @@ -0,0 +1,18 @@ +{ + "service_id": "2002000000000558128851361561536", + "appid": "wxd678efh567hg6787", + "mchid": "1230000109", + "openid": "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o", + "authorization_code": "1275342195190894594", + "authorization_state": "UNAVAILABLE", + "notify_url": "https://www.weixin.com", + "cancel_authorization_time": "2015-05-20T13:29:35+08:00", + "authorization_success_time": "2015-05-20T13:29:35+08:00", + "sub_mchid": "1230000109", + "sub_appid": "wxd678efh567hg6787", + "sub_openid": "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o", + "user_label": "A", + "channel_id": "1230000109", + "user_risk_level": 1, + "risk_level_version": 1 +} diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/Permissions/GetPayScorePartnerPermissionsByAuthorizationCodeResponse.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/Permissions/GetPayScorePartnerPermissionsByAuthorizationCodeResponse.json index 98ebe800..f5cecf73 100644 --- a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/Permissions/GetPayScorePartnerPermissionsByAuthorizationCodeResponse.json +++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/Permissions/GetPayScorePartnerPermissionsByAuthorizationCodeResponse.json @@ -1,13 +1,16 @@ -{ +{ "service_id": "2002000000000558128851361561536", "appid": "wxd678efh567hg6787", "mchid": "1230000109", + "openid": "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o", "authorization_code": "1275342195190894594", "authorization_state": "UNAVAILABLE", "notify_url": "https://www.weixin.com", - "cancel_authorization_time": "2015-05-20T13:29:35.120+08:00", - "authorization_success_time": "2015-05-20T13:29:35.120+08:00", + "cancel_authorization_time": "2015-05-20T13:29:35+08:00", + "authorization_success_time": "2015-05-20T13:29:35+08:00", "sub_mchid": "1230000109", "sub_appid": "wxd678efh567hg6787", - "sub_openid": "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o" + "sub_openid": "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o", + "user_risk_level": 1, + "risk_level_version": 1 } diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/Permissions/GetPayScorePartnerPermissionsByOpenIdResponse.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/Permissions/GetPayScorePartnerPermissionsByOpenIdResponse.json index 63c900a9..e7a1fc75 100644 --- a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/Permissions/GetPayScorePartnerPermissionsByOpenIdResponse.json +++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/Permissions/GetPayScorePartnerPermissionsByOpenIdResponse.json @@ -1,4 +1,4 @@ -{ +{ "service_id": "2002000000000558128851361561536", "appid": "wxd678efh567hg6787", "mchid": "1230000109", @@ -8,5 +8,7 @@ "authorization_success_time": "2015-05-20T13:29:35.120+08:00", "sub_mchid": "1230000109", "sub_appid": "wxd678efh567hg6787", - "sub_openid": "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o" + "sub_openid": "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o", + "user_risk_level": 1, + "risk_level_version": 1 } diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/ServiceOrder/CreatePayScorePartnerServiceOrderRequest.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/ServiceOrder/CreatePayScorePartnerServiceOrderRequest.json index 6991cdd4..8cb9b774 100644 --- a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/ServiceOrder/CreatePayScorePartnerServiceOrderRequest.json +++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/ServiceOrder/CreatePayScorePartnerServiceOrderRequest.json @@ -1,4 +1,4 @@ -{ +{ "service_id": "2002000000000558128851361561536", "appid": "wxd678efh567hg6787", "sub_mchid": "1900000109", @@ -8,8 +8,8 @@ "post_payments": [ { "name": "就餐费用", - "description": "就餐人均100元", "amount": 40000, + "description": "就餐人均100元", "count": 4 } ], @@ -17,6 +17,7 @@ { "name": "满20减1元", "description": "不与其他优惠叠加", + "amount": 100, "count": 2 } ], @@ -27,14 +28,15 @@ }, "time_range": { "start_time": "20091225091010", - "start_time_remark": "开始租借时间", "end_time": "20091225121010", - "end_time_remark": "租借结束时间" + "start_time_remark": "备注1", + "end_time_remark": "备注2" }, "location": { "start_location": "嗨客时尚主题展餐厅", "end_location": "嗨客时尚主题展餐厅" }, + "openid": "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o", "sub_openid": "oUpF8uMuAJO_M2pxb1Q9zNjWeS6o", "need_user_confirm": false, "notify_url": "https://api.test.com", diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPendingMessageRequest.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPendingMessageRequest.json new file mode 100644 index 00000000..60018248 --- /dev/null +++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPendingMessageRequest.json @@ -0,0 +1,22 @@ +{ + "service_id": "2002000000000558128851361561536", + "sub_mchid": "1900000109", + "post_payments": [ + { + "name": "就餐费用", + "amount": 40000, + "description": "就餐人均100元", + "count": 4 + } + ], + "post_discounts": [ + { + "name": "满20减1元", + "description": "不与其他优惠叠加", + "amount": 100, + "count": 2 + } + ], + "total_amount": 50000, + "prepaid_time": "20231218" +} diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPrepaidMessageRequest.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPrepaidMessageRequest.json new file mode 100644 index 00000000..60018248 --- /dev/null +++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/_Partner/PayScore/ServiceOrder/SendPayScorePartnerServiceOrderPrepaidMessageRequest.json @@ -0,0 +1,22 @@ +{ + "service_id": "2002000000000558128851361561536", + "sub_mchid": "1900000109", + "post_payments": [ + { + "name": "就餐费用", + "amount": 40000, + "description": "就餐人均100元", + "count": 4 + } + ], + "post_discounts": [ + { + "name": "满20减1元", + "description": "不与其他优惠叠加", + "amount": 100, + "count": 2 + } + ], + "total_amount": 50000, + "prepaid_time": "20231218" +}