From 567246f1cec72a18e98d47af10ee5f40019da96a Mon Sep 17 00:00:00 2001 From: Fang Date: Sat, 11 Jun 2022 22:19:08 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=95=86=E5=AE=B6=E5=88=B8=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E8=90=A5=E9=94=80=E8=A1=A5=E5=B7=AE=E4=BB=98=E6=AC=BE?= =?UTF-8?q?API?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wechat/enumeration/WechatPayV3Type.java | 6 +++++ .../v3/WechatMarketingBusiFavorApi.java | 26 ++++++++++++++++++- 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/enumeration/WechatPayV3Type.java b/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/enumeration/WechatPayV3Type.java index 2c48034..9ff15a4 100644 --- a/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/enumeration/WechatPayV3Type.java +++ b/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/enumeration/WechatPayV3Type.java @@ -444,6 +444,12 @@ public enum WechatPayV3Type { * @since 1.0.4.RELEASES */ MARKETING_BUSI_FAVOR_DEACTIVATE(HttpMethod.POST, "%s/v3/marketing/busifavor/coupons/deactivate"), + /** + * 营销补差付款API. + * + * @since 1.0.13.RELEASES + */ + MARKETING_BUSI_FAVOR_SUBSIDY(HttpMethod.POST, "%s/v3/marketing/busifavor/subsidy/pay-receipts"), //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /** * 发起批量转账API. diff --git a/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/WechatMarketingBusiFavorApi.java b/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/WechatMarketingBusiFavorApi.java index 0b04158..b7954c7 100644 --- a/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/WechatMarketingBusiFavorApi.java +++ b/payment-spring-boot-autoconfigure/src/main/java/cn/felord/payment/wechat/v3/WechatMarketingBusiFavorApi.java @@ -149,7 +149,7 @@ public class WechatMarketingBusiFavorApi extends AbstractApi { queryParams.add("stock_id", userBusiFavorQueryParams.getStockId()); Optional.ofNullable(userBusiFavorQueryParams.getCouponState()) - .ifPresent(state-> queryParams.add("coupon_state", state.name())); + .ifPresent(state -> queryParams.add("coupon_state", state.name())); queryParams.add("creator_merchant", userBusiFavorQueryParams.getCreatorMerchant()); queryParams.add("belong_merchant", userBusiFavorQueryParams.getBelongMerchant()); @@ -436,4 +436,28 @@ public class WechatMarketingBusiFavorApi extends AbstractApi { .request(); return wechatResponseEntity; } + + /** + * 营销补差付款API + *

+ * 该API主要用于商户营销补贴场景,支持基于单张券进行不同商户账户间的资金补差,从而提升财务结算、资金利用效率。具体可参考操作文档 + * + * @param params the params + * @return the wechat response entity + * @since 1.0.13.RELEASE + */ + public WechatResponseEntity payMakeup(BusiFavorSubsidyParams params) { + WechatResponseEntity wechatResponseEntity = new WechatResponseEntity<>(); + this.client().withType(WechatPayV3Type.MARKETING_BUSI_FAVOR_SUBSIDY, params) + .function((type, makeUpParams) -> { + URI uri = UriComponentsBuilder.fromHttpUrl(type.uri(WeChatServer.CHINA)) + .build() + .toUri(); + return Post(uri, makeUpParams); + }) + .consumer(wechatResponseEntity::convert) + .request(); + return wechatResponseEntity; + } + }