123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540 |
- // Copyright 2021 Tencent Inc. All rights reserved.
- //
- // 微信支付营销系统开放API
- //
- // 新增立减金api
- //
- // API version: 3.4.0
- // Code generated by WechatPay APIv3 Generator based on [OpenAPI Generator](https://openapi-generator.tech); DO NOT EDIT.
- package cashcoupons_test
- import (
- "context"
- "log"
- "git.nanodreamtech.com/sg/wechatpay-go/core"
- "git.nanodreamtech.com/sg/wechatpay-go/core/option"
- "git.nanodreamtech.com/sg/wechatpay-go/services/cashcoupons"
- "git.nanodreamtech.com/sg/wechatpay-go/utils"
- )
- func ExampleStockApiService_CreateCouponStock() {
- var (
- mchID string = "190000****" // 商户号
- mchCertificateSerialNumber string = "3775************************************" // 商户证书序列号
- mchAPIv3Key string = "2ab9****************************" // 商户APIv3密钥
- )
- // 使用 utils 提供的函数从本地文件中加载商户私钥,商户私钥会用来生成请求的签名
- mchPrivateKey, err := utils.LoadPrivateKeyWithPath("/path/to/merchant/apiclient_key.pem")
- if err != nil {
- log.Printf("load merchant private key error:%s", err)
- return
- }
- ctx := context.Background()
- // 使用商户私钥等初始化 client,并使它具有自动定时获取微信支付平台证书的能力
- opts := []core.ClientOption{
- option.WithWechatPayAutoAuthCipher(mchID, mchCertificateSerialNumber, mchPrivateKey, mchAPIv3Key),
- }
- client, err := core.NewClient(ctx, opts...)
- if err != nil {
- log.Printf("new wechat pay client err:%s", err)
- return
- }
- svc := cashcoupons.StockApiService{Client: client}
- resp, result, err := svc.CreateCouponStock(ctx,
- cashcoupons.CreateCouponStockRequest{
- StockName: core.String("微信支付代金券批次"),
- Comment: core.String("零售批次"),
- BelongMerchant: core.String("98568865"),
- AvailableBeginTime: core.String("2015-05-20T13:29:35.120+08:00"),
- AvailableEndTime: core.String("2015-05-20T13:29:35.120+08:00"),
- StockUseRule: &cashcoupons.StockRule{
- MaxCoupons: core.Int64(100),
- MaxAmount: core.Int64(5000),
- MaxAmountByDay: core.Int64(400),
- MaxCouponsPerUser: core.Int64(3),
- NaturalPersonLimit: core.Bool(false),
- PreventApiAbuse: core.Bool(false),
- },
- PatternInfo: &cashcoupons.PatternInfo{
- Description: core.String("微信支付营销代金券"),
- MerchantLogo: core.String("CDN地址"),
- MerchantName: core.String("微信支付"),
- BackgroundColor: cashcoupons.BACKGROUNDCOLOR_COLOR010.Ptr(),
- CouponImage: core.String("图片cdn地址"),
- JumpTarget: cashcoupons.JUMPTARGET_PAYMENT_CODE.Ptr(),
- MiniProgramAppid: core.String("wx23232232323"),
- MiniProgramPath: core.String("/path/index/index"),
- },
- CouponUseRule: &cashcoupons.CouponRule{
- CouponAvailableTime: &cashcoupons.FavorAvailableTime{
- FixAvailableTime: &cashcoupons.FixedAvailableTime{
- AvailableWeekDay: []int64{int64(1)},
- BeginTime: core.Int64(0),
- EndTime: core.Int64(3600),
- },
- SecondDayAvailable: core.Bool(false),
- AvailableTimeAfterReceive: core.Int64(1440),
- },
- FixedNormalCoupon: &cashcoupons.FixedValueStockMsg{
- CouponAmount: core.Int64(100),
- TransactionMinimum: core.Int64(100),
- },
- GoodsTag: []string{"123321"},
- TradeType: []cashcoupons.TradeType{cashcoupons.TRADETYPE_MICROAPP},
- CombineUse: core.Bool(false),
- AvailableItems: []string{"123321"},
- UnavailableItems: []string{"789987"},
- AvailableMerchants: []string{"9856000"},
- LimitCard: &cashcoupons.CardLimitation{
- Name: core.String("精粹白金"),
- Bin: []string{"62542688"},
- },
- LimitPay: []string{"BCZ_DEBIT"},
- },
- NoCash: core.Bool(false),
- StockType: core.String("NORMAL"),
- OutRequestNo: core.String("example_out_request_no"),
- ExtInfo: core.String("{'exinfo1':'1234','exinfo2':'3456'}"),
- },
- )
- if err != nil {
- // 处理错误
- log.Printf("call CreateCouponStock err:%s", err)
- } else {
- // 处理返回结果
- log.Printf("status=%d resp=%s", result.Response.StatusCode, resp)
- }
- }
- func ExampleStockApiService_ListAvailableMerchants() {
- var (
- mchID string = "190000****" // 商户号
- mchCertificateSerialNumber string = "3775************************************" // 商户证书序列号
- mchAPIv3Key string = "2ab9****************************" // 商户APIv3密钥
- )
- // 使用 utils 提供的函数从本地文件中加载商户私钥,商户私钥会用来生成请求的签名
- mchPrivateKey, err := utils.LoadPrivateKeyWithPath("/path/to/merchant/apiclient_key.pem")
- if err != nil {
- log.Printf("load merchant private key error:%s", err)
- return
- }
- ctx := context.Background()
- // 使用商户私钥等初始化 client,并使它具有自动定时获取微信支付平台证书的能力
- opts := []core.ClientOption{
- option.WithWechatPayAutoAuthCipher(mchID, mchCertificateSerialNumber, mchPrivateKey, mchAPIv3Key),
- }
- client, err := core.NewClient(ctx, opts...)
- if err != nil {
- log.Printf("new wechat pay client err:%s", err)
- return
- }
- svc := cashcoupons.StockApiService{Client: client}
- resp, result, err := svc.ListAvailableMerchants(ctx,
- cashcoupons.ListAvailableMerchantsRequest{
- Offset: core.Int64(10),
- Limit: core.Int64(10),
- StockCreatorMchid: core.String("9865000"),
- StockId: core.String("9865000"),
- },
- )
- if err != nil {
- // 处理错误
- log.Printf("call ListAvailableMerchants err:%s", err)
- } else {
- // 处理返回结果
- log.Printf("status=%d resp=%s", result.Response.StatusCode, resp)
- }
- }
- func ExampleStockApiService_ListAvailableSingleitems() {
- var (
- mchID string = "190000****" // 商户号
- mchCertificateSerialNumber string = "3775************************************" // 商户证书序列号
- mchAPIv3Key string = "2ab9****************************" // 商户APIv3密钥
- )
- // 使用 utils 提供的函数从本地文件中加载商户私钥,商户私钥会用来生成请求的签名
- mchPrivateKey, err := utils.LoadPrivateKeyWithPath("/path/to/merchant/apiclient_key.pem")
- if err != nil {
- log.Printf("load merchant private key error:%s", err)
- return
- }
- ctx := context.Background()
- // 使用商户私钥等初始化 client,并使它具有自动定时获取微信支付平台证书的能力
- opts := []core.ClientOption{
- option.WithWechatPayAutoAuthCipher(mchID, mchCertificateSerialNumber, mchPrivateKey, mchAPIv3Key),
- }
- client, err := core.NewClient(ctx, opts...)
- if err != nil {
- log.Printf("new wechat pay client err:%s", err)
- return
- }
- svc := cashcoupons.StockApiService{Client: client}
- resp, result, err := svc.ListAvailableSingleitems(ctx,
- cashcoupons.ListAvailableSingleitemsRequest{
- Offset: core.Int64(10),
- Limit: core.Int64(10),
- StockCreatorMchid: core.String("9865000"),
- StockId: core.String("9865000"),
- },
- )
- if err != nil {
- // 处理错误
- log.Printf("call ListAvailableSingleitems err:%s", err)
- } else {
- // 处理返回结果
- log.Printf("status=%d resp=%s", result.Response.StatusCode, resp)
- }
- }
- func ExampleStockApiService_ListStocks() {
- var (
- mchID string = "190000****" // 商户号
- mchCertificateSerialNumber string = "3775************************************" // 商户证书序列号
- mchAPIv3Key string = "2ab9****************************" // 商户APIv3密钥
- )
- // 使用 utils 提供的函数从本地文件中加载商户私钥,商户私钥会用来生成请求的签名
- mchPrivateKey, err := utils.LoadPrivateKeyWithPath("/path/to/merchant/apiclient_key.pem")
- if err != nil {
- log.Printf("load merchant private key error:%s", err)
- return
- }
- ctx := context.Background()
- // 使用商户私钥等初始化 client,并使它具有自动定时获取微信支付平台证书的能力
- opts := []core.ClientOption{
- option.WithWechatPayAutoAuthCipher(mchID, mchCertificateSerialNumber, mchPrivateKey, mchAPIv3Key),
- }
- client, err := core.NewClient(ctx, opts...)
- if err != nil {
- log.Printf("new wechat pay client err:%s", err)
- return
- }
- svc := cashcoupons.StockApiService{Client: client}
- resp, result, err := svc.ListStocks(ctx,
- cashcoupons.ListStocksRequest{
- Offset: core.Int64(1),
- Limit: core.Int64(8),
- StockCreatorMchid: core.String("9856888"),
- CreateStartTime: core.String("2015-05-20T13:29:35.120+08:00"),
- CreateEndTime: core.String("2015-05-20T13:29:35.120+08:00"),
- Status: core.String("paused"),
- },
- )
- if err != nil {
- // 处理错误
- log.Printf("call ListStocks err:%s", err)
- } else {
- // 处理返回结果
- log.Printf("status=%d resp=%s", result.Response.StatusCode, resp)
- }
- }
- func ExampleStockApiService_PauseStock() {
- var (
- mchID string = "190000****" // 商户号
- mchCertificateSerialNumber string = "3775************************************" // 商户证书序列号
- mchAPIv3Key string = "2ab9****************************" // 商户APIv3密钥
- )
- // 使用 utils 提供的函数从本地文件中加载商户私钥,商户私钥会用来生成请求的签名
- mchPrivateKey, err := utils.LoadPrivateKeyWithPath("/path/to/merchant/apiclient_key.pem")
- if err != nil {
- log.Printf("load merchant private key error:%s", err)
- return
- }
- ctx := context.Background()
- // 使用商户私钥等初始化 client,并使它具有自动定时获取微信支付平台证书的能力
- opts := []core.ClientOption{
- option.WithWechatPayAutoAuthCipher(mchID, mchCertificateSerialNumber, mchPrivateKey, mchAPIv3Key),
- }
- client, err := core.NewClient(ctx, opts...)
- if err != nil {
- log.Printf("new wechat pay client err:%s", err)
- return
- }
- svc := cashcoupons.StockApiService{Client: client}
- resp, result, err := svc.PauseStock(ctx,
- cashcoupons.PauseStockRequest{
- StockId: core.String("实例值"),
- StockCreatorMchid: core.String("8965000"),
- },
- )
- if err != nil {
- // 处理错误
- log.Printf("call PauseStock err:%s", err)
- } else {
- // 处理返回结果
- log.Printf("status=%d resp=%s", result.Response.StatusCode, resp)
- }
- }
- func ExampleStockApiService_QueryStock() {
- var (
- mchID string = "190000****" // 商户号
- mchCertificateSerialNumber string = "3775************************************" // 商户证书序列号
- mchAPIv3Key string = "2ab9****************************" // 商户APIv3密钥
- )
- // 使用 utils 提供的函数从本地文件中加载商户私钥,商户私钥会用来生成请求的签名
- mchPrivateKey, err := utils.LoadPrivateKeyWithPath("/path/to/merchant/apiclient_key.pem")
- if err != nil {
- log.Printf("load merchant private key error:%s", err)
- return
- }
- ctx := context.Background()
- // 使用商户私钥等初始化 client,并使它具有自动定时获取微信支付平台证书的能力
- opts := []core.ClientOption{
- option.WithWechatPayAutoAuthCipher(mchID, mchCertificateSerialNumber, mchPrivateKey, mchAPIv3Key),
- }
- client, err := core.NewClient(ctx, opts...)
- if err != nil {
- log.Printf("new wechat pay client err:%s", err)
- return
- }
- svc := cashcoupons.StockApiService{Client: client}
- resp, result, err := svc.QueryStock(ctx,
- cashcoupons.QueryStockRequest{
- StockId: core.String("9856888"),
- StockCreatorMchid: core.String("123456"),
- },
- )
- if err != nil {
- // 处理错误
- log.Printf("call QueryStock err:%s", err)
- } else {
- // 处理返回结果
- log.Printf("status=%d resp=%s", result.Response.StatusCode, resp)
- }
- }
- func ExampleStockApiService_RefundFlow() {
- var (
- mchID string = "190000****" // 商户号
- mchCertificateSerialNumber string = "3775************************************" // 商户证书序列号
- mchAPIv3Key string = "2ab9****************************" // 商户APIv3密钥
- )
- // 使用 utils 提供的函数从本地文件中加载商户私钥,商户私钥会用来生成请求的签名
- mchPrivateKey, err := utils.LoadPrivateKeyWithPath("/path/to/merchant/apiclient_key.pem")
- if err != nil {
- log.Printf("load merchant private key error:%s", err)
- return
- }
- ctx := context.Background()
- // 使用商户私钥等初始化 client,并使它具有自动定时获取微信支付平台证书的能力
- opts := []core.ClientOption{
- option.WithWechatPayAutoAuthCipher(mchID, mchCertificateSerialNumber, mchPrivateKey, mchAPIv3Key),
- }
- client, err := core.NewClient(ctx, opts...)
- if err != nil {
- log.Printf("new wechat pay client err:%s", err)
- return
- }
- svc := cashcoupons.StockApiService{Client: client}
- resp, result, err := svc.RefundFlow(ctx,
- cashcoupons.RefundFlowRequest{
- StockId: core.String("9865000"),
- },
- )
- if err != nil {
- // 处理错误
- log.Printf("call RefundFlow err:%s", err)
- } else {
- // 处理返回结果
- log.Printf("status=%d resp=%s", result.Response.StatusCode, resp)
- }
- }
- func ExampleStockApiService_RestartStock() {
- var (
- mchID string = "190000****" // 商户号
- mchCertificateSerialNumber string = "3775************************************" // 商户证书序列号
- mchAPIv3Key string = "2ab9****************************" // 商户APIv3密钥
- )
- // 使用 utils 提供的函数从本地文件中加载商户私钥,商户私钥会用来生成请求的签名
- mchPrivateKey, err := utils.LoadPrivateKeyWithPath("/path/to/merchant/apiclient_key.pem")
- if err != nil {
- log.Printf("load merchant private key error:%s", err)
- return
- }
- ctx := context.Background()
- // 使用商户私钥等初始化 client,并使它具有自动定时获取微信支付平台证书的能力
- opts := []core.ClientOption{
- option.WithWechatPayAutoAuthCipher(mchID, mchCertificateSerialNumber, mchPrivateKey, mchAPIv3Key),
- }
- client, err := core.NewClient(ctx, opts...)
- if err != nil {
- log.Printf("new wechat pay client err:%s", err)
- return
- }
- svc := cashcoupons.StockApiService{Client: client}
- resp, result, err := svc.RestartStock(ctx,
- cashcoupons.RestartStockRequest{
- StockId: core.String("8965000"),
- StockCreatorMchid: core.String("9865000"),
- },
- )
- if err != nil {
- // 处理错误
- log.Printf("call RestartStock err:%s", err)
- } else {
- // 处理返回结果
- log.Printf("status=%d resp=%s", result.Response.StatusCode, resp)
- }
- }
- func ExampleStockApiService_StartStock() {
- var (
- mchID string = "190000****" // 商户号
- mchCertificateSerialNumber string = "3775************************************" // 商户证书序列号
- mchAPIv3Key string = "2ab9****************************" // 商户APIv3密钥
- )
- // 使用 utils 提供的函数从本地文件中加载商户私钥,商户私钥会用来生成请求的签名
- mchPrivateKey, err := utils.LoadPrivateKeyWithPath("/path/to/merchant/apiclient_key.pem")
- if err != nil {
- log.Printf("load merchant private key error:%s", err)
- return
- }
- ctx := context.Background()
- // 使用商户私钥等初始化 client,并使它具有自动定时获取微信支付平台证书的能力
- opts := []core.ClientOption{
- option.WithWechatPayAutoAuthCipher(mchID, mchCertificateSerialNumber, mchPrivateKey, mchAPIv3Key),
- }
- client, err := core.NewClient(ctx, opts...)
- if err != nil {
- log.Printf("new wechat pay client err:%s", err)
- return
- }
- svc := cashcoupons.StockApiService{Client: client}
- resp, result, err := svc.StartStock(ctx,
- cashcoupons.StartStockRequest{
- StockId: core.String("9856000"),
- StockCreatorMchid: core.String("8956000"),
- },
- )
- if err != nil {
- // 处理错误
- log.Printf("call StartStock err:%s", err)
- } else {
- // 处理返回结果
- log.Printf("status=%d resp=%s", result.Response.StatusCode, resp)
- }
- }
- func ExampleStockApiService_StopStock() {
- var (
- mchID string = "190000****" // 商户号
- mchCertificateSerialNumber string = "3775************************************" // 商户证书序列号
- mchAPIv3Key string = "2ab9****************************" // 商户APIv3密钥
- )
- // 使用 utils 提供的函数从本地文件中加载商户私钥,商户私钥会用来生成请求的签名
- mchPrivateKey, err := utils.LoadPrivateKeyWithPath("/path/to/merchant/apiclient_key.pem")
- if err != nil {
- log.Printf("load merchant private key error:%s", err)
- return
- }
- ctx := context.Background()
- // 使用商户私钥等初始化 client,并使它具有自动定时获取微信支付平台证书的能力
- opts := []core.ClientOption{
- option.WithWechatPayAutoAuthCipher(mchID, mchCertificateSerialNumber, mchPrivateKey, mchAPIv3Key),
- }
- client, err := core.NewClient(ctx, opts...)
- if err != nil {
- log.Printf("new wechat pay client err:%s", err)
- return
- }
- svc := cashcoupons.StockApiService{Client: client}
- resp, result, err := svc.StopStock(ctx,
- cashcoupons.StopStockRequest{
- StockId: core.String("8695000"),
- StockCreatorMchid: core.String("9865000"),
- },
- )
- if err != nil {
- // 处理错误
- log.Printf("call StopStock err:%s", err)
- } else {
- // 处理返回结果
- log.Printf("status=%d resp=%s", result.Response.StatusCode, resp)
- }
- }
- func ExampleStockApiService_UseFlow() {
- var (
- mchID string = "190000****" // 商户号
- mchCertificateSerialNumber string = "3775************************************" // 商户证书序列号
- mchAPIv3Key string = "2ab9****************************" // 商户APIv3密钥
- )
- // 使用 utils 提供的函数从本地文件中加载商户私钥,商户私钥会用来生成请求的签名
- mchPrivateKey, err := utils.LoadPrivateKeyWithPath("/path/to/merchant/apiclient_key.pem")
- if err != nil {
- log.Printf("load merchant private key error:%s", err)
- return
- }
- ctx := context.Background()
- // 使用商户私钥等初始化 client,并使它具有自动定时获取微信支付平台证书的能力
- opts := []core.ClientOption{
- option.WithWechatPayAutoAuthCipher(mchID, mchCertificateSerialNumber, mchPrivateKey, mchAPIv3Key),
- }
- client, err := core.NewClient(ctx, opts...)
- if err != nil {
- log.Printf("new wechat pay client err:%s", err)
- return
- }
- svc := cashcoupons.StockApiService{Client: client}
- resp, result, err := svc.UseFlow(ctx,
- cashcoupons.UseFlowRequest{
- StockId: core.String("9865000"),
- },
- )
- if err != nil {
- // 处理错误
- log.Printf("call UseFlow err:%s", err)
- } else {
- // 处理返回结果
- log.Printf("status=%d resp=%s", result.Response.StatusCode, resp)
- }
- }
|