cn.felord.payment.wechat.v3

## 类 AbstractApi

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

- 直接已知子类:
    WechatBatchTransferApi, WechatCombinePayApi, WechatDirectPayApi, WechatDiscountCardApi, WechatMarketingBusiFavorApi, WechatMarketingFavorApi, WechatPartnerPayApi, WechatPartnerProfitsharingApi, WechatPayScoreApi, WechatPayScoreParkingApi, WechatProfitsharingApi

      public abstract class AbstractApi
      extends Object

  The type Abstract api.
  从以下版本开始:
    1.0.0.RELEASE
  作者:
    felord.cn

- - ### 字段概要

    字段
    限定符和类型 | 字段和说明
    --- | ---
    `private com.fasterxml.jackson.databind.ObjectMapper` | `mapper` The Mapper.
    `private String` | `tenantId` The Tenant id.
    `private WechatPayClient` | `wechatPayClient` The Wechat pay client.

  - ### 构造器概要

    构造器
    构造器和说明
    `AbstractApi(WechatPayClient wechatPayClient, String tenantId)` Instantiates a new Abstract api.

  - ### 方法概要

    所有方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `private void` | `applyObjectMapper(com.fasterxml.jackson.databind.ObjectMapper mapper)` Apply object mapper.
    `protected String` | `billCsvDownload(String link)` 对账单CSV内容下载，非流文件。
    `protected org.springframework.http.ResponseEntity<org.springframework.core.io.Resource>` | `billResource(String link)` 调用`/v3/billdownload/file`下载返回的原始文件流
    `WechatPayClient` | `client()` Client wechat pay client.
    `WechatMetaContainer` | `container()` Container wechat meta container.
    `org.springframework.http.ResponseEntity<org.springframework.core.io.Resource>` | `downloadBillResponse(String downloadUrl, String filename)` 调用`/v3/billdownload/file`直接下载为文件.
    `org.springframework.http.ResponseEntity<org.springframework.core.io.Resource>` | `downloadFundFlowBill(FundFlowBillParams fundFlowBillParams)` 申请资金账单API 微信支付按天提供微信支付账户的资金流水账单文件，商户可以通过该接口获取账单文件的下载地址。
    `org.springframework.http.ResponseEntity<org.springframework.core.io.Resource>` | `downloadTradeBill(TradeBillParams tradeBillParams)` 申请交易账单API 返回值直接返回前端，会下载tradebill-前缀加上日期的txt文件（默认）或者gzip文件。
    `protected org.springframework.http.RequestEntity<?>` | `Get(URI uri)` 构建Get请求对象.
    `protected org.springframework.http.RequestEntity<?>` | `Get(URI uri, org.springframework.http.HttpHeaders httpHeaders)` 构建Get请求对象.
    `com.fasterxml.jackson.databind.ObjectMapper` | `getMapper()` Gets mapper.
    `protected org.springframework.http.RequestEntity<?>` | `Patch(URI uri, Object params)` 构建Post请求对象.
    `protected org.springframework.http.RequestEntity<?>` | `Post(URI uri, Object params)` 构建Post请求对象.
    `protected org.springframework.http.RequestEntity<?>` | `Post(URI uri, Object params, org.springframework.http.HttpHeaders httpHeaders)` 构建Post请求对象.
    `String` | `tenantId()` Tenant id string.
    `WechatMetaBean` | `wechatMetaBean()` Wechat meta bean wechat meta bean.

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

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

