diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/APPPayRequest.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/APPPayRequest.java
index 7efb1a6a..69a8d174 100644
--- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/APPPayRequest.java
+++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/APPPayRequest.java
@@ -2,6 +2,7 @@ package com.foxinmy.weixin4j.payment.mch;
import com.foxinmy.weixin4j.model.WeixinPayAccount;
import com.foxinmy.weixin4j.payment.PayRequest;
+import com.foxinmy.weixin4j.type.TradeType;
import com.foxinmy.weixin4j.util.DigestUtil;
import com.foxinmy.weixin4j.util.MapUtil;
@@ -23,6 +24,11 @@ public class APPPayRequest extends AbstractPayRequest {
super(prePayId, payAccount);
}
+ @Override
+ public TradeType getTradeType() {
+ return TradeType.APP;
+ }
+
/**
* 只做查看之用,请不要尝试作为支付请求
*/
diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/JSAPIPayRequest.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/JSAPIPayRequest.java
index 62655b66..c570d17b 100644
--- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/JSAPIPayRequest.java
+++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/JSAPIPayRequest.java
@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSON;
import com.foxinmy.weixin4j.model.WeixinPayAccount;
import com.foxinmy.weixin4j.payment.PayRequest;
import com.foxinmy.weixin4j.type.SignType;
+import com.foxinmy.weixin4j.type.TradeType;
import com.foxinmy.weixin4j.util.DigestUtil;
/**
@@ -28,6 +29,11 @@ public class JSAPIPayRequest extends AbstractPayRequest {
public JSAPIPayRequest(String prePayId, WeixinPayAccount payAccount) {
super(prePayId, payAccount);
}
+
+ @Override
+ public TradeType getTradeType() {
+ return TradeType.JSAPI;
+ }
@Override
public PayRequest toRequestObject() {
diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/MchPayRequest.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/MchPayRequest.java
index 2d0240ff..385911a9 100644
--- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/MchPayRequest.java
+++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/MchPayRequest.java
@@ -2,6 +2,7 @@ package com.foxinmy.weixin4j.payment.mch;
import com.foxinmy.weixin4j.model.WeixinPayAccount;
import com.foxinmy.weixin4j.payment.PayRequest;
+import com.foxinmy.weixin4j.type.TradeType;
/**
* 支付请求接口
@@ -9,7 +10,7 @@ import com.foxinmy.weixin4j.payment.PayRequest;
* @className MchPayRequest
* @author jy
* @date 2015年12月25日
- * @since JDK 1.7
+ * @since JDK 1.6
* @see JSAPIPayRequest JS支付
* @see NATIVEPayRequest 扫码支付
* @see APPPayRequest APP支付
@@ -30,6 +31,13 @@ public interface MchPayRequest {
*/
public WeixinPayAccount getPayAccount();
+ /**
+ * 交易类型
+ *
+ * @return
+ */
+ public TradeType getTradeType();
+
/**
* 支付请求字符串
*
diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/NATIVEPayRequest.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/NATIVEPayRequest.java
index 38180120..54b992a7 100644
--- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/NATIVEPayRequest.java
+++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/NATIVEPayRequest.java
@@ -2,6 +2,7 @@ package com.foxinmy.weixin4j.payment.mch;
import com.foxinmy.weixin4j.model.WeixinPayAccount;
import com.foxinmy.weixin4j.payment.PayRequest;
+import com.foxinmy.weixin4j.type.TradeType;
/**
* NATIVE扫码支付(模式二)
@@ -25,6 +26,11 @@ public class NATIVEPayRequest extends AbstractPayRequest {
this.codeUrl = codeUrl;
}
+ @Override
+ public TradeType getTradeType() {
+ return TradeType.NATIVE;
+ }
+
/**
* 只做查看之用,请不要尝试作为支付请求
*/
diff --git a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/WAPPayRequest.java b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/WAPPayRequest.java
index 99b9538b..1a7514fe 100644
--- a/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/WAPPayRequest.java
+++ b/weixin4j-base/src/main/java/com/foxinmy/weixin4j/payment/mch/WAPPayRequest.java
@@ -4,6 +4,7 @@ import com.foxinmy.weixin4j.model.Consts;
import com.foxinmy.weixin4j.model.WeixinPayAccount;
import com.foxinmy.weixin4j.payment.PayRequest;
import com.foxinmy.weixin4j.payment.PayURLConsts;
+import com.foxinmy.weixin4j.type.TradeType;
import com.foxinmy.weixin4j.util.DigestUtil;
import com.foxinmy.weixin4j.util.MapUtil;
import com.foxinmy.weixin4j.util.URLEncodingUtil;
@@ -26,12 +27,18 @@ public class WAPPayRequest extends AbstractPayRequest {
super(prePayId, payAccount);
}
+ @Override
+ public TradeType getTradeType() {
+ return TradeType.WAP;
+ }
+
/**
* 只做查看之用,请不要尝试作为支付请求
*/
@Override
public PayRequest toRequestObject() {
- PayRequest payRequest = new PayRequest(getPayAccount().getId(), "WAP");
+ PayRequest payRequest = new PayRequest(getPayAccount().getId(),
+ getTradeType().name());
payRequest.setPrepayId(getPrePayId());
return payRequest;
}