feat(tenpayv3): 新增分账动账回调通知模型

This commit is contained in:
Fu Diwei 2025-04-21 10:26:18 +08:00
parent 046b4aa9ec
commit b1943ebc85
6 changed files with 196 additions and 5 deletions

View File

@ -0,0 +1,93 @@
using System;
namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Events
{
/// <summary>
/// <para>表示 PROFITSHARING.SUCCESS (仅限直连商户)通知的数据。</para>
/// <para>表示 PROFITSHARING.RETURN (仅限直连商户)通知的数据。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/merchant/4012289679 ]]>
/// </para>
/// </summary>
public class ProfitSharingResource : WechatTenpayEvent.Types.IDecryptedResource
{
public static class Types
{
public class Receiver
{
/// <summary>
/// 获取或设置分账接收方类型。
/// </summary>
[Newtonsoft.Json.JsonProperty("type")]
[System.Text.Json.Serialization.JsonPropertyName("type")]
public string Type { get; set; } = default!;
/// <summary>
/// 获取或设置分账接收方账户。
/// </summary>
[Newtonsoft.Json.JsonProperty("account")]
[System.Text.Json.Serialization.JsonPropertyName("account")]
public string Account { get; set; } = default!;
/// <summary>
/// 获取或设置分账金额(单位:分)。
/// </summary>
[Newtonsoft.Json.JsonProperty("amount")]
[System.Text.Json.Serialization.JsonPropertyName("amount")]
public int Amount { get; set; }
/// <summary>
/// 获取或设置分账描述。
/// </summary>
[Newtonsoft.Json.JsonProperty("description")]
[System.Text.Json.Serialization.JsonPropertyName("description")]
public string Description { get; set; } = default!;
}
}
/// <summary>
/// 获取或设置微信商户号。
/// </summary>
[Newtonsoft.Json.JsonProperty("mchid")]
[System.Text.Json.Serialization.JsonPropertyName("mchid")]
public string MerchantId { get; set; } = default!;
/// <summary>
/// 获取或设置微信支付订单号。
/// </summary>
[Newtonsoft.Json.JsonProperty("transaction_id")]
[System.Text.Json.Serialization.JsonPropertyName("transaction_id")]
public string TransactionId { get; set; } = default!;
/// <summary>
/// 获取或设置商户分账单号。
/// </summary>
[Newtonsoft.Json.JsonProperty("out_order_no")]
[System.Text.Json.Serialization.JsonPropertyName("out_order_no")]
public string OutOrderNumber { get; set; } = default!;
/// <summary>
/// 获取或设置微信分账单号。
/// </summary>
[Newtonsoft.Json.JsonProperty("order_id")]
[System.Text.Json.Serialization.JsonPropertyName("order_id")]
public string OrderId { get; set; } = default!;
/// <summary>
/// 获取或设置分账接收方信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("receiver")]
[System.Text.Json.Serialization.JsonPropertyName("receiver")]
public Types.Receiver Receiver { get; set; } = default!;
/// <summary>
/// 获取或设置成功时间。
/// </summary>
[Newtonsoft.Json.JsonProperty("success_time")]
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.Rfc3339DateTimeOffsetConverter))]
[System.Text.Json.Serialization.JsonPropertyName("success_time")]
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.Rfc3339DateTimeOffsetConverter))]
public DateTimeOffset SuccessTime { get; set; }
}
}

View File

@ -8,7 +8,6 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Events
/// REF: <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/merchant/4012286313 ]]> <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/merchant/4012289459 ]]> <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/merchant/4012289679 ]]> <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/merchant/4012791836 ]]> <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/merchant/4012791861 ]]> <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/merchant/4012791882 ]]> <br/>

View File

