cn.felord.payment.wechat.v3

## 类 WechatMarketingFavorApi

- java.lang.Object
- - cn.felord.payment.wechat.v3.AbstractApi
  - - cn.felord.payment.wechat.v3.WechatMarketingFavorApi

-     public class WechatMarketingFavorApi
      extends AbstractApi

  微信支付营销代金券API
  从以下版本开始:
    1.0.0.RELEASE
  作者:
    felord.cn

- - ### 构造器概要

    构造器
    构造器和说明
    `WechatMarketingFavorApi(WechatPayClient wechatPayClient, String tenantId)` Instantiates a new Wechat marketing favor api.

  - ### 方法概要

    所有方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `private org.springframework.http.RequestEntity<?>` | `couponDetailFunction(WechatPayV3Type type, CouponDetailsQueryParams params)` Coupon detail function request entity.
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `createStock(StocksCreateParams params)` 创建代金券批次API 通过调用此接口可创建代金券批次，包括 预充值 和 免充值 类型。
    `private org.springframework.http.RequestEntity<?>` | `createStocksFunction(WechatPayV3Type type, StocksCreateParams params)` Create stocks function request entity.
    `private org.springframework.http.RequestEntity<?>` | `downloadFlowFunction(WechatPayV3Type type, String stockId)` Download flow function request entity.
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `downloadStockRefundFlow(String stockId)` 下载批次退款明细API 数据结果包含在响应体的 csv 字段中 可获取到某批次的退款明细数据，包括订单号、单品信息、银行流水号等，用于对账/数据分析。
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `downloadStockUseFlow(String stockId)` 下载批次核销明细API 数据结果包含在响应体的 csv 字段中 可获取到某批次的核销明细数据，包括订单号、单品信息、银行流水号等，用于对账/数据分析。
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `marketingImageUpload(org.springframework.web.multipart.MultipartFile file)` 营销图片上传API 媒体图片只支持JPG、BMP、PNG格式，文件大小不能超过2M。
    `private org.springframework.http.RequestEntity<?>` | `marketingImageUploadFunction(WechatPayV3Type type, org.springframework.web.multipart.MultipartFile file)` Marketing image upload function request entity.
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `pauseStock(String stockId)` 暂停代金券批次API 通过此接口可暂停指定代金券批次。
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `queryCouponDetails(CouponDetailsQueryParams params)` 查询代金券详情API 通过此接口可查询代金券信息，包括代金券的基础信息、状态。
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `queryMerchantsByStockId(MchQueryParams params)` 查询代金券可用商户API 通过调用此接口可查询批次的可用商户号，判断券是否在某商户号可用，来决定是否展示。
    `private org.springframework.http.RequestEntity<?>` | `queryMerchantsByStockIdFunction(WechatPayV3Type type, MchQueryParams params)` Query stocks function request entity.
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `queryStockDetail(String stockId)` 查询批次详情API 通过此接口可查询批次信息，包括批次的配置信息以及批次概况数据。
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `queryStockItems(MchQueryParams params)` 查询代金券可用单品API 通过此接口可查询批次的可用商品编码，判断券是否可用于某些商品，来决定是否展示。
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `queryStocksByMch(StocksQueryParams params)` 条件查询批次列表API 通过此接口可查询多个批次的信息，包括批次的配置信息以及批次概况数据。
    `private org.springframework.http.RequestEntity<?>` | `queryStocksByMchFunction(WechatPayV3Type type, StocksQueryParams params)` Query stocks function request entity.
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `queryUserCouponsByMchId(UserCouponsQueryParams params)` 根据商户号查用户的券API 可通过该接口查询用户在某商户号可用的全部券，可用于商户的小程序/H5中，用户"我的代金券"或"提交订单页"展示优惠信息。
    `private org.springframework.http.RequestEntity<?>` | `queryUserCouponsFunction(WechatPayV3Type type, UserCouponsQueryParams params)` Query user coupons function request entity.
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `restartStock(String stockId)` 重启代金券批次API 通过此接口可重启指定代金券批次。
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `sendCouponsCard(CouponsCardSendParams params)` 发放消费卡API 商户通过调用本接口向用户发放消费卡，用户领到卡的同时会领取到一批代金券，消费卡会自动放入卡包中。
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `sendStock(StocksSendParams params)` 发放代金券API 商户侧开发时建议增加发放流水记录。
    `private org.springframework.http.RequestEntity<?>` | `sendStocksFunction(WechatPayV3Type type, StocksSendParams params)` Send stocks function request entity.
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `setMarketingFavorCallback(String notifyUrl)` 代金券核销回调通知API。
    `private org.springframework.http.RequestEntity<?>` | `setMarketingFavorCallbackFunction(WechatPayV3Type type, String notifyUrl)` Sets marketing favor callback function.
    `private org.springframework.http.RequestEntity<?>` | `startAndRestartAndPauseStockFunction(WechatPayV3Type type, String stockId)` Start and restart and pause stock function request entity.
    `WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode>` | `startStock(String stockId)` 激活代金券批次API 制券成功后，通过调用此接口激活批次，如果是预充值代金券，激活时会从商户账户余额中锁定本批次的营销资金。
    `private org.springframework.http.RequestEntity<?>` | `stockDetailFunction(WechatPayV3Type type, String stockId)` Stock detail function request entity.

    - ### 从类继承的方法 cn.felord.payment.wechat.v3.AbstractApi

      `billDownload, billResource, client, container, downloadFundFlowBill, downloadTradeBill, Get, getMapper, Post, tenantId, wechatMetaBean`

    - ### 从类继承的方法 java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### 构造器详细资料

    - #### WechatMarketingFavorApi

          public WechatMarketingFavorApi(WechatPayClient wechatPayClient,
                                         String tenantId)

      Instantiates a new Wechat marketing favor api.
      参数:
        `wechatPayClient` - the wechat pay client
        `tenantId` - the tenant id

  - ### 方法详细资料

    - #### createStock

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> createStock(StocksCreateParams params)

      创建代金券批次API

      通过调用此接口可创建代金券批次，包括 预充值 和 免充值 类型。

      参数:
        `params` - the params
      返回:
        the wechat response entity

    - #### createStocksFunction

          private org.springframework.http.RequestEntity<?> createStocksFunction(WechatPayV3Type type,
                                                                                 StocksCreateParams params)

      Create stocks function request entity.
      参数:
        `type` - the type
        `params` - the params
      返回:
        the request entity

    - #### startStock

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> startStock(String stockId)

      激活代金券批次API

      制券成功后，通过调用此接口激活批次，如果是预充值代金券，激活时会从商户账户余额中锁定本批次的营销资金。

      参数:
        `stockId` - the stock id
      返回:
        the wechat response entity

    - #### sendStock

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> sendStock(StocksSendParams params)

      发放代金券API

      商户侧开发时建议增加发放流水记录。

      微信支付文档所要求的微信公众号服务号不是必须的，只要你有一个绑定了微信支付商户平台和开放平台的appid即可。

      流程为： 1. appid 请求授权微信登录。 2. 登录成功后，开发者在商户侧保存用户 对应此appid的openid。 3. 通过 appid - openid 进行发券。

      商户平台/API完成制券后，可使用发放代金券接口发券。通过调用此接口可发放指定批次给指定用户，发券场景可以是小程序、H5、APP等。

      注意： • 商户可在H5活动页面、商户小程序、商户APP等自有场景内调用该接口完成发券，商户默认只允许发放本商户号（调用发券接口的商户号）创建的代金券，如需发放其他商户商户创建的代金券，请参考常见问题Q1。

      参数:
        `params` - the params
      返回:
        the wechat response entity

    - #### sendStocksFunction

          private org.springframework.http.RequestEntity<?> sendStocksFunction(WechatPayV3Type type,
                                                                               StocksSendParams params)

      Send stocks function request entity.
      参数:
        `type` - the type
        `params` - the params
      返回:
        the request entity

    - #### pauseStock

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> pauseStock(String stockId)

      暂停代金券批次API

      通过此接口可暂停指定代金券批次。暂停后，该代金券批次暂停发放，用户无法通过任何渠道再领取该批次的券。

      参数:
        `stockId` - the stock id
      返回:
        the wechat response entity

    - #### restartStock

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> restartStock(String stockId)

      重启代金券批次API

      通过此接口可重启指定代金券批次。重启后，该代金券批次可以再次发放。

      参数:
        `stockId` - the stock id
      返回:
        the wechat response entity

    - #### startAndRestartAndPauseStockFunction

          private org.springframework.http.RequestEntity<?> startAndRestartAndPauseStockFunction(WechatPayV3Type type,
                                                                                                 String stockId)

      Start and restart and pause stock function request entity.
      参数:
        `type` - the type
        `stockId` - the stock id
      返回:
        the request entity

    - #### queryStocksByMch

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> queryStocksByMch(StocksQueryParams params)

      条件查询批次列表API

      通过此接口可查询多个批次的信息，包括批次的配置信息以及批次概况数据。

      参数:
        `params` - the params
      返回:
        the wechat response entity

    - #### queryStocksByMchFunction

          private org.springframework.http.RequestEntity<?> queryStocksByMchFunction(WechatPayV3Type type,
                                                                                     StocksQueryParams params)

      Query stocks function request entity.
      参数:
        `type` - the type
        `params` - the params
      返回:
        the request entity

    - #### queryStockDetail

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> queryStockDetail(String stockId)

      查询批次详情API

      通过此接口可查询批次信息，包括批次的配置信息以及批次概况数据。

      参数:
        `stockId` - the stock id
      返回:
        the wechat response entity

    - #### stockDetailFunction

          private org.springframework.http.RequestEntity<?> stockDetailFunction(WechatPayV3Type type,
                                                                                String stockId)

      Stock detail function request entity.
      参数:
        `type` - the type
        `stockId` - the stock id
      返回:
        the request entity

    - #### queryCouponDetails

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> queryCouponDetails(CouponDetailsQueryParams params)

      查询代金券详情API

      通过此接口可查询代金券信息，包括代金券的基础信息、状态。如代金券已核销，会包括代金券核销的订单信息（订单号、单品信息等）。

      2021-1 微信侧不再返回`consume_information`字段

      参数:
        `params` - the params
      返回:
        the wechat response entity

    - #### couponDetailFunction

          private org.springframework.http.RequestEntity<?> couponDetailFunction(WechatPayV3Type type,
                                                                                 CouponDetailsQueryParams params)

      Coupon detail function request entity.
      参数:
        `type` - the type
        `params` - the params
      返回:
        the request entity

    - #### queryMerchantsByStockId

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> queryMerchantsByStockId(MchQueryParams params)

      查询代金券可用商户API

      通过调用此接口可查询批次的可用商户号，判断券是否在某商户号可用，来决定是否展示。

      参数:
        `params` - the params
      返回:
        the wechat response entity

    - #### queryMerchantsByStockIdFunction

          private org.springframework.http.RequestEntity<?> queryMerchantsByStockIdFunction(WechatPayV3Type type,
                                                                                            MchQueryParams params)

      Query stocks function request entity.
      参数:
        `type` - the type
        `params` - the params
      返回:
        the request entity

    - #### queryStockItems

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> queryStockItems(MchQueryParams params)

      查询代金券可用单品API

      通过此接口可查询批次的可用商品编码，判断券是否可用于某些商品，来决定是否展示。

      参数:
        `params` - the params
      返回:
        the wechat response entity

    - #### queryUserCouponsByMchId

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> queryUserCouponsByMchId(UserCouponsQueryParams params)

      根据商户号查用户的券API

      可通过该接口查询用户在某商户号可用的全部券，可用于商户的小程序/H5中，用户"我的代金券"或"提交订单页"展示优惠信息。无法查询到微信支付立减金。本接口查不到用户的微信支付立减金（又称“全平台通用券”），即在所有商户都可以使用的券，例如：摇摇乐红包；当按可用商户号查询时，无法查询用户已经核销的券

      参数:
        `params` - the params
      返回:
        the wechat response entity

    - #### queryUserCouponsFunction

          private org.springframework.http.RequestEntity<?> queryUserCouponsFunction(WechatPayV3Type type,
                                                                                     UserCouponsQueryParams params)

      Query user coupons function request entity.
      参数:
        `type` - the type
        `params` - the params
      返回:
        the request entity

    - #### downloadStockUseFlow

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> downloadStockUseFlow(String stockId)

      下载批次核销明细API

      数据结果包含在响应体的 csv 字段中

      可获取到某批次的核销明细数据，包括订单号、单品信息、银行流水号等，用于对账/数据分析。

      参数:
        `stockId` - the stock id
      返回:
        the wechat response entity
      另请参阅:
        `AbstractApi#billDownload(String)对账单下载api`

    - #### downloadStockRefundFlow

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> downloadStockRefundFlow(String stockId)

      下载批次退款明细API

      数据结果包含在响应体的 csv 字段中

      可获取到某批次的退款明细数据，包括订单号、单品信息、银行流水号等，用于对账/数据分析。

      参数:
        `stockId` - the stock id
      返回:
        the wechat response entity
      另请参阅:
        `AbstractApi#billDownload(String)对账单下载api`

    - #### downloadFlowFunction

          private org.springframework.http.RequestEntity<?> downloadFlowFunction(WechatPayV3Type type,
                                                                                 String stockId)

      Download flow function request entity.
      参数:
        `type` - the type
        `stockId` - the stock id
      返回:
        the request entity

    - #### marketingImageUpload

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> marketingImageUpload(org.springframework.web.multipart.MultipartFile file)

      营销图片上传API

      媒体图片只支持JPG、BMP、PNG格式，文件大小不能超过2M。

      通过本接口上传图片后可获得图片url地址。图片url可在微信支付营销相关的API使用，包括商家券、代金券、支付有礼等。

      参数:
        `file` - the file
      返回:
        the wechat response entity

    - #### marketingImageUploadFunction

          private org.springframework.http.RequestEntity<?> marketingImageUploadFunction(WechatPayV3Type type,
                                                                                         org.springframework.web.multipart.MultipartFile file)

      Marketing image upload function request entity.
      参数:
        `type` - the type
        `file` - the file
      返回:
        the request entity

    - #### setMarketingFavorCallback

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> setMarketingFavorCallback(String notifyUrl)

      代金券核销回调通知API。

      设置核销回调通知的`notifyUrl`,`notifyUrl`需要设置应用白名单。开发者应该对代金券的核销结果进行流水记录。

      参数:
        `notifyUrl` - the notify url
      返回:
        the wechat response entity
      另请参阅:
        `WechatPayCallback#couponCallback(ResponseSignVerifyParams, Consumer)核销回调`

    - #### setMarketingFavorCallbackFunction

          private org.springframework.http.RequestEntity<?> setMarketingFavorCallbackFunction(WechatPayV3Type type,
                                                                                              String notifyUrl)

      Sets marketing favor callback function.
      参数:
        `type` - the type
        `notifyUrl` - the notify url
      返回:
        the marketing favor callback function

    - #### sendCouponsCard

          public WechatResponseEntity<com.fasterxml.jackson.databind.node.ObjectNode> sendCouponsCard(CouponsCardSendParams params)

      发放消费卡API

      商户通过调用本接口向用户发放消费卡，用户领到卡的同时会领取到一批代金券，消费卡会自动放入卡包中。

      注意：

      - 调用该接口前，需要在微信支付商户平台创建“消费卡”，获得card_id。
      - 此功能仅向指定邀约商户开放，如有需要请联系微信支付运营经理。
      参数:
        `params` - the params
      返回:
        wechat response entity

Copyright © 2021. All rights reserved.