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; + } + }