From 88abacb7cc8aa4bec5dbb3aeb5b623d55ac789d3 Mon Sep 17 00:00:00 2001 From: xiafang Date: Tue, 24 Nov 2020 16:52:54 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=89=B9=E6=AC=A1=E8=AF=A6?= =?UTF-8?q?=E6=83=85API?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wechat/enumeration/WechatPayV3Type.java | 18 +++++++++++------- .../payment/wechat/v3/WechatPayV3Api.java | 17 ++++++++++++++++- .../wechat/v3/model/FixedNormalCoupon.java | 14 +++++++++++++- .../payment/wechat/v3/model/PatternInfo.java | 2 ++ .../wechat/v3/model/StocksCreateParams.java | 14 ++++++++------ 5 files changed, 50 insertions(+), 15 deletions(-) diff --git a/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/enumeration/WechatPayV3Type.java b/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/enumeration/WechatPayV3Type.java index 54c05b2..ad16990 100644 --- a/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/enumeration/WechatPayV3Type.java +++ b/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/enumeration/WechatPayV3Type.java @@ -15,22 +15,22 @@ public enum WechatPayV3Type { CERT(HttpMethod.GET, "%s/v3/certificates"), /** - * 微信公众号支付或者小程序支付 + * 微信公众号支付或者小程序支付. */ JSAPI(HttpMethod.POST, "%s/v3/pay/transactions/jsapi"), /** - * 微信扫码支付 + * 微信扫码支付. */ NATIVE(HttpMethod.POST, "%s/v3/pay/transactions/native"), /** - * 微信APP支付 + * 微信APP支付. */ APP(HttpMethod.POST, "%s/v3/pay/transactions/app"), /** - * H5支付 + * H5支付. */ MWEB(HttpMethod.POST, "%s/v3/pay/transactions/h5"), @@ -40,7 +40,7 @@ public enum WechatPayV3Type { */ MARKETING_FAVOR_STOCKS_COUPON_STOCKS(HttpMethod.POST,"%s/v3/marketing/favor/coupon-stocks"), /** - * 激活代金券批次API + * 激活代金券批次API. */ MARKETING_FAVOR_STOCKS_START(HttpMethod.POST,"%s/v3/marketing/favor/stocks/{stock_id}/start"), /** @@ -48,13 +48,17 @@ public enum WechatPayV3Type { */ MARKETING_FAVOR_USERS_COUPONS(HttpMethod.POST,"%s/v3/marketing/favor/users/{openid}/coupons"), /** - * 查询代金券可用商户 + * 查询代金券可用商户. */ MARKETING_FAVOR_STOCKS_MERCHANTS(HttpMethod.GET, "%s/v3/marketing/favor/stocks/{stock_id}/merchants"), /** * 条件查询批次列表API. */ - MARKETING_FAVOR_STOCKS(HttpMethod.GET, "%s/v3/marketing/favor/stocks"); + MARKETING_FAVOR_STOCKS(HttpMethod.GET, "%s/v3/marketing/favor/stocks"), + /** + * 查询批次详情API. + */ + MARKETING_FAVOR_STOCKS_DETAIL(HttpMethod.GET, "%s/v3/marketing/favor/stocks/{stock_id}"); diff --git a/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/WechatPayV3Api.java b/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/WechatPayV3Api.java index 5d49e2e..8172dc2 100644 --- a/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/WechatPayV3Api.java +++ b/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/WechatPayV3Api.java @@ -94,7 +94,7 @@ public class WechatPayV3Api { * @param stockId the stock id * @return the wechat response entity */ - public WechatResponseEntity startStocks(String stockId) { + public WechatResponseEntity startStock(String stockId) { WechatResponseEntity wechatResponseEntity = new WechatResponseEntity<>(); wechatPayV3Client.withType(WechatPayV3Type.MARKETING_FAVOR_STOCKS_START, stockId) .function(this::startStocksFunction) @@ -103,6 +103,21 @@ public class WechatPayV3Api { return wechatResponseEntity; } + /** + * 查询批次详情API. + * + * @param stockId the stock id + * @return the wechat response entity + */ + public WechatResponseEntity stockDetail(String stockId) { + WechatResponseEntity wechatResponseEntity = new WechatResponseEntity<>(); + wechatPayV3Client.withType(WechatPayV3Type.MARKETING_FAVOR_STOCKS_DETAIL, stockId) + .function(this::startStocksFunction) + .consumer(wechatResponseEntity::convert) + .request(); + return wechatResponseEntity; + } + private RequestEntity startStocksFunction(WechatPayV3Type type, String stockId) { WechatPayProperties.V3 v3 = wechatMetaBean.getWechatPayProperties().getV3(); diff --git a/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/model/FixedNormalCoupon.java b/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/model/FixedNormalCoupon.java index 1a79147..9899a24 100644 --- a/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/model/FixedNormalCoupon.java +++ b/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/model/FixedNormalCoupon.java @@ -3,11 +3,23 @@ package com.enongm.dianji.payment.wechat.v3.model; import lombok.Data; + +/** + * 固定面额满减券使用规则, stock_type为NORMAL时必填 + * + * 满transactionMinimum 减少 couponAmount + * + */ @Data public class FixedNormalCoupon { - + /** + * 面额,单位分 + */ private Long couponAmount; + /** + * 门槛 满M元可用 + */ private Long transactionMinimum; } diff --git a/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/model/PatternInfo.java b/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/model/PatternInfo.java index cfe13b7..7c4f274 100644 --- a/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/model/PatternInfo.java +++ b/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/model/PatternInfo.java @@ -2,6 +2,7 @@ package com.enongm.dianji.payment.wechat.v3.model; import com.enongm.dianji.payment.wechat.enumeration.CouponBgColor; +import lombok.Data; /** * 优惠券样式 @@ -9,6 +10,7 @@ import com.enongm.dianji.payment.wechat.enumeration.CouponBgColor; * @author Dax * @since 15:09 */ +@Data public class PatternInfo { /** * 背景色 diff --git a/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/model/StocksCreateParams.java b/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/model/StocksCreateParams.java index 95b4641..0ed0015 100644 --- a/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/model/StocksCreateParams.java +++ b/payment-spring-boot-autoconfigure/src/main/java/com/enongm/dianji/payment/wechat/v3/model/StocksCreateParams.java @@ -2,8 +2,6 @@ package com.enongm.dianji.payment.wechat.v3.model; import lombok.Data; -import java.time.LocalDateTime; - /** * 创建优惠券批次参数. * @@ -25,13 +23,13 @@ public class StocksCreateParams { */ private String belongMerchant; /** - * 批次开始时间 + * 批次开始时间 rfc 3339 YYYY-MM-DDTHH:mm:ss.sss+TIMEZONE */ - private LocalDateTime availableBeginTime; + private String availableBeginTime; /** - * 批次结束时间 + * 批次结束时间 rfc 3339 YYYY-MM-DDTHH:mm:ss.sss+TIMEZONE */ - private LocalDateTime availableEndTime; + private String availableEndTime; /** * 是否无资金流 */ @@ -56,5 +54,9 @@ public class StocksCreateParams { * 核销规则 */ private CouponUseRule couponUseRule; + /** + * 代金券样式 + */ + private PatternInfo patternInfo; }