diff --git a/README.md b/README.md
index 06616a6b..208d8b01 100644
--- a/README.md
+++ b/README.md
@@ -96,7 +96,7 @@
### 6. 所有 API 都经过了测试吗?
-由于微信的产品业务线众多,很多业务也需要前置条件才能继续,截至目前本项目已封装超过 1200 余个 API,虽然同时也编写了若干单元测试用例,但与数量庞大的 API 相比仍远远不够。
+由于微信的产品业务线众多,很多业务也需要前置条件才能继续,截至目前本项目已封装超过 1300 余个 API,虽然同时也编写了若干单元测试用例,但与数量庞大的 API 相比仍远远不够。
本项目严格按照微信官方提供的开发文档进行封装,并利用自动化工具保证封装结果的正确。但微信的文档本身质量很低,所以存在错误在所难免。
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/CreateMarketingBusifavorStockRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/CreateMarketingBusifavorStockRequest.cs
index e2c00a53..f22ca417 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/CreateMarketingBusifavorStockRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/CreateMarketingBusifavorStockRequest.cs
@@ -278,7 +278,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
public string? MiniProgramPath { get; set; }
}
- public class Entrance
+ public class CustomEntrance
{
public static class Types
{
@@ -350,8 +350,35 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
public string? CodeDisplayMode { get; set; }
}
- public class Pattern
+ public class DisplayPattern
{
+ public static class Types
+ {
+ public class Finder
+ {
+ ///
+ /// 获取或设置视频号。
+ ///
+ [Newtonsoft.Json.JsonProperty("finder_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("finder_id")]
+ public string? FinderId { get; set; }
+
+ ///
+ /// 获取或设置视频封面图片媒体文件地址。
+ ///
+ [Newtonsoft.Json.JsonProperty("finder_video_cover_image_url")]
+ [System.Text.Json.Serialization.JsonPropertyName("finder_video_cover_image_url")]
+ public string? FinderVideoCoverImageMediaUrl { get; set; }
+
+ ///
+ /// 获取或设置视频 ID。
+ ///
+ [Newtonsoft.Json.JsonProperty("finder_video_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("finder_video_id")]
+ public string? FinderVideoId { get; set; }
+ }
+ }
+
///
/// 获取或设置使用须知。
///
@@ -386,6 +413,13 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
[Newtonsoft.Json.JsonProperty("coupon_image_url")]
[System.Text.Json.Serialization.JsonPropertyName("coupon_image_url")]
public string? CouponImageMediaUrl { get; set; }
+
+ ///
+ /// 获取或设置视频号信息。
+ ///
+ [Newtonsoft.Json.JsonProperty("finder_info")]
+ [System.Text.Json.Serialization.JsonPropertyName("finder_info")]
+ public Types.Finder? Finder { get; set; }
}
public class NotifyConfig
@@ -446,14 +480,14 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("custom_entrance")]
[System.Text.Json.Serialization.JsonPropertyName("custom_entrance")]
- public Types.Entrance? CustomEntrance { get; set; }
+ public Types.CustomEntrance? CustomEntrance { get; set; }
///
/// 获取或设置样式设置信息。
///
[Newtonsoft.Json.JsonProperty("display_pattern_info")]
[System.Text.Json.Serialization.JsonPropertyName("display_pattern_info")]
- public Types.Pattern? DisplayPattern { get; set; }
+ public Types.DisplayPattern? DisplayPattern { get; set; }
///
/// 获取或设置事件通知配置信息。
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/GetMarketingBusifavorStockByStockIdResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/GetMarketingBusifavorStockByStockIdResponse.cs
index baed218d..7eec7f89 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/GetMarketingBusifavorStockByStockIdResponse.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/GetMarketingBusifavorStockByStockIdResponse.cs
@@ -292,7 +292,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
public string? MiniProgramPath { get; set; }
}
- public class Entrance
+ public class CustomEntrance
{
public static class Types
{
@@ -364,8 +364,35 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
public string? CodeDisplayMode { get; set; }
}
- public class Pattern
+ public class DisplayPattern
{
+ public static class Types
+ {
+ public class Finder
+ {
+ ///
+ /// 获取或设置视频号。
+ ///
+ [Newtonsoft.Json.JsonProperty("finder_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("finder_id")]
+ public string? FinderId { get; set; }
+
+ ///
+ /// 获取或设置视频封面图片媒体文件地址。
+ ///
+ [Newtonsoft.Json.JsonProperty("finder_video_cover_image_url")]
+ [System.Text.Json.Serialization.JsonPropertyName("finder_video_cover_image_url")]
+ public string? FinderVideoCoverImageMediaUrl { get; set; }
+
+ ///
+ /// 获取或设置视频 ID。
+ ///
+ [Newtonsoft.Json.JsonProperty("finder_video_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("finder_video_id")]
+ public string? FinderVideoId { get; set; }
+ }
+ }
+
///
/// 获取或设置使用须知。
///
@@ -400,6 +427,13 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
[Newtonsoft.Json.JsonProperty("coupon_image_url")]
[System.Text.Json.Serialization.JsonPropertyName("coupon_image_url")]
public string? CouponImageMediaUrl { get; set; }
+
+ ///
+ /// 获取或设置视频号信息。
+ ///
+ [Newtonsoft.Json.JsonProperty("finder_info")]
+ [System.Text.Json.Serialization.JsonPropertyName("finder_info")]
+ public Types.Finder? Finder { get; set; }
}
public class NotifyConfig
@@ -515,14 +549,14 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("custom_entrance")]
[System.Text.Json.Serialization.JsonPropertyName("custom_entrance")]
- public Types.Entrance CustomEntrance { get; set; } = default!;
+ public Types.CustomEntrance CustomEntrance { get; set; } = default!;
///
/// 获取或设置样式设置信息。
///
[Newtonsoft.Json.JsonProperty("display_pattern_info")]
[System.Text.Json.Serialization.JsonPropertyName("display_pattern_info")]
- public Types.Pattern DisplayPattern { get; set; } = default!;
+ public Types.DisplayPattern DisplayPattern { get; set; } = default!;
///
/// 获取或设置事件通知配置信息。
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/UpdateMarketingBusifavorStockRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/UpdateMarketingBusifavorStockRequest.cs
index 49d3a6b6..4e16e2ef 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/UpdateMarketingBusifavorStockRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/UpdateMarketingBusifavorStockRequest.cs
@@ -51,11 +51,11 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
public string? MiniProgramPath { get; set; }
}
- public class Entrance : CreateMarketingBusifavorStockRequest.Types.Entrance
+ public class CustomEntrance : CreateMarketingBusifavorStockRequest.Types.CustomEntrance
{
}
- public class Pattern : CreateMarketingBusifavorStockRequest.Types.Pattern
+ public class DisplayPattern : CreateMarketingBusifavorStockRequest.Types.DisplayPattern
{
}
@@ -97,14 +97,14 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("custom_entrance")]
[System.Text.Json.Serialization.JsonPropertyName("custom_entrance")]
- public Types.Entrance? CustomEntrance { get; set; }
+ public Types.CustomEntrance? CustomEntrance { get; set; }
///
/// 获取或设置样式设置信息。
///
[Newtonsoft.Json.JsonProperty("display_pattern_info")]
[System.Text.Json.Serialization.JsonPropertyName("display_pattern_info")]
- public Types.Pattern? DisplayPattern { get; set; }
+ public Types.DisplayPattern? DisplayPattern { get; set; }
///
/// 获取或设置事件通知配置信息。
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/UsersCoupons/GetMarketingBusifavorUserCouponByCouponCodeResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/UsersCoupons/GetMarketingBusifavorUserCouponByCouponCodeResponse.cs
index 9013e978..6aba05e8 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/UsersCoupons/GetMarketingBusifavorUserCouponByCouponCodeResponse.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/UsersCoupons/GetMarketingBusifavorUserCouponByCouponCodeResponse.cs
@@ -14,11 +14,11 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
{
}
- public class Entrance : GetMarketingBusifavorStockByStockIdResponse.Types.Entrance
+ public class CustomEntrance : GetMarketingBusifavorStockByStockIdResponse.Types.CustomEntrance
{
}
- public class Pattern : GetMarketingBusifavorStockByStockIdResponse.Types.Pattern
+ public class DisplayPattern : GetMarketingBusifavorStockByStockIdResponse.Types.DisplayPattern
{
}
}
@@ -91,14 +91,14 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("custom_entrance")]
[System.Text.Json.Serialization.JsonPropertyName("custom_entrance")]
- public Types.Entrance? CustomEntrance { get; set; }
+ public Types.CustomEntrance? CustomEntrance { get; set; }
///
/// 获取或设置样式设置信息。
///
[Newtonsoft.Json.JsonProperty("display_pattern_info")]
[System.Text.Json.Serialization.JsonPropertyName("display_pattern_info")]
- public Types.Pattern DisplayPattern { get; set; } = default!;
+ public Types.DisplayPattern DisplayPattern { get; set; } = default!;
///
/// 获取或设置适用商品范围。
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/UsersCoupons/QueryMarketingBusifavorUserCouponsResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/UsersCoupons/QueryMarketingBusifavorUserCouponsResponse.cs
index 7a39d334..f0733e5c 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/UsersCoupons/QueryMarketingBusifavorUserCouponsResponse.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingBusifavor/UsersCoupons/QueryMarketingBusifavorUserCouponsResponse.cs
@@ -18,11 +18,11 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
{
}
- public class Entrance : GetMarketingBusifavorUserCouponByCouponCodeResponse.Types.Entrance
+ public class CustomEntrance : GetMarketingBusifavorUserCouponByCouponCodeResponse.Types.CustomEntrance
{
}
- public class Pattern : GetMarketingBusifavorUserCouponByCouponCodeResponse.Types.Pattern
+ public class DisplayPattern : GetMarketingBusifavorUserCouponByCouponCodeResponse.Types.DisplayPattern
{
}
}
@@ -97,14 +97,14 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
///
[Newtonsoft.Json.JsonProperty("custom_entrance")]
[System.Text.Json.Serialization.JsonPropertyName("custom_entrance")]
- public Types.Entrance? CustomEntrance { get; set; }
+ public Types.CustomEntrance? CustomEntrance { get; set; }
///
/// 获取或设置样式设置信息。
///
[Newtonsoft.Json.JsonProperty("display_pattern_info")]
[System.Text.Json.Serialization.JsonPropertyName("display_pattern_info")]
- public Types.Pattern DisplayPattern { get; set; } = default!;
+ public Types.DisplayPattern DisplayPattern { get; set; } = default!;
///
/// 获取或设置适用商品范围。
diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/MarketingBusifavor/CreateMarketingBusifavorStockRequest.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/MarketingBusifavor/CreateMarketingBusifavorStockRequest.json
index 49f67209..3856496d 100644
--- a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/MarketingBusifavor/CreateMarketingBusifavorStockRequest.json
+++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/MarketingBusifavor/CreateMarketingBusifavorStockRequest.json
@@ -63,7 +63,12 @@
"merchant_logo_url": "https://xxx",
"merchant_name": "微信支付",
"background_color": "Color020",
- "coupon_image_url": "https://qpic.cn/xxx"
+ "coupon_image_url": "https://qpic.cn/xxx",
+ "finder_info": {
+ "finder_id": "sph6Rngt2T4RlUf",
+ "finder_video_cover_image_url": "https://wxpaylogo.qpic.cn/xxx",
+ "finder_video_id": "export/UzFfAgtgekIEAQAAAAAAb4MgnPInmAAAAAstQy6ubaLX4KHWvLEZgBPEwIEgVnk9HIP-zNPgMJofG6tpdGPJNg_ojtEjoT94"
+ }
},
"coupon_code_mode": "WECHATPAY_MODE"
}
\ No newline at end of file
diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/MarketingBusifavor/GetMarketingBusifavorStockByStockIdResponse.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/MarketingBusifavor/GetMarketingBusifavorStockByStockIdResponse.json
index 1986c5ea..cf4d500a 100644
--- a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/MarketingBusifavor/GetMarketingBusifavorStockByStockIdResponse.json
+++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/MarketingBusifavor/GetMarketingBusifavorStockByStockIdResponse.json
@@ -63,7 +63,12 @@
"merchant_logo_url": "https://xxx",
"merchant_name": "微信支付",
"background_color": "Color020",
- "coupon_image_url": "https://qpic.cn/xxx"
+ "coupon_image_url": "https://qpic.cn/xxx",
+ "finder_info": {
+ "finder_id": "sph6Rngt2T4RlUf",
+ "finder_video_cover_image_url": "https://wxpaylogo.qpic.cn/xxx",
+ "finder_video_id": "export/UzFfAgtgekIEAQAAAAAAb4MgnPInmAAAAAstQy6ubaLX4KHWvLEZgBPEwIEgVnk9HIP-zNPgMJofG6tpdGPJNg_ojtEjoT94"
+ }
},
"stock_state": "RUNNING",
"coupon_code_mode": "MERCHANT_UPLOAD",