@ -0,0 +1,75 @@
using System;
namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Events
{
/// <summary>
/// <para>表示 PROFITSHARING.SUCCESS (仅限服务商)通知的数据。</para>
/// <para>表示 PROFITSHARING.RETURN (仅限服务商)通知的数据。</para>
/// <para>
/// REF: <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/partner/4012116672 ]]> <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/partner/4012075216 ]]> <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/partner/4012075400 ]]>
/// </para>
/// </summary>
public class PartnerProfitSharingResource : WechatTenpayEvent.Types.IDecryptedResource
{
public static class Types
{
public class Receiver : ProfitSharingResource.Types.Receiver
{
}
}
/// <summary>
/// 获取或设置微信商户号。
/// </summary>
[Newtonsoft.Json.JsonProperty("sp_mchid")]
[System.Text.Json.Serialization.JsonPropertyName("sp_mchid")]
public string MerchantId { get; set; } = default!;
/// <summary>
/// 获取或设置微信子商户号。
/// </summary>
[Newtonsoft.Json.JsonProperty("sub_mchid")]
[System.Text.Json.Serialization.JsonPropertyName("sub_mchid")]
public string SubMerchantId { get; set; } = default!;
/// <summary>
/// 获取或设置微信支付订单号。
/// </summary>
[Newtonsoft.Json.JsonProperty("transaction_id")]
[System.Text.Json.Serialization.JsonPropertyName("transaction_id")]
public string TransactionId { get; set; } = default!;
/// <summary>
/// 获取或设置商户分账单号。
/// </summary>
[Newtonsoft.Json.JsonProperty("out_order_no")]
[System.Text.Json.Serialization.JsonPropertyName("out_order_no")]
public string OutOrderNumber { get; set; } = default!;
/// <summary>
/// 获取或设置微信分账单号。
/// </summary>
[Newtonsoft.Json.JsonProperty("order_id")]
[System.Text.Json.Serialization.JsonPropertyName("order_id")]
public string OrderId { get; set; } = default!;
/// <summary>
/// 获取或设置分账接收方信息。
/// </summary>
[Newtonsoft.Json.JsonProperty("receiver")]
[System.Text.Json.Serialization.JsonPropertyName("receiver")]
public Types.Receiver Receiver { get; set; } = default!;
/// <summary>
/// 获取或设置成功时间。
/// </summary>
[Newtonsoft.Json.JsonProperty("success_time")]
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.Rfc3339DateTimeOffsetConverter))]
[System.Text.Json.Serialization.JsonPropertyName("success_time")]
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.Rfc3339DateTimeOffsetConverter))]
public DateTimeOffset SuccessTime { get; set; }
}
}

View File

@ -12,10 +12,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Events
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/partner/4012085875 ]]> <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/partner/4012085801 ]]> <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/partner/4012090195 ]]> <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/partner/4012237246 ]]> <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/partner/4012116672 ]]> <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/partner/4012075216 ]]> <br/>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/partner/4012075400 ]]>
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/partner/4012237246 ]]>
/// </para>
/// </summary>
public class PartnerTransactionResource : WechatTenpayEvent.Types.IDecryptedResource

View File

@ -0,0 +1,13 @@
{
"mchid": "1900000100",
"transaction_id": "4200000000000000000000000000",
"order_id": "1217752501201407033233368018",
"out_order_no": "P20150806125346",
"receiver": {
"type": "MERCHANT_ID",
"account": "1900000100",
"amount": 888,
"description": "运费/交易分账/及时奖励"
},
"success_time": "2018-06-08T10:34:56+08:00"
}

View File

@ -0,0 +1,14 @@
{
"sp_mchid": "1900000100",
"sub_mchid": "1900000100",
"transaction_id": "4200000000000000000000000000",
"order_id": "1217752501201407033233368018",
"out_order_no": "P20150806125346",
"receiver": {
"type": "MERCHANT_ID",
"account": "1900000100",
"amount": 888,
"description": "运费/交易分账/及时奖励"
},
"success_time": "2018-06-08T10:34:56+08:00"
}