Skip to content

Commit 4427080

Browse files
committed
feat(tenpayv3): 新增商家名片会员相关接口
1 parent f39a644 commit 4427080

66 files changed

Lines changed: 4438 additions & 1 deletion

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

docs/WechatTenpayV3/Basic_ModelDefinition.md

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@
6161
|| 运营工具:点金计划 | 合作伙伴 | |
6262
| × | <del>运营工具:现金红包</del> | 直连商户 & 合作伙伴 | 官方未提供 v3 API |
6363
|| 运营工具:品牌红包 | 直连商户 | |
64+
|| 运营工具:商家名片会员 | 合作伙伴 | |
6465
|| 扩展工具:分账 | 直连商户 & 合作伙伴 | |
6566
|| 扩展工具:连锁品牌分账 | 合作伙伴 | |
6667
|| 扩展工具:消费者投诉 2.0 | 直连商户 & 合作伙伴 | |
@@ -523,6 +524,50 @@
523524

524525
- 查询银行转账充值结果:`GetBankTransferRechargeByOutRechargeNumber`
525526

527+
- 商家名片会员
528+
529+
- 会员卡模板管理:
530+
531+
- 创建会员卡模板:`CreateBrandPartnerCardMemberCard`
532+
533+
- 查询会员卡模板列表:`QueryBrandPartnerCardMemberCards`
534+
535+
- 查询会员卡模板信息:`GetBrandPartnerCardMemberCardByCardId`
536+
537+
- 修改会员卡模板信息:`UpdateBrandPartnerCardMemberCard`
538+
539+
- 作废会员卡模板:`InvalidateBrandPartnerCardMemberCard`
540+
541+
- 用户会员卡管理:
542+
543+
- 查询用户会员卡信息:`GetBrandPartnerCardMemberUserCardByUserCardCode`
544+
545+
- 查询用户在品牌下所有会员卡:`QueryBrandPartnerCardMemberUserCards`
546+
547+
- 修改用户会员卡信息:`UpdateBrandPartnerCardMemberUserCard`
548+
549+
- 作废用户会员卡:`InvalidateBrandPartnerCardMemberUserCard`
550+
551+
- 用户开通会员卡:
552+
553+
- 入会组件预授权:`CreateBrandPartnerCardMemberPreauthToken`
554+
555+
- 商家同步会员身份:
556+
557+
- 根据 OpenId 导入用户会员卡:`ImportBrandPartnerCardMemberUserCardByOpenId`
558+
559+
- 同步会员开通结果:`ConfirmBrandPartnerCardMemberUserCard`
560+
561+
- 用户动态:
562+
563+
- 创建用户动态信息:`CreateBrandPartnerCardMemberUserFeed`
564+
565+
- 会员卡积分兑券:
566+
567+
- 同步积分余额:`SyncBrandPartnerCardMemberUserPoint`
568+
569+
- 同步积分兑券结果:`ConfirmBrandPartnerCardMemberUserPointExchangeCoupon`
570+
526571
- 扩展工具
527572

