diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecuteMarketingFavorExtensions.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecuteMarketingFavorExtensions.cs
index 4d57ed1a..27693283 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecuteMarketingFavorExtensions.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecuteMarketingFavorExtensions.cs
@@ -347,10 +347,11 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3
.CreateFlurlRequest(request, HttpMethod.Get, "marketing", "favor", "users", request.OpenId, "coupons")
.SetQueryParam("appid", request.AppId)
.SetQueryParam("stock_id", request.StockId)
- .SetQueryParam("status", request.Status)
.SetQueryParam("creator_mchid", request.CreatorMerchantId)
.SetQueryParam("sender_mchid", request.SenderMerchantId)
.SetQueryParam("available_mchid", request.AvailableMerchantId)
+ .SetQueryParam("status", request.Status)
+ .SetQueryParam("business_type", request.BusinessType)
.SetQueryParam("limit", request.Limit)
.SetQueryParam("offset", request.Offset);
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/GetMarketingFavorStockByStockIdResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/GetMarketingFavorStockByStockIdResponse.cs
index 1185a8f3..7b0dfa76 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/GetMarketingFavorStockByStockIdResponse.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/GetMarketingFavorStockByStockIdResponse.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
{
@@ -111,6 +111,44 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
[System.Text.Json.Serialization.JsonPropertyName("cut_to_price")]
public int CutToPrice { get; set; }
}
+
+ public class AvailableRegion
+ {
+ ///
+ /// 获取或设置类型。
+ ///
+ [Newtonsoft.Json.JsonProperty("type")]
+ [System.Text.Json.Serialization.JsonPropertyName("type")]
+ public string Type { get; set; } = default!;
+
+ ///
+ /// 获取或设置国家。
+ ///
+ [Newtonsoft.Json.JsonProperty("country")]
+ [System.Text.Json.Serialization.JsonPropertyName("country")]
+ public string? Country { get; set; }
+
+ ///
+ /// 获取或设置省份。
+ ///
+ [Newtonsoft.Json.JsonProperty("province")]
+ [System.Text.Json.Serialization.JsonPropertyName("province")]
+ public string? Province { get; set; }
+
+ ///
+ /// 获取或设置城市。
+ ///
+ [Newtonsoft.Json.JsonProperty("city")]
+ [System.Text.Json.Serialization.JsonPropertyName("city")]
+ public string? City { get; set; }
+
+ ///
+ /// 获取或设置区县。
+ ///
+ [Newtonsoft.Json.JsonProperty("district")]
+ [System.Text.Json.Serialization.JsonPropertyName("district")]
+ public string? District { get; set; } = default!;
+ }
}
///
@@ -187,6 +225,13 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
[System.Text.Json.Serialization.JsonPropertyName("distributed_coupons")]
public int DistributedCoupons { get; set; }
+ ///
+ /// 获取或设置消费卡 ID。
+ ///
+ [Newtonsoft.Json.JsonProperty("card_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("card_id")]
+ public string? CardId { get; set; }
+
///
/// 获取或设置是否无资金流。
///
@@ -226,6 +271,27 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.Rfc3339DateTimeOffsetConverter))]
public DateTimeOffset? StopTime { get; set; }
+ ///
+ /// 获取或设置业务类型。
+ ///
+ [Newtonsoft.Json.JsonProperty("business_type")]
+ [System.Text.Json.Serialization.JsonPropertyName("business_type")]
+ public string? BusinessType { get; set; }
+
+ ///
+ /// 获取或设置消费金可用地域列表。
+ ///
+ [Newtonsoft.Json.JsonProperty("available_region_list")]
+ [System.Text.Json.Serialization.JsonPropertyName("available_region_list")]
+ public Types.AvailableRegion[]? AvailableRegionList { get; set; }
+
+ ///
+ /// 获取或设置消费金可用行业列表。
+ ///
+ [Newtonsoft.Json.JsonProperty("available_industry_list")]
+ [System.Text.Json.Serialization.JsonPropertyName("available_industry_list")]
+ public string[]? AvailableIndustryList { get; set; }
+
///
/// 获取或设置创建时间。
///
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/QueryMarketingFavorStocksResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/QueryMarketingFavorStocksResponse.cs
index 09cb173f..41515d2e 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/QueryMarketingFavorStocksResponse.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/QueryMarketingFavorStocksResponse.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
{
@@ -20,6 +20,10 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
public class CutToMessage : GetMarketingFavorStockByStockIdResponse.Types.CutToMessage
{
}
+
+ public class AvailableRegion : GetMarketingFavorStockByStockIdResponse.Types.AvailableRegion
+ {
+ }
}
///
@@ -96,6 +100,13 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
[System.Text.Json.Serialization.JsonPropertyName("distributed_coupons")]
public int DistributedCoupons { get; set; }
+ ///
+ /// 获取或设置消费卡 ID。
+ ///
+ [Newtonsoft.Json.JsonProperty("card_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("card_id")]
+ public string? CardId { get; set; }
+
///
/// 获取或设置是否无资金流。
///
@@ -135,6 +146,27 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.Rfc3339DateTimeOffsetConverter))]
public DateTimeOffset? StopTime { get; set; }
+ ///
+ /// 获取或设置业务类型。
+ ///
+ [Newtonsoft.Json.JsonProperty("business_type")]
+ [System.Text.Json.Serialization.JsonPropertyName("business_type")]
+ public string? BusinessType { get; set; }
+
+ ///
+ /// 获取或设置消费金可用地域列表。
+ ///
+ [Newtonsoft.Json.JsonProperty("available_region_list")]
+ [System.Text.Json.Serialization.JsonPropertyName("available_region_list")]
+ public Types.AvailableRegion[]? AvailableRegionList { get; set; }
+
+ ///
+ /// 获取或设置消费金可用行业列表。
+ ///
+ [Newtonsoft.Json.JsonProperty("available_industry_list")]
+ [System.Text.Json.Serialization.JsonPropertyName("available_industry_list")]
+ public string[]? AvailableIndustryList { get; set; }
+
///
/// 获取或设置创建时间。
///
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/UsersCoupons/GetMarketingFavorUserCouponByCouponIdResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/UsersCoupons/GetMarketingFavorUserCouponByCouponIdResponse.cs
index 1331c119..3e6c3622 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/UsersCoupons/GetMarketingFavorUserCouponByCouponIdResponse.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/UsersCoupons/GetMarketingFavorUserCouponByCouponIdResponse.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
{
@@ -79,6 +79,13 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
[System.Text.Json.Serialization.JsonPropertyName("coupon_type")]
public string CouponType { get; set; } = default!;
+ ///
+ /// 获取或设置商户单据号。
+ ///
+ [Newtonsoft.Json.JsonProperty("out_request_no")]
+ [System.Text.Json.Serialization.JsonPropertyName("out_request_no")]
+ public string OutRequestNumber { get; set; } = default!;
+
///
/// 获取或设置券状态。
///
@@ -146,6 +153,20 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
[System.Text.Json.Serialization.JsonPropertyName("normal_coupon_information")]
public Types.NormalCoupon? NormalCoupon { get; set; }
+ ///
+ /// 获取或设置可用余额(单位:分)。
+ ///
+ [Newtonsoft.Json.JsonProperty("available_balance")]
+ [System.Text.Json.Serialization.JsonPropertyName("available_balance")]
+ public int? AvailableBalance { get; set; }
+
+ ///
+ /// 获取或设置业务类型。
+ ///
+ [Newtonsoft.Json.JsonProperty("business_type")]
+ [System.Text.Json.Serialization.JsonPropertyName("business_type")]
+ public string? BusinessType { get; set; }
+
///
/// 获取或设置领券时间。
///
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/UsersCoupons/QueryMarketingFavorUserCouponsRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/UsersCoupons/QueryMarketingFavorUserCouponsRequest.cs
index efe49460..e1b10b84 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/UsersCoupons/QueryMarketingFavorUserCouponsRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/UsersCoupons/QueryMarketingFavorUserCouponsRequest.cs
@@ -1,4 +1,4 @@
-namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
{
///
/// 表示 [GET] /marketing/favor/users/{openid}/coupons 接口的请求。
@@ -54,6 +54,13 @@
[System.Text.Json.Serialization.JsonIgnore]
public string? Status { get; set; }
+ ///
+ /// 获取或设置业务类型。
+ ///
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
+ public string? BusinessType { get; set; }
+
///
/// 获取或设置分页大小。
///
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/UsersCoupons/QueryMarketingFavorUserCouponsResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/UsersCoupons/QueryMarketingFavorUserCouponsResponse.cs
index 518d1407..52c376aa 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/UsersCoupons/QueryMarketingFavorUserCouponsResponse.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/MarketingFavor/UsersCoupons/QueryMarketingFavorUserCouponsResponse.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
{
@@ -124,6 +124,13 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
[System.Text.Json.Serialization.JsonPropertyName("coupon_type")]
public string CouponType { get; set; } = default!;
+ ///
+ /// 获取或设置商户单据号。
+ ///
+ [Newtonsoft.Json.JsonProperty("out_request_no")]
+ [System.Text.Json.Serialization.JsonPropertyName("out_request_no")]
+ public string OutRequestNumber { get; set; } = default!;
+
///
/// 获取或设置券状态。
///
@@ -198,6 +205,20 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
[System.Text.Json.Serialization.JsonPropertyName("consume_information")]
public Types.Consumption? Consumption { get; set; }
+ ///
+ /// 获取或设置可用余额(单位:分)。
+ ///
+ [Newtonsoft.Json.JsonProperty("available_balance")]
+ [System.Text.Json.Serialization.JsonPropertyName("available_balance")]
+ public int? AvailableBalance { get; set; }
+
+ ///
+ /// 获取或设置业务类型。
+ ///
+ [Newtonsoft.Json.JsonProperty("business_type")]
+ [System.Text.Json.Serialization.JsonPropertyName("business_type")]
+ public string? BusinessType { get; set; }
+
///
/// 获取或设置领券时间。
///
diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/GetMarketingFavorStockByStockIdResponse.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/GetMarketingFavorStockByStockIdResponse.json
index 706a8cd8..ebb07abe 100644
--- a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/GetMarketingFavorStockByStockIdResponse.json
+++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/GetMarketingFavorStockByStockIdResponse.json
@@ -1,4 +1,4 @@
-{
+{
"stock_id": "9836588",
"stock_creator_mchid": "123456",
"stock_name": "微信支付批次",
@@ -9,17 +9,44 @@
"max_coupons": 100,
"max_amount": 5000,
"max_amount_by_day": 400,
+ "fixed_normal_coupon": {
+ "coupon_amount": 100,
+ "transaction_minimum": 100
+ },
"max_coupons_per_user": 3,
- "trade_type": ["OTHER", "APPPAY"]
+ "coupon_type": "NORMAL",
+ "goods_tag": [
+ "123456"
+ ],
+ "trade_type": [
+ "MICROAPP"
+ ],
+ "combine_use": true
},
"available_begin_time": "2015-05-20T13:29:35.120+08:00",
"available_end_time": "2015-05-20T13:29:35.120+08:00",
"distributed_coupons": 100,
"no_cash": true,
+ "start_time": "2015-05-20T13:29:35.120+08:00",
+ "stop_time": "2015-05-20T13:29:35.120+08:00",
"cut_to_message": {
"single_price_max": 100,
- "cut_to_price": 5000
+ "cut_to_price": 80
},
"singleitem": true,
- "stock_type": "NORMAL"
+ "stock_type": "NORMAL",
+ "card_id": "pX2-vjoeC94Nn-r2g5GjDwkfFH7E",
+ "business_type": "MULTIUSE",
+ "available_region_list": [
+ {
+ "type": "PROVINCE",
+ "province": "广东省",
+ "city": "深圳市",
+ "district": "南山区",
+ "country": "中国大陆"
+ }
+ ],
+ "available_industry_list": [
+ "餐饮"
+ ]
}
diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/QueryMarketingFavorStocksResponse.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/QueryMarketingFavorStocksResponse.json
index d81915fd..34e79f2f 100644
--- a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/QueryMarketingFavorStocksResponse.json
+++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/QueryMarketingFavorStocksResponse.json
@@ -1,4 +1,4 @@
-{
+{
"total_count": 10,
"data": [
{
@@ -17,14 +17,27 @@
"transaction_minimum": 100
},
"max_coupons_per_user": 3,
- "trade_type": ["OTHER", "APPPAY"]
+ "trade_type": [ "OTHER", "APPPAY" ]
},
"available_begin_time": "2015-05-20T13:29:35.120+08:00",
"available_end_time": "2015-05-20T13:29:35.120+08:00",
"distributed_coupons": 100,
"no_cash": true,
"singleitem": true,
- "stock_type": "NORMAL"
+ "stock_type": "NORMAL",
+ "business_type": "MULTIUSE",
+ "available_region_list": [
+ {
+ "type": "PROVINCE",
+ "province": "广东省",
+ "city": "深圳市",
+ "district": "南山区",
+ "country": "中国大陆"
+ }
+ ],
+ "available_industry_list": [
+ "餐饮"
+ ]
}
],
"limit": 8,
diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/UsersCoupons/GetMarketingFavorUserCouponByCouponIdResponse.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/UsersCoupons/GetMarketingFavorUserCouponByCouponIdResponse.json
index 01428517..da394368 100644
--- a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/UsersCoupons/GetMarketingFavorUserCouponByCouponIdResponse.json
+++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/UsersCoupons/GetMarketingFavorUserCouponByCouponIdResponse.json
@@ -1,22 +1,25 @@
-{
+{
"stock_creator_mchid": "9800064",
"stock_id": "9865888",
"coupon_id": "98674556",
"cut_to_message": {
"single_price_max": 100,
- "cut_to_price": 100
+ "cut_to_price": 80
},
"coupon_name": "微信支付代金券",
"status": "EXPIRED",
"description": "微信支付营销",
"create_time": "2015-05-20T13:29:35.120+08:00",
"coupon_type": "CUT_TO",
- "no_cash": true,
+ "no_cash": false,
"available_begin_time": "2015-05-20T13:29:35.120+08:00",
"available_end_time": "2015-05-20T13:29:35.120+08:00",
- "singleitem": true,
+ "singleitem": false,
"normal_coupon_information": {
"coupon_amount": 100,
"transaction_minimum": 100
- }
+ },
+ "out_request_no": "example_out_request_no",
+ "available_balance": 10000,
+ "business_type": "MULTIUSE"
}
diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/UsersCoupons/QueryMarketingFavorUserCouponsResponse.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/UsersCoupons/QueryMarketingFavorUserCouponsResponse.json
index 00a0147d..fc2113d9 100644
--- a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/UsersCoupons/QueryMarketingFavorUserCouponsResponse.json
+++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/MarketingFavor/UsersCoupons/QueryMarketingFavorUserCouponsResponse.json
@@ -1,4 +1,4 @@
-{
+{
"data": [
{
"stock_creator_mchid": "9800064",
@@ -33,7 +33,10 @@
"discount_amount": 4
}
]
- }
+ },
+ "out_request_no": "example_out_request_no",
+ "available_balance": 10000,
+ "business_type": "MULTIUSE"
}
],
"total_count": 100,