diff --git a/pay-java-ali/src/main/java/com/egzosn/pay/ali/api/AliPayService.java b/pay-java-ali/src/main/java/com/egzosn/pay/ali/api/AliPayService.java index 214cb33..2bd1594 100644 --- a/pay-java-ali/src/main/java/com/egzosn/pay/ali/api/AliPayService.java +++ b/pay-java-ali/src/main/java/com/egzosn/pay/ali/api/AliPayService.java @@ -65,9 +65,17 @@ public class AliPayService extends BasePayService { * * @return 请求地址 */ - public String getReqUrl() { + public String getReqUrl(TransactionType transactionType) { return payConfigStorage.isTest() ? DEV_REQ_URL : HTTPS_REQ_URL; } + /** + * 获取对应的请求地址 + * + * @return 请求地址 + */ + public String getReqUrl() { + return getReqUrl(null); + } public AliPayService(AliPayConfigStorage payConfigStorage, HttpConfigStorage configStorage) { @@ -79,10 +87,6 @@ public class AliPayService extends BasePayService { } - public String getHttpsVerifyUrl() { - return getReqUrl() + "?service=notify_verify"; - } - /** * 回调校验 * diff --git a/pay-java-common/src/main/java/com/egzosn/pay/common/api/BasePayService.java b/pay-java-common/src/main/java/com/egzosn/pay/common/api/BasePayService.java index a455d4c..a8894eb 100644 --- a/pay-java-common/src/main/java/com/egzosn/pay/common/api/BasePayService.java +++ b/pay-java-common/src/main/java/com/egzosn/pay/common/api/BasePayService.java @@ -122,6 +122,18 @@ public abstract class BasePayService implements Pay return SignUtils.valueOf(payConfigStorage.getSignType()).sign(content, payConfigStorage.getKeyPrivate(),characterEncoding); } + /** + * 页面转跳支付, 返回对应页面重定向信息 + * + * @param order 订单信息 + * @return 对应页面重定向信息 + */ + @Override + public String toPay(PayOrder order) { + Map orderInfo = orderInfo(order); + return buildRequest(orderInfo, MethodType.POST); + } + /** * 将请求参数或者请求流转化为 Map * diff --git a/pay-java-common/src/main/java/com/egzosn/pay/common/api/PayService.java b/pay-java-common/src/main/java/com/egzosn/pay/common/api/PayService.java index 1936364..c0eb4ef 100644 --- a/pay-java-common/src/main/java/com/egzosn/pay/common/api/PayService.java +++ b/pay-java-common/src/main/java/com/egzosn/pay/common/api/PayService.java @@ -87,6 +87,12 @@ public interface PayService { */ Map orderInfo(PayOrder order); + /** + * 页面转跳支付, 返回对应页面重定向信息 + * @param order 订单信息 + * @return 对应页面重定向信息 + */ + String toPay(PayOrder order); /** * 创建签名 * @@ -141,6 +147,8 @@ public interface PayService { */ String buildRequest(Map orderInfo, MethodType method); + + /** * 获取输出二维码,用户返回给支付端, * @@ -410,4 +418,11 @@ public interface PayService { */ void addPayMessageInterceptor(PayMessageInterceptor interceptor); + /** + * 获取支付请求地址 + * @param transactionType 交易类型 + * @return 请求地址 + */ + String getReqUrl(TransactionType transactionType); + } diff --git a/pay-java-common/src/main/java/com/egzosn/pay/common/bean/PayOrder.java b/pay-java-common/src/main/java/com/egzosn/pay/common/bean/PayOrder.java index 8e64f60..1dc0c46 100644 --- a/pay-java-common/src/main/java/com/egzosn/pay/common/bean/PayOrder.java +++ b/pay-java-common/src/main/java/com/egzosn/pay/common/bean/PayOrder.java @@ -29,6 +29,10 @@ public class PayOrder { * 价格 */ private BigDecimal price; + /** + * 支付平台订单号,交易号 + */ + private String tradeNo; /** * 商户订单号 */ @@ -122,24 +126,18 @@ public class PayOrder { } /** - * 获取商户订单号 - * @return 商户订单号 - * @see #getOutTradeNo() + * 支付平台订单号,交易号 + * @return 支付平台订单号,交易号 */ - @Deprecated public String getTradeNo() { - return outTradeNo; + return tradeNo; } - - /** - * - * @param tradeNo 商户订单号 - * @see #setOutTradeNo(String) + * 支付平台订单号,交易号 + * @param tradeNo 支付平台订单号,交易号 */ - @Deprecated public void setTradeNo(String tradeNo) { - this.outTradeNo = tradeNo; + this.tradeNo = tradeNo; } /** diff --git a/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/AliPayController.java b/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/AliPayController.java index 60bf23d..25ab40f 100644 --- a/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/AliPayController.java +++ b/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/AliPayController.java @@ -88,8 +88,10 @@ public class AliPayController { //WAP // PayOrder order = new PayOrder("订单title", "摘要", null == price ? new BigDecimal(0.01) : price, UUID.randomUUID().toString().replace("-", ""), AliTransactionType.WAP); - Map orderInfo = service.orderInfo(order); - return service.buildRequest(orderInfo, MethodType.POST); +// Map orderInfo = service.orderInfo(order); +// return service.buildRequest(orderInfo, MethodType.POST); + + return service.toPay(order); } diff --git a/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/PayController.java b/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/PayController.java index e7c2afa..f8ac067 100644 --- a/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/PayController.java +++ b/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/PayController.java @@ -5,7 +5,6 @@ package com.egzosn.pay.demo.controller; import com.alibaba.fastjson.JSONObject; import com.egzosn.pay.ali.api.AliPayService; import com.egzosn.pay.ali.bean.AliTransactionType; -import com.egzosn.pay.common.api.Callback; import com.egzosn.pay.common.api.PayConfigStorage; import com.egzosn.pay.common.api.PayMessageInterceptor; import com.egzosn.pay.common.api.PayService; @@ -18,16 +17,11 @@ import com.egzosn.pay.demo.entity.PayType; import com.egzosn.pay.demo.request.QueryOrder; import com.egzosn.pay.demo.service.ApyAccountService; import com.egzosn.pay.demo.service.PayResponse; -import com.egzosn.pay.payoneer.api.PayoneerPayService; import com.egzosn.pay.wx.bean.WxTransactionType; -import com.fasterxml.jackson.databind.ObjectMapper; -import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.servlet.ModelAndView; -import org.springframework.web.servlet.view.RedirectView; -import org.springframework.web.servlet.view.json.MappingJackson2JsonView; import javax.annotation.Resource; import javax.imageio.ImageIO; @@ -35,9 +29,7 @@ import javax.servlet.http.HttpServletRequest; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.math.BigDecimal; -import java.net.URLEncoder; import java.util.HashMap; -import java.util.LinkedHashMap; import java.util.Map; import java.util.UUID; @@ -58,13 +50,11 @@ public class PayController { private ApyAccountService service; @RequestMapping("/") - public ModelAndView index(){ + public ModelAndView index() { return new ModelAndView("/index.html"); } - - /** * 这里模拟账户信息增加 * @@ -89,11 +79,11 @@ public class PayController { * @param payId 账户id * @param transactionType 交易类型, 这个针对于每一个 支付类型的对应的几种交易方式 * @param bankType 针对刷卡支付,卡的类型,类型值 - * @param price 金额 + * @param price 金额 * @return 跳到支付页面 */ @RequestMapping(value = "toPay.html", produces = "text/html;charset=UTF-8") - public String toPay(HttpServletRequest request,Integer payId, String transactionType, String bankType, BigDecimal price) { + public String toPay(HttpServletRequest request, Integer payId, String transactionType, String bankType, BigDecimal price) { //获取对应的支付账户操作工具(可根据账户id) PayResponse payResponse = service.getPayResponse(payId); @@ -102,7 +92,7 @@ public class PayController { order.setSpbillCreateIp(request.getHeader("X-Real-IP")); StringBuffer requestURL = request.getRequestURL(); //设置网页地址 - order.setWapUrl(requestURL.substring(0, requestURL.indexOf("/") > 0 ? requestURL.indexOf("/") : requestURL.length() )); + order.setWapUrl(requestURL.substring(0, requestURL.indexOf("/") > 0 ? requestURL.indexOf("/") : requestURL.length())); //设置网页名称 order.setWapName("在线充值"); // ------ 微信H5使用---- @@ -124,6 +114,7 @@ public class PayController { /** * 跳到支付页面 * 针对实时支付,即时付款 + * * @return 跳到支付页面 */ @RequestMapping(value = "toWxPay.html", produces = "text/html;charset=UTF-8") @@ -131,29 +122,29 @@ public class PayController { //获取对应的支付账户操作工具(可根据账户id) PayResponse payResponse = service.getPayResponse(2); - PayOrder order = new PayOrder("订单title", "摘要", new BigDecimal(0.01) , UUID.randomUUID().toString().replace("-", ""), WxTransactionType.MWEB); + PayOrder order = new PayOrder("订单title", "摘要", new BigDecimal(0.01), UUID.randomUUID().toString().replace("-", ""), WxTransactionType.MWEB); order.setSpbillCreateIp(request.getHeader("X-Real-IP")); StringBuffer requestURL = request.getRequestURL(); //设置网页地址 - order.setWapUrl(requestURL.substring(0, requestURL.indexOf("/") > 0 ? requestURL.indexOf("/") : requestURL.length() )); + order.setWapUrl(requestURL.substring(0, requestURL.indexOf("/") > 0 ? requestURL.indexOf("/") : requestURL.length())); //设置网页名称 order.setWapName("在线充值"); - Map orderInfo = payResponse.getService().orderInfo(order); - return payResponse.getService().buildRequest(orderInfo, MethodType.POST); +// Map orderInfo = payResponse.getService().orderInfo(order); +// return payResponse.getService().buildRequest(orderInfo, MethodType.POST); + return payResponse.getService().toPay(order); } /** * 公众号支付 * - * - * @param payId 账户id + * @param payId 账户id * @param openid openid - * @param price 金额 + * @param price 金额 * @return 返回jsapi所需参数 */ - @RequestMapping(value = "jsapi" ) + @RequestMapping(value = "jsapi") public Map toPay(Integer payId, String openid, BigDecimal price) { //获取对应的支付账户操作工具(可根据账户id) PayResponse payResponse = service.getPayResponse(payId); @@ -164,16 +155,17 @@ public class PayController { Map orderInfo = payResponse.getService().orderInfo(order); orderInfo.put("code", 0); - return orderInfo; + return orderInfo; } /** * 刷卡付,pos主动扫码付款(条码付) + * * @param payId 账户id * @param transactionType 交易类型, 这个针对于每一个 支付类型的对应的几种交易方式 * @param authCode 授权码,条码等 - * @param price 金额 + * @param price 金额 * @return 支付结果 */ @RequestMapping(value = "microPay") @@ -200,9 +192,10 @@ public class PayController { /** * 获取二维码图像 * 二维码支付 + * * @param payId 账户id * @param transactionType 交易类型, 这个针对于每一个 支付类型的对应的几种交易方式 - * @param price 金额 + * @param price 金额 * @return 二维码图像 */ @RequestMapping(value = "toQrPay.jpg", produces = "image/jpeg;charset=UTF-8") @@ -211,30 +204,31 @@ public class PayController { PayResponse payResponse = service.getPayResponse(payId); ByteArrayOutputStream baos = new ByteArrayOutputStream(); - ImageIO.write(payResponse.getService().genQrPay(new PayOrder("订单title", "摘要", null == price ? new BigDecimal(0.01) : price, System.currentTimeMillis()+"", PayType.valueOf(payResponse.getStorage().getPayType()).getTransactionType(transactionType))), "JPEG", baos); + ImageIO.write(payResponse.getService().genQrPay(new PayOrder("订单title", "摘要", null == price ? new BigDecimal(0.01) : price, System.currentTimeMillis() + "", PayType.valueOf(payResponse.getStorage().getPayType()).getTransactionType(transactionType))), "JPEG", baos); return baos.toByteArray(); } /** * 获取一码付二维码图像 * 二维码支付 - * @param wxPayId 微信账户id - * @param aliPayId 支付宝id - * @param price 金额 + * + * @param wxPayId 微信账户id + * @param aliPayId 支付宝id + * @param price 金额 * @return 二维码图像 */ @RequestMapping(value = "toWxAliQrPay.jpg", produces = "image/jpeg;charset=UTF-8") - public byte[] toWxAliQrPay(Integer wxPayId,Integer aliPayId, BigDecimal price, HttpServletRequest request) throws IOException { + public byte[] toWxAliQrPay(Integer wxPayId, Integer aliPayId, BigDecimal price, HttpServletRequest request) throws IOException { //获取对应的支付账户操作工具(可根据账户id) ByteArrayOutputStream baos = new ByteArrayOutputStream(); //这里为需要生成二维码的地址 StringBuffer url = request.getRequestURL(); url = new StringBuffer(url.substring(0, url.lastIndexOf(request.getRequestURI()))); - url .append("/toWxAliPay.html?"); - if (null != wxPayId){ + url.append("/toWxAliPay.html?"); + if (null != wxPayId) { url.append("wxPayId=").append(wxPayId).append("&"); } - if (null != aliPayId){ + if (null != aliPayId) { url.append("aliPayId=").append(aliPayId).append("&"); } url.append("price=").append(price); @@ -244,40 +238,39 @@ public class PayController { } /** - * * 支付宝与微信平台的判断 并进行支付的转跳 - * @param wxPayId 微信账户id - * @param aliPayId 支付宝id - * @param price 金额 + * + * @param wxPayId 微信账户id + * @param aliPayId 支付宝id + * @param price 金额 * @return 支付宝与微信平台的判断 */ @RequestMapping(value = "toWxAliPay.html", produces = "text/html;charset=UTF-8") - public String toWxAliPay(Integer wxPayId,Integer aliPayId, BigDecimal price, HttpServletRequest request) throws IOException { + public String toWxAliPay(Integer wxPayId, Integer aliPayId, BigDecimal price, HttpServletRequest request) throws IOException { StringBuilder html = new StringBuilder(); //订单 PayOrder payOrder = new PayOrder("订单title", "摘要", null == price ? new BigDecimal(0.01) : price, System.currentTimeMillis() + ""); String ua = request.getHeader("user-agent"); - if(ua.contains("MicroMessenger")){ + if (ua.contains("MicroMessenger")) { payOrder.setTransactionType(WxTransactionType.NATIVE); PayService service = this.service.getPayResponse(wxPayId).getService(); - return String.format("",(String) service.orderInfo(payOrder).get("code_url")); + return String.format("", (String) service.orderInfo(payOrder).get("code_url")); } - if(ua.contains("AlipayClient")){ + if (ua.contains("AlipayClient")) { payOrder.setTransactionType(AliTransactionType.SWEEPPAY); - AliPayService service = (AliPayService)this.service.getPayResponse(aliPayId).getService(); + AliPayService service = (AliPayService) this.service.getPayResponse(aliPayId).getService(); JSONObject result = service.getHttpRequestTemplate().postForObject(service.getReqUrl() + "?" + UriVariables.getMapToParameters(service.orderInfo(payOrder)), null, JSONObject.class); - result = result.getJSONObject("alipay_trade_precreate_response"); + result = result.getJSONObject("alipay_trade_precreate_response"); return String.format("", result.getString("qr_code")); } - return String.format("", ua); + return String.format("", ua); } - /** * 获取支付预订单信息 * @@ -299,15 +292,12 @@ public class PayController { /** * 支付回调地址 方式一 - * + *

* 方式二,{@link #payBack(HttpServletRequest, Integer)} 是属于简化方式, 试用与简单的业务场景 * - * * @param request * @param payId * @return 支付是否成功 - * - * */ @RequestMapping(value = "payBackOne{payId}.json") public String payBackOne(HttpServletRequest request, @PathVariable Integer payId) throws IOException { @@ -333,22 +323,16 @@ public class PayController { } - - - /** * 支付回调地址 * 方式二 + * * @param request - * - * @return - * - * 拦截器相关增加, 详情查看{@link com.egzosn.pay.common.api.PayService#addPayMessageInterceptor(PayMessageInterceptor)} + * @return 拦截器相关增加, 详情查看{@link com.egzosn.pay.common.api.PayService#addPayMessageInterceptor(PayMessageInterceptor)} *

* 业务处理在对应的PayMessageHandler里面处理,在哪里设置PayMessageHandler,详情查看{@link com.egzosn.pay.common.api.PayService#setPayMessageHandler(com.egzosn.pay.common.api.PayMessageHandler)} - * + *

* 如果未设置 {@link com.egzosn.pay.common.api.PayMessageHandler} 那么会使用默认的 {@link com.egzosn.pay.common.api.DefaultPayMessageHandler} - * */ @RequestMapping(value = "payBack{payId}.json") public String payBack(HttpServletRequest request, @PathVariable Integer payId) throws IOException { @@ -402,7 +386,7 @@ public class PayController { * @return 返回支付方申请退款后的结果 */ @RequestMapping("refund") - public Map refund(Integer payId ,RefundOrder order) { + public Map refund(Integer payId, RefundOrder order) { PayResponse payResponse = service.getPayResponse(payId); // return payResponse.getService().refund(order.getTradeNo(), order.getOutTradeNo(), order.getRefundAmount(), order.getTotalAmount()); @@ -453,7 +437,6 @@ public class PayController { * 转账 * * @param order 转账订单 - * * @return 对应的转账结果 */ @RequestMapping("transfer") @@ -467,7 +450,6 @@ public class PayController { * * @param outNo 商户转账订单号 * @param tradeNo 支付平台转账订单号 - * * @return 对应的转账订单 */ @RequestMapping("transferQuery") diff --git a/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/PayPalPayController.java b/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/PayPalPayController.java index 929299e..0d4b366 100644 --- a/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/PayPalPayController.java +++ b/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/PayPalPayController.java @@ -71,15 +71,16 @@ public class PayPalPayController { //及时收款 PayOrder order = new PayOrder("订单title", "摘要", null == price ? new BigDecimal(0.01) : price, UUID.randomUUID().toString().replace("-", ""), PayPalTransactionType.sale); - Map orderInfo = service.orderInfo(order); +// Map orderInfo = service.orderInfo(order); +// return service.buildRequest(orderInfo, MethodType.POST); + + String toPayHtml = service.toPay(order); //某些支付下单时无法设置单号,通过下单后返回对应单号,如 paypal,友店。 String outTradeNo = order.getOutTradeNo(); - System.out.println("支付订单号:" + outTradeNo + " 这里可以进行回存"); - - return service.buildRequest(orderInfo, MethodType.POST); + return toPayHtml; } /** * 申请退款接口 diff --git a/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/UnionPayController.java b/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/UnionPayController.java index 5ab99de..e1955a8 100644 --- a/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/UnionPayController.java +++ b/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/UnionPayController.java @@ -101,8 +101,9 @@ public class UnionPayController { //企业网银支付(B2B支付) // PayOrder order = new PayOrder("订单title", "摘要", null == price ? new BigDecimal(0.01) : price, UUID.randomUUID().toString().replace("-", ""), UnionTransactionType.B2B); - Map orderInfo = service.orderInfo(order); - return service.buildRequest(orderInfo, MethodType.POST); +// Map orderInfo = service.orderInfo(order); +// return service.buildRequest(orderInfo, MethodType.POST); + return service.toPay(order); } /** diff --git a/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/WxPayController.java b/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/WxPayController.java index 7541917..c50cd70 100644 --- a/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/WxPayController.java +++ b/pay-java-demo/src/main/java/com/egzosn/pay/demo/controller/WxPayController.java @@ -115,8 +115,9 @@ public class WxPayController { //设置网页名称 order.setWapName("在线充值"); - Map orderInfo = service.orderInfo(order); - return service.buildRequest(orderInfo, MethodType.POST); +// Map orderInfo = service.orderInfo(order); +// return service.buildRequest(orderInfo, MethodType.POST); + return service.toPay(order); } /** diff --git a/pay-java-fuiou/src/main/java/com/egzosn/pay/fuiou/api/FuiouPayService.java b/pay-java-fuiou/src/main/java/com/egzosn/pay/fuiou/api/FuiouPayService.java index a04c6cd..f71f3e0 100644 --- a/pay-java-fuiou/src/main/java/com/egzosn/pay/fuiou/api/FuiouPayService.java +++ b/pay-java-fuiou/src/main/java/com/egzosn/pay/fuiou/api/FuiouPayService.java @@ -26,11 +26,11 @@ public class FuiouPayService extends BasePayService { /** * 正式域名 */ - public static final String URL_FuiouBaseDomain = "https://pay.fuiou.com/"; + public static final String URL_FUIOU_BASE_DOMAIN = "https://pay.fuiou.com/"; /** * 测试域名 */ - public static final String DEV_URL_FUIOUBASEDOMAIN = "http://www-1.fuiou.com:8888/wg1_run/"; + public static final String DEV_URL_FUIOU_BASE_DOMAIN = "http://www-1.fuiou.com:8888/wg1_run/"; /** * B2C/B2B支付 @@ -58,12 +58,19 @@ public class FuiouPayService extends BasePayService { public static final String URL_NewSmpRefundGate = "newSmpRefundGate.do"; + /** + * 获取对应的请求地址 + * @return 请求地址 + */ + public String getReqUrl(TransactionType transactionType){ + return payConfigStorage.isTest() ? DEV_URL_FUIOU_BASE_DOMAIN : URL_FUIOU_BASE_DOMAIN; + } /** * 获取对应的请求地址 * @return 请求地址 */ public String getReqUrl(){ - return payConfigStorage.isTest() ? DEV_URL_FUIOUBASEDOMAIN : URL_FuiouBaseDomain; + return getReqUrl(null); } /** diff --git a/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayService.java b/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayService.java index eb55f27..f98211d 100644 --- a/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayService.java +++ b/pay-java-wx/src/main/java/com/egzosn/pay/wx/api/WxPayService.java @@ -97,7 +97,7 @@ public class WxPayService extends BasePayService { * * @return 请求url */ - private String getUrl(TransactionType transactionType) { + public String getReqUrl(TransactionType transactionType) { return URI + (payConfigStorage.isTest() ? SANDBOXNEW : "") + transactionType.getMethod(); } @@ -215,7 +215,7 @@ public class WxPayService extends BasePayService { LOG.debug("requestXML:" + requestXML); } //调起支付的参数列表 - JSONObject result = requestTemplate.postForObject(getUrl(order.getTransactionType()), requestXML, JSONObject.class); + JSONObject result = requestTemplate.postForObject(getReqUrl(order.getTransactionType()), requestXML, JSONObject.class); if (!SUCCESS.equals(result.get(RETURN_CODE))) { throw new PayErrorException(new WxPayError(result.getString(RETURN_CODE), result.getString(RETURN_MSG_CODE), result.toJSONString())); @@ -477,7 +477,7 @@ public class WxPayService extends BasePayService { //设置签名 setSign(parameters); - return requestTemplate.postForObject(getUrl(WxTransactionType.REFUND), XML.getMap2Xml(parameters), JSONObject.class); + return requestTemplate.postForObject(getReqUrl(WxTransactionType.REFUND), XML.getMap2Xml(parameters), JSONObject.class); } @@ -512,7 +512,7 @@ public class WxPayService extends BasePayService { setParameters(parameters, "out_refund_no", refundOrder.getRefundNo()); //设置签名 setSign(parameters); - return requestTemplate.postForObject(getUrl( WxTransactionType.REFUNDQUERY), XML.getMap2Xml(parameters) , JSONObject.class); + return requestTemplate.postForObject(getReqUrl( WxTransactionType.REFUNDQUERY), XML.getMap2Xml(parameters) , JSONObject.class); } @@ -536,7 +536,7 @@ public class WxPayService extends BasePayService { //设置签名 setSign(parameters); - String respStr = requestTemplate.postForObject(getUrl(WxTransactionType.DOWNLOADBILL), XML.getMap2Xml(parameters), String.class); + String respStr = requestTemplate.postForObject(getReqUrl(WxTransactionType.DOWNLOADBILL), XML.getMap2Xml(parameters), String.class); if (respStr.indexOf("<") == 0) { return XML.toJSONObject(respStr); } @@ -583,7 +583,7 @@ public class WxPayService extends BasePayService { } //设置签名 setSign(parameters); - return requestTemplate.postForObject(getUrl(transactionType), XML.getMap2Xml(parameters) , JSONObject.class); + return requestTemplate.postForObject(getReqUrl(transactionType), XML.getMap2Xml(parameters) , JSONObject.class); } /** @@ -623,7 +623,7 @@ public class WxPayService extends BasePayService { } parameters.put(SIGN, createSign(SignUtils.parameterText(parameters, "&", SIGN), payConfigStorage.getInputCharset())); - return getHttpRequestTemplate().postForObject(getUrl(order.getTransferType()), XML.getMap2Xml(parameters), JSONObject.class); + return getHttpRequestTemplate().postForObject(getReqUrl(order.getTransferType()), XML.getMap2Xml(parameters), JSONObject.class); } /** @@ -690,10 +690,10 @@ public class WxPayService extends BasePayService { } //如果类型为余额方式 if (TRANSFERS.getType().equals(wxTransferType) || GETTRANSFERINFO.getType().equals(wxTransferType)){ - return getHttpRequestTemplate().postForObject(getUrl(GETTRANSFERINFO), XML.getMap2Xml(parameters), JSONObject.class); + return getHttpRequestTemplate().postForObject(getReqUrl(GETTRANSFERINFO), XML.getMap2Xml(parameters), JSONObject.class); } //默认查询银行卡的记录 - return getHttpRequestTemplate().postForObject(getUrl(QUERY_BANK), XML.getMap2Xml(parameters), JSONObject.class); + return getHttpRequestTemplate().postForObject(getReqUrl(QUERY_BANK), XML.getMap2Xml(parameters), JSONObject.class); } diff --git a/pom.xml b/pom.xml index 643fa99..adb1c25 100644 --- a/pom.xml +++ b/pom.xml @@ -52,6 +52,7 @@ pay-java-payoneer pay-java-paypal pay-java-demo + pay-java-yiji