- - ### 字段详细资料

    - #### mapper

          private final com.fasterxml.jackson.databind.ObjectMapper mapper

      The Mapper.

    - #### wechatPayClient

          private final WechatPayClient wechatPayClient

      The Wechat pay client.

    - #### tenantId

          private final String tenantId

      The Tenant id.

  - ### 构造器详细资料

    - #### AbstractApi

          public AbstractApi(WechatPayClient wechatPayClient,
                             String tenantId)

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

  - ### 方法详细资料

    - #### applyObjectMapper

          private void applyObjectMapper(com.fasterxml.jackson.databind.ObjectMapper mapper)

      Apply object mapper.
      参数:
        `mapper` - the mapper

    - #### getMapper

          public com.fasterxml.jackson.databind.ObjectMapper getMapper()

      Gets mapper.
      返回:
        the mapper

    - #### client

          public WechatPayClient client()

      Client wechat pay client.
      返回:
        the wechat pay client

    - #### tenantId

          public String tenantId()

      Tenant id string.
      返回:
        the string

    - #### container

          public WechatMetaContainer container()

      Container wechat meta container.
      返回:
        the wechat meta container

    - #### wechatMetaBean

          public WechatMetaBean wechatMetaBean()

      Wechat meta bean wechat meta bean.
      返回:
        the wechat meta bean

    - #### Post

          protected org.springframework.http.RequestEntity<?> Post(URI uri,
                                                                   Object params)

      构建Post请求对象.
      参数:
        `uri` - the uri
        `params` - the params
      返回:
        the request entity

    - #### Post

          protected org.springframework.http.RequestEntity<?> Post(URI uri,
                                                                   Object params,
                                                                   org.springframework.http.HttpHeaders httpHeaders)

      构建Post请求对象.
      参数:
        `uri` - the uri
        `params` - the params
        `httpHeaders` - the http headers
      返回:
        request entity

    - #### Get

          protected org.springframework.http.RequestEntity<?> Get(URI uri)

      构建Get请求对象.
      参数:
        `uri` - the uri
      返回:
        the request entity

    - #### Get

          protected org.springframework.http.RequestEntity<?> Get(URI uri,
                                                                  org.springframework.http.HttpHeaders httpHeaders)

      构建Get请求对象.
      参数:
        `uri` - the uri
        `httpHeaders` - the http headers
      返回:
        the request entity

    - #### Patch

          protected org.springframework.http.RequestEntity<?> Patch(URI uri,
                                                                    Object params)

      构建Post请求对象.
      参数:
        `uri` - the uri
        `params` - the params
      返回:
        the request entity

    - #### billCsvDownload

          protected String billCsvDownload(String link)

      对账单CSV内容下载，非流文件。
      参数:
        `link` - the link
      返回:
        对账单内容 ，有可能为空字符 “”
      另请参阅:
        `AbstractApi#billResource(String)AbstractApi#billResource(String)AbstractApi#billResource(String)`

    - #### downloadTradeBill

          public org.springframework.http.ResponseEntity<org.springframework.core.io.Resource> downloadTradeBill(TradeBillParams tradeBillParams)

      申请交易账单API

      返回值直接返回前端，会下载tradebill-前缀加上日期的txt文件（默认）或者gzip文件。

      微信支付按天提供交易账单文件，商户可以通过该接口获取账单文件的下载地址。文件内包含交易相关的金额、时间、营销等信息，供商户核对订单、退款、银行到账等情况。

      注意：

      - 微信侧未成功下单的交易不会出现在对账单中。支付成功后撤销的交易会出现在对账单中，跟原支付单订单号一致；
      - 对账单中涉及金额的字段单位为“元”；
      - 对账单接口只能下载三个月以内的账单。
      - 小微商户不单独提供对账单下载，如有需要，可在调取“下载对账单”API接口时不传sub_mch_id，获取服务商下全量电商二级商户（包括小微商户和非小微商户）的对账单。
      参数:
        `tradeBillParams` - tradeBillParams
      返回:
        the response entity
      从以下版本开始:
        1.0.3.RELEASE

    - #### downloadFundFlowBill

          public org.springframework.http.ResponseEntity<org.springframework.core.io.Resource> downloadFundFlowBill(FundFlowBillParams fundFlowBillParams)

      申请资金账单API

      微信支付按天提供微信支付账户的资金流水账单文件，商户可以通过该接口获取账单文件的下载地址。文件内包含该账户资金操作相关的业务单号、收支金额、记账时间等信息，供商户进行核对。

      注意：

      - 资金账单中的数据反映的是商户微信支付账户资金变动情况；
      - 对账单中涉及金额的字段单位为“元”。
      参数:
        `fundFlowBillParams` - fundFlowBillParams
      返回:
        the response entity
      从以下版本开始:
        1.0.3.RELEASE

    - #### downloadBillResponse

          public org.springframework.http.ResponseEntity<org.springframework.core.io.Resource> downloadBillResponse(String downloadUrl,
                                                                                                                    String filename)

      调用`/v3/billdownload/file`直接下载为文件.
      参数:
        `downloadUrl` - 格式为 `https://api.mch.weixin.qq.com/v3/billdownload/file?token=xxx`
        `filename` - 文件名称包含扩展名
      返回:
        the response entity

    - #### billResource

          protected org.springframework.http.ResponseEntity<org.springframework.core.io.Resource> billResource(String link)

      调用`/v3/billdownload/file`下载返回的原始文件流
      参数:
        `link` - the link
      返回:
        response entity

Copyright © 2022. All rights reserved.