528573
- 分账
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Events
2+
{
3+
/// <summary>
4+
/// <para>表示 BRAND_MEMBER_CARD_SP.POINT_EXCHANGE_COUPON (仅限服务商)通知的数据。</para>
5+
/// <para>
6+
/// REF: <br/>
7+
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/partner/4015878622 ]]>
8+
/// </para>
9+
/// </summary>
10+
public class BrandPartnerCardMemberPointExchangeCouponResource : WechatTenpayEvent.Types.IDecryptedResource
11+
{
12+
/// <summary>
13+
/// 获取或设置积分兑券 ID。
14+
/// </summary>
15+
[Newtonsoft.Json.JsonProperty("record_id")]
16+
[System.Text.Json.Serialization.JsonPropertyName("record_id")]
17+
public string RecordId { get; set; } = default!;
18+
19+
/// <summary>
20+
/// 获取或设置积分兑券模板 ID。
21+
/// </summary>
22+
[Newtonsoft.Json.JsonProperty("exchange_coupon_template_id")]
23+
[System.Text.Json.Serialization.JsonPropertyName("exchange_coupon_template_id")]
24+
public string ExchangeCouponTemplateId { get; set; } = default!;
25+
26+
/// <summary>
27+
/// 获取或设置会员卡 Code。
28+
/// </summary>
29+
[Newtonsoft.Json.JsonProperty("user_card_code")]
30+
[System.Text.Json.Serialization.JsonPropertyName("user_card_code")]
31+
public string UserCardCode { get; set; } = default!;
32+
33+
/// <summary>
34+
/// 获取或设置会员卡模板 ID。
35+
/// </summary>
36+
[Newtonsoft.Json.JsonProperty("card_id")]
37+
[System.Text.Json.Serialization.JsonPropertyName("card_id")]
38+
public string CardId { get; set; } = default!;
39+
40+
/// <summary>
41+
/// 获取或设置品牌 ID。
42+
/// </summary>
43+
[Newtonsoft.Json.JsonProperty("brand_id")]
44+
[System.Text.Json.Serialization.JsonPropertyName("brand_id")]
45+
public string BrandId { get; set; } = default!;
46+
47+
/// <summary>
48+
/// 获取或设置商家 AppId。
49+
/// </summary>
50+
[Newtonsoft.Json.JsonProperty("appid")]
51+
[System.Text.Json.Serialization.JsonPropertyName("appid")]
52+
public string AppId { get; set; } = default!;
53+
54+
/// <summary>
55+
/// 获取或设置用户的 OpenId。
56+
/// </summary>
57+
[Newtonsoft.Json.JsonProperty("openid")]
58+
[System.Text.Json.Serialization.JsonPropertyName("openid")]
59+
public string OpenId { get; set; } = default!;
60+
61+
/// <summary>
62+
/// 获取或设置消耗积分数。
63+
/// </summary>
64+
[Newtonsoft.Json.JsonProperty("deduct_points")]
65+
[System.Text.Json.Serialization.JsonPropertyName("deduct_points")]
66+
public int DeductPoints { get; set; }
67+
68+
/// <summary>
69+
/// 获取或设置商品券 ID。
70+
/// </summary>
71+
[Newtonsoft.Json.JsonProperty("product_coupon_id")]
72+
[System.Text.Json.Serialization.JsonPropertyName("product_coupon_id")]
73+
public string ProductCouponId { get; set; } = default!;
74+
75+
/// <summary>
76+
/// 获取或设置商品券批次类型。
77+
/// </summary>
78+
[Newtonsoft.Json.JsonProperty("product_coupon_stock_type")]
79+
[System.Text.Json.Serialization.JsonPropertyName("product_coupon_stock_type")]
80+
public string ProductCouponStockType { get; set; } = default!;
81+
82+
/// <summary>
83+
/// 获取或设置商品券批次 ID。
84+
/// </summary>
85+
[Newtonsoft.Json.JsonProperty("stock_id")]
86+
[System.Text.Json.Serialization.JsonPropertyName("stock_id")]
87+
public string StockId { get; set; } = default!;
88+
}
89+
}
Lines changed: 209 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,209 @@
1+
using System;
2+
3+
namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Events
4+
{
5+
/// <summary>
6+
/// <para>表示 BRAND_MEMBER_CARD_SP.USER_CARD.CREATE (仅限服务商)通知的数据。</para>
7+
/// <para>
8+
/// REF: <br/>
9+
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/partner/4015283692 ]]>
10+
/// </para>
11+
/// </summary>
12+
public class BrandPartnerCardMemberUserCardResource : WechatTenpayEvent.Types.IDecryptedResource
13+
{
14+
public static class Types
15+
{
16+
public class ValidDateInfo : Models.QueryBrandPartnerCardMemberUserCardsResponse.Types.UserCard.Types.ValidDateInfo
17+
{
18+
}
19+
20+
public class UserInfo
21+
{
22+
public static class Types
23+
{
24+
public class CommonField
25+
{
26+
/// <summary>
27+
/// 获取或设置字段名称。
28+
/// </summary>
29+
[Newtonsoft.Json.JsonProperty("name")]
30+
[System.Text.Json.Serialization.JsonPropertyName("name")]
31+
public string Name { get; set; } = default!;
32+
33+
/// <summary>
34+
/// 获取或设置字段值。
35+
/// </summary>
36+
[Newtonsoft.Json.JsonProperty("value")]
37+
[System.Text.Json.Serialization.JsonPropertyName("value")]
38+
public string? Value { get; set; }
39+
}
40+
41+
public class CustomField
42+
{
43+
/// <summary>
44+
/// 获取或设置字段名称。
45+
/// </summary>
46+
[Newtonsoft.Json.JsonProperty("name")]
47+
[System.Text.Json.Serialization.JsonPropertyName("name")]
48+
public string Name { get; set; } = default!;
49+
50+
/// <summary>
51+
/// 获取或设置字段值。
52+
/// </summary>
53+
[Newtonsoft.Json.JsonProperty("user_chosen_values")]
54+
[System.Text.Json.Serialization.JsonPropertyName("user_chosen_values")]
55+
public string[]? Values { get; set; }
56+
}
57+
}
58+
59+
/// <summary>
60+
/// 获取或设置通用开卡信息字段列表。
61+
/// </summary>
62+
[Newtonsoft.Json.JsonProperty("common_field_list")]
63+
[System.Text.Json.Serialization.JsonPropertyName("common_field_list")]
64+
public Types.CommonField[]? CommonFieldList { get; set; }
65+
66+
/// <summary>
67+
/// 获取或设置自定义开卡信息字段列表。
68+
/// </summary>
69+
[Newtonsoft.Json.JsonProperty("custom_field_list")]
70+
[System.Text.Json.Serialization.JsonPropertyName("custom_field_list")]
71+
public Types.CustomField[]? CustomFieldList { get; set; }
72+
}
73+
}
74+
75+
/// <summary>
76+
/// 获取或设置会员卡 Code。
77+
/// </summary>
78+
[Newtonsoft.Json.JsonProperty("user_card_code")]
79+
[System.Text.Json.Serialization.JsonPropertyName("user_card_code")]
80+
public string UserCardCode { get; set; } = default!;
81+
82+
/// <summary>
83+
/// 获取或设置会员卡模板 ID。
84+
/// </summary>
85+
[Newtonsoft.Json.JsonProperty("card_id")]
86+
[System.Text.Json.Serialization.JsonPropertyName("card_id")]
87+
public string CardId { get; set; } = default!;
88+
89+
/// <summary>
90+
/// 获取或设置品牌 ID。
91+
/// </summary>
92+
[Newtonsoft.Json.JsonProperty("brand_id")]
93+
[System.Text.Json.Serialization.JsonPropertyName("brand_id")]
94+
public string BrandId { get; set; } = default!;
95+
96+
/// <summary>
97+
/// 获取或设置用户的 OpenId。
98+
/// </summary>
99+
[Newtonsoft.Json.JsonProperty("openid")]
100+
[System.Text.Json.Serialization.JsonPropertyName("openid")]
101+
public string OpenId { get; set; } = default!;
102+
103+
/// <summary>
104+
/// 获取或设置会员卡类型。
105+
/// </summary>
106+
[Newtonsoft.Json.JsonProperty("card_type")]
107+
[System.Text.Json.Serialization.JsonPropertyName("card_type")]
108+
public string CardType { get; set; } = default!;
109+
110+
/// <summary>
111+
/// 获取或设置会员卡背景颜色。
112+
/// </summary>
113+
[Newtonsoft.Json.JsonProperty("card_color")]
114+
[System.Text.Json.Serialization.JsonPropertyName("card_color")]
115+
public string CardColor { get; set; } = default!;
116+
117+
/// <summary>
118+
/// 获取或设置会员卡图片 URL。
119+
/// </summary>
120+
[Newtonsoft.Json.JsonProperty("card_picture_url")]
121+
[System.Text.Json.Serialization.JsonPropertyName("card_picture_url")]
122+
public string CardPictureUrl { get; set; } = default!;
123+
124+
/// <summary>
125+
/// 获取或设置用户的手机号码。
126+
/// </summary>
127+
[Newtonsoft.Json.JsonProperty("phone_number")]
128+
[System.Text.Json.Serialization.JsonPropertyName("phone_number")]
129+
public string? MobileNumber { get; set; }
130+
131+
/// <summary>
132+
/// 获取或设置会员等级。
133+
/// </summary>
134+
[Newtonsoft.Json.JsonProperty("level")]
135+
[System.Text.Json.Serialization.JsonPropertyName("level")]
136+
public string? Level { get; set; }
137+
138+
/// <summary>
139+
/// 获取或设置会员卡有效期信息。
140+
/// </summary>
141+
[Newtonsoft.Json.JsonProperty("valid_date_information")]
142+
[System.Text.Json.Serialization.JsonPropertyName("valid_date_information")]
143+
public Types.ValidDateInfo? ValidDateInfo { get; set; }
144+
145+
/// <summary>
146+
/// 获取或设置领取时间。
147+
/// </summary>
148+
[Newtonsoft.Json.JsonProperty("pickup_time")]
149+
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.Rfc3339DateTimeOffsetConverter))]
150+
[System.Text.Json.Serialization.JsonPropertyName("pickup_time")]
151+
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.Rfc3339DateTimeOffsetConverter))]
152+
public DateTimeOffset PickupTime { get; set; }
153+
154+
/// <summary>
155+
/// 获取或设置用户开卡信息。
156+
/// </summary>
157+
[Newtonsoft.Json.JsonProperty("user_information")]
158+
[System.Text.Json.Serialization.JsonPropertyName("user_information")]
159+
public Types.UserInfo? UserInfo { get; set; }
160+
161+
/// <summary>
162+
/// 获取或设置附加数据。
163+
/// </summary>
164+
[Newtonsoft.Json.JsonProperty("attach")]
165+
[System.Text.Json.Serialization.JsonPropertyName("attach")]
166+
public string? Attachment { get; set; }
167+
168+
/// <summary>
169+
/// 获取或设置会员卡状态。
170+
/// </summary>
171+
[Newtonsoft.Json.JsonProperty("user_card_state")]
172+
[System.Text.Json.Serialization.JsonPropertyName("user_card_state")]
173+
public string State { get; set; } = default!;
174+
175+
/// <summary>
176+
/// 获取或设置作废原因。
177+
/// </summary>
178+
[Newtonsoft.Json.JsonProperty("invalid_reason")]
179+
[System.Text.Json.Serialization.JsonPropertyName("invalid_reason")]
180+
public string? InvalidReason { get; set; }
181+
182+
/// <summary>
183+
/// 获取或设置作废时间。
184+
/// </summary>
185+
[Newtonsoft.Json.JsonProperty("invalid_time")]
186+
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.Rfc3339DateTimeOffsetConverter))]
187+
[System.Text.Json.Serialization.JsonPropertyName("invalid_time")]
188+
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.Rfc3339DateTimeOffsetConverter))]
189+
public DateTimeOffset? InvalidTime { get; set; }
190+
191+
/// <summary>
192+
/// 获取或设置创建时间。
193+
/// </summary>
194+
[Newtonsoft.Json.JsonProperty("create_time")]
195+
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.Rfc3339DateTimeOffsetConverter))]
196+
[System.Text.Json.Serialization.JsonPropertyName("create_time")]
197+
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.Rfc3339DateTimeOffsetConverter))]
198+
public DateTimeOffset CreateTime { get; set; }
199+
200+
/// <summary>
201+
/// 获取或设置更新时间。
202+
/// </summary>
203+
[Newtonsoft.Json.JsonProperty("modify_time")]
204+
[Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.Rfc3339DateTimeOffsetConverter))]
205+
[System.Text.Json.Serialization.JsonPropertyName("modify_time")]
206+
[System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.Rfc3339DateTimeOffsetConverter))]
207+
public DateTimeOffset ModifyTime { get; set; }
208+
}
209+
}
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Events
2+
{
3+
/// <summary>
4+
/// <para>表示 BRAND_MEMBER_CARD_SP.SYNC_USER_POINT (仅限服务商)通知的数据。</para>
5+
/// <para>
6+
/// REF: <br/>
7+
/// <![CDATA[ https://pay.weixin.qq.com/doc/v3/partner/4016096820 ]]>
8+
/// </para>
9+
/// </summary>
10+
public class BrandPartnerCardMemberUserPointResource : WechatTenpayEvent.Types.IDecryptedResource
11+
{
12+
/// <summary>
13+
/// 获取或设置会员卡 Code。
14+
/// </summary>
15+
[Newtonsoft.Json.JsonProperty("user_card_code")]
16+
[System.Text.Json.Serialization.JsonPropertyName("user_card_code")]
17+
public string UserCardCode { get; set; } = default!;
18+
19+
/// <summary>
20+
/// 获取或设置会员卡模板 ID。
21+
/// </summary>
22+
[Newtonsoft.Json.JsonProperty("card_id")]
23+
[System.Text.Json.Serialization.JsonPropertyName("card_id")]
24+
public string CardId { get; set; } = default!;
25+
26+
/// <summary>
27+
/// 获取或设置品牌 ID。
28+
/// </summary>
29+
[Newtonsoft.Json.JsonProperty("brand_id")]
30+
[System.Text.Json.Serialization.JsonPropertyName("brand_id")]
31+
public string BrandId { get; set; } = default!;
32+
33+
/// <summary>
34+
/// 获取或设置用户的 OpenId。
35+
/// </summary>
36+
[Newtonsoft.Json.JsonProperty("openid")]
37+
[System.Text.Json.Serialization.JsonPropertyName("openid")]
38+
public string OpenId { get; set; } = default!;
39+
}
40+
}

0 commit comments

Comments
 (0)