Commit 252369f9 authored by terrfly's avatar terrfly
Browse files

支付网关支持商户应用配置项的下单操作;

parent bc3a2fa5
......@@ -20,7 +20,7 @@ import com.github.binarywang.wxpay.exception.WxPayException;
import com.jeequan.jeepay.core.constants.CS;
import com.jeequan.jeepay.core.model.params.wxpay.WxpayIsvsubMchParams;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import org.apache.commons.lang3.StringUtils;
/*
......@@ -33,14 +33,14 @@ import org.apache.commons.lang3.StringUtils;
public class WxpayKit {
/** 放置 isv特殊信息 **/
public static void putApiIsvInfo(MchConfigContext mchConfigContext, BaseWxPayRequest req){
public static void putApiIsvInfo(MchAppConfigContext mchAppConfigContext, BaseWxPayRequest req){
//不是特约商户, 无需放置此值
if(!mchConfigContext.isIsvsubMch()){
if(!mchAppConfigContext.isIsvsubMch()){
return ;
}
WxpayIsvsubMchParams isvsubMchParams = mchConfigContext.getIsvsubMchParamsByIfCode(CS.IF_CODE.WXPAY, WxpayIsvsubMchParams.class);
WxpayIsvsubMchParams isvsubMchParams = mchAppConfigContext.getIsvsubMchParamsByIfCode(CS.IF_CODE.WXPAY, WxpayIsvsubMchParams.class);
req.setSubMchId(isvsubMchParams.getSubMchId());
req.setSubAppId(isvsubMchParams.getSubMchAppId());
}
......
......@@ -30,7 +30,7 @@ import com.jeequan.jeepay.pay.rqrs.payorder.UnifiedOrderRQ;
import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxAppOrderRS;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.util.ApiResBuilder;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import org.springframework.stereotype.Service;
/*
......@@ -49,9 +49,9 @@ public class WxApp extends WxpayPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) throws Exception{
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) throws Exception{
WxPayUnifiedOrderRequest req = buildUnifiedOrderRequest(payOrder, mchConfigContext);
WxPayUnifiedOrderRequest req = buildUnifiedOrderRequest(payOrder, mchAppConfigContext);
req.setTradeType(WxPayConstants.TradeType.APP);
// 构造函数响应数据
......@@ -62,7 +62,7 @@ public class WxApp extends WxpayPaymentService {
// 调起上游接口:
// 1. 如果抛异常,则订单状态为: 生成状态,此时没有查单处理操作。 订单将超时关闭
// 2. 接口调用成功, 后续异常需进行捕捉, 如果 逻辑代码出现异常则需要走完正常流程,此时订单状态为: 支付中, 需要查单处理。
WxPayService wxPayService = mchConfigContext.getWxServiceWrapper().getWxPayService();
WxPayService wxPayService = mchAppConfigContext.getWxServiceWrapper().getWxPayService();
try {
WxPayAppOrderResult payResult = wxPayService.createOrder(req);
JSONObject resJSON = (JSONObject) JSON.toJSON(payResult);
......
......@@ -30,7 +30,7 @@ import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxBarOrderRQ;
import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxBarOrderRS;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.util.ApiResBuilder;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
......@@ -56,7 +56,7 @@ public class WxBar extends WxpayPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) throws Exception{
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) throws Exception{
WxBarOrderRQ bizRQ = (WxBarOrderRQ) rq;
......@@ -71,7 +71,7 @@ public class WxBar extends WxpayPaymentService {
request.setAuthCode(bizRQ.getAuthCode());
//放置isv信息
WxpayKit.putApiIsvInfo(mchConfigContext, request);
WxpayKit.putApiIsvInfo(mchAppConfigContext, request);
// 构造函数响应数据
WxBarOrderRS res = ApiResBuilder.buildSuccess(WxBarOrderRS.class);
......@@ -81,7 +81,7 @@ public class WxBar extends WxpayPaymentService {
// 调起上游接口:
// 1. 如果抛异常,则订单状态为: 生成状态,此时没有查单处理操作。 订单将超时关闭
// 2. 接口调用成功, 后续异常需进行捕捉, 如果 逻辑代码出现异常则需要走完正常流程,此时订单状态为: 支付中, 需要查单处理。
WxPayService wxPayService = mchConfigContext.getWxServiceWrapper().getWxPayService();
WxPayService wxPayService = mchAppConfigContext.getWxServiceWrapper().getWxPayService();
try {
WxPayMicropayResult wxPayMicropayResult = wxPayService.micropay(request);
......
......@@ -30,7 +30,7 @@ import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxH5OrderRQ;
import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxH5OrderRS;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.util.ApiResBuilder;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import org.springframework.stereotype.Service;
/*
......@@ -49,11 +49,11 @@ public class WxH5 extends WxpayPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) {
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) {
WxH5OrderRQ bizRQ = (WxH5OrderRQ) rq;
WxPayUnifiedOrderRequest req = buildUnifiedOrderRequest(payOrder, mchConfigContext);
WxPayUnifiedOrderRequest req = buildUnifiedOrderRequest(payOrder, mchAppConfigContext);
req.setTradeType(WxPayConstants.TradeType.MWEB);
// 构造函数响应数据
......@@ -64,7 +64,7 @@ public class WxH5 extends WxpayPaymentService {
// 调起上游接口:
// 1. 如果抛异常,则订单状态为: 生成状态,此时没有查单处理操作。 订单将超时关闭
// 2. 接口调用成功, 后续异常需进行捕捉, 如果 逻辑代码出现异常则需要走完正常流程,此时订单状态为: 支付中, 需要查单处理。
WxPayService wxPayService = mchConfigContext.getWxServiceWrapper().getWxPayService();
WxPayService wxPayService = mchAppConfigContext.getWxServiceWrapper().getWxPayService();
try {
WxPayMwebOrderResult wxPayMwebOrderResult = wxPayService.createOrder(req);
......
......@@ -32,7 +32,7 @@ import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxJsapiOrderRQ;
import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxJsapiOrderRS;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.util.ApiResBuilder;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
......@@ -60,11 +60,11 @@ public class WxJsapi extends WxpayPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) throws Exception{
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) throws Exception{
WxJsapiOrderRQ bizRQ = (WxJsapiOrderRQ) rq;
WxPayUnifiedOrderRequest req = buildUnifiedOrderRequest(payOrder, mchConfigContext);
WxPayUnifiedOrderRequest req = buildUnifiedOrderRequest(payOrder, mchAppConfigContext);
req.setTradeType(WxPayConstants.TradeType.JSAPI);
req.setOpenid(bizRQ.getOpenid());
......@@ -76,7 +76,7 @@ public class WxJsapi extends WxpayPaymentService {
// 调起上游接口:
// 1. 如果抛异常,则订单状态为: 生成状态,此时没有查单处理操作。 订单将超时关闭
// 2. 接口调用成功, 后续异常需进行捕捉, 如果 逻辑代码出现异常则需要走完正常流程,此时订单状态为: 支付中, 需要查单处理。
WxPayService wxPayService = mchConfigContext.getWxServiceWrapper().getWxPayService();
WxPayService wxPayService = mchAppConfigContext.getWxServiceWrapper().getWxPayService();
try {
WxPayMpOrderResult payResult = wxPayService.createOrder(req);
JSONObject resJSON = (JSONObject) JSON.toJSON(payResult);
......
......@@ -32,7 +32,7 @@ import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxJsapiOrderRQ;
import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxJsapiOrderRS;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.util.ApiResBuilder;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
......@@ -58,11 +58,11 @@ public class WxLite extends WxpayPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) throws Exception{
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) throws Exception{
WxJsapiOrderRQ bizRQ = (WxJsapiOrderRQ) rq;
WxPayUnifiedOrderRequest req = buildUnifiedOrderRequest(payOrder, mchConfigContext);
WxPayUnifiedOrderRequest req = buildUnifiedOrderRequest(payOrder, mchAppConfigContext);
req.setTradeType(WxPayConstants.TradeType.JSAPI);
req.setOpenid(bizRQ.getOpenid());
......@@ -74,7 +74,7 @@ public class WxLite extends WxpayPaymentService {
// 调起上游接口:
// 1. 如果抛异常,则订单状态为: 生成状态,此时没有查单处理操作。 订单将超时关闭
// 2. 接口调用成功, 后续异常需进行捕捉, 如果 逻辑代码出现异常则需要走完正常流程,此时订单状态为: 支付中, 需要查单处理。
WxPayService wxPayService = mchConfigContext.getWxServiceWrapper().getWxPayService();
WxPayService wxPayService = mchAppConfigContext.getWxServiceWrapper().getWxPayService();
try {
WxPayMpOrderResult payResult = wxPayService.createOrder(req);
JSONObject resJSON = (JSONObject) JSON.toJSON(payResult);
......
......@@ -30,7 +30,7 @@ import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxNativeOrderRQ;
import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxNativeOrderRS;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.util.ApiResBuilder;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import org.springframework.stereotype.Service;
/*
......@@ -50,11 +50,11 @@ public class WxNative extends WxpayPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) throws Exception{
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) throws Exception{
WxNativeOrderRQ bizRQ = (WxNativeOrderRQ) rq;
WxPayUnifiedOrderRequest req = buildUnifiedOrderRequest(payOrder, mchConfigContext);
WxPayUnifiedOrderRequest req = buildUnifiedOrderRequest(payOrder, mchAppConfigContext);
req.setTradeType(WxPayConstants.TradeType.NATIVE);
// 构造函数响应数据
......@@ -65,7 +65,7 @@ public class WxNative extends WxpayPaymentService {
// 调起上游接口:
// 1. 如果抛异常,则订单状态为: 生成状态,此时没有查单处理操作。 订单将超时关闭
// 2. 接口调用成功, 后续异常需进行捕捉, 如果 逻辑代码出现异常则需要走完正常流程,此时订单状态为: 支付中, 需要查单处理。
WxPayService wxPayService = mchConfigContext.getWxServiceWrapper().getWxPayService();
WxPayService wxPayService = mchAppConfigContext.getWxServiceWrapper().getWxPayService();
try {
WxPayNativeOrderResult wxPayNativeOrderResult = wxPayService.createOrder(req);
......
......@@ -28,7 +28,7 @@ import com.jeequan.jeepay.pay.rqrs.payorder.UnifiedOrderRQ;
import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxAppOrderRS;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.util.ApiResBuilder;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import org.springframework.stereotype.Service;
/*
......@@ -47,15 +47,15 @@ public class WxApp extends WxpayPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) {
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) {
WxPayService wxPayService = mchConfigContext.getWxServiceWrapper().getWxPayService();
WxPayService wxPayService = mchAppConfigContext.getWxServiceWrapper().getWxPayService();
// 构造请求数据
JSONObject reqJSON = buildV3OrderRequest(payOrder, mchConfigContext);
JSONObject reqJSON = buildV3OrderRequest(payOrder, mchAppConfigContext);
String reqUrl; // 请求地址
if(mchConfigContext.isIsvsubMch()){ // 特约商户
if(mchAppConfigContext.isIsvsubMch()){ // 特约商户
reqUrl = WxpayV3Util.ISV_URL_MAP.get(WxPayConstants.TradeType.APP);
}else {
reqUrl = WxpayV3Util.NORMALMCH_URL_MAP.get(WxPayConstants.TradeType.APP);
......
......@@ -18,7 +18,7 @@ package com.jeequan.jeepay.pay.channel.wxpay.paywayV3;
import com.jeequan.jeepay.core.entity.PayOrder;
import com.jeequan.jeepay.pay.channel.wxpay.WxpayPaymentService;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import com.jeequan.jeepay.pay.rqrs.AbstractRS;
import com.jeequan.jeepay.pay.rqrs.payorder.UnifiedOrderRQ;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -43,7 +43,7 @@ public class WxBar extends WxpayPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) throws Exception {
return wxBar.pay(rq, payOrder, mchConfigContext);
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) throws Exception {
return wxBar.pay(rq, payOrder, mchAppConfigContext);
}
}
......@@ -30,7 +30,7 @@ import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxH5OrderRQ;
import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxH5OrderRS;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.util.ApiResBuilder;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import org.springframework.stereotype.Service;
/*
......@@ -49,14 +49,14 @@ public class WxH5 extends WxpayPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) {
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) {
WxH5OrderRQ bizRQ = (WxH5OrderRQ) rq;
WxPayService wxPayService = mchConfigContext.getWxServiceWrapper().getWxPayService();
WxPayService wxPayService = mchAppConfigContext.getWxServiceWrapper().getWxPayService();
// 构造请求数据
JSONObject reqJSON = buildV3OrderRequest(payOrder, mchConfigContext);
JSONObject reqJSON = buildV3OrderRequest(payOrder, mchAppConfigContext);
JSONObject sceneInfo = reqJSON.getJSONObject("scene_info");
......@@ -67,7 +67,7 @@ public class WxH5 extends WxpayPaymentService {
reqJSON.put("scene_info", sceneInfo);
String reqUrl; // 请求地址
if(mchConfigContext.isIsvsubMch()){ // 特约商户
if(mchAppConfigContext.isIsvsubMch()){ // 特约商户
reqUrl = WxpayV3Util.ISV_URL_MAP.get(WxPayConstants.TradeType.MWEB);
}else {
reqUrl = WxpayV3Util.NORMALMCH_URL_MAP.get(WxPayConstants.TradeType.MWEB);
......
......@@ -29,7 +29,7 @@ import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxJsapiOrderRQ;
import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxJsapiOrderRS;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.util.ApiResBuilder;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import org.springframework.stereotype.Service;
/*
......@@ -49,16 +49,16 @@ public class WxJsapi extends WxpayPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) throws Exception{
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) throws Exception{
WxJsapiOrderRQ bizRQ = (WxJsapiOrderRQ) rq;
WxPayService wxPayService = mchConfigContext.getWxServiceWrapper().getWxPayService();
WxPayService wxPayService = mchAppConfigContext.getWxServiceWrapper().getWxPayService();
// 构造请求数据
JSONObject reqJSON = buildV3OrderRequest(payOrder, mchConfigContext);
JSONObject reqJSON = buildV3OrderRequest(payOrder, mchAppConfigContext);
String reqUrl; // 请求地址
if(mchConfigContext.isIsvsubMch()){ // 特约商户
if(mchAppConfigContext.isIsvsubMch()){ // 特约商户
reqUrl = WxpayV3Util.ISV_URL_MAP.get(WxPayConstants.TradeType.JSAPI);
JSONObject payer = new JSONObject();
......
......@@ -29,7 +29,7 @@ import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxJsapiOrderRQ;
import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxJsapiOrderRS;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.util.ApiResBuilder;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import org.springframework.stereotype.Service;
/*
......@@ -49,16 +49,16 @@ public class WxLite extends WxpayPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) throws Exception{
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) throws Exception{
WxJsapiOrderRQ bizRQ = (WxJsapiOrderRQ) rq;
WxPayService wxPayService = mchConfigContext.getWxServiceWrapper().getWxPayService();
WxPayService wxPayService = mchAppConfigContext.getWxServiceWrapper().getWxPayService();
// 构造请求数据
JSONObject reqJSON = buildV3OrderRequest(payOrder, mchConfigContext);
JSONObject reqJSON = buildV3OrderRequest(payOrder, mchAppConfigContext);
String reqUrl; // 请求地址
if(mchConfigContext.isIsvsubMch()){ // 特约商户
if(mchAppConfigContext.isIsvsubMch()){ // 特约商户
reqUrl = WxpayV3Util.ISV_URL_MAP.get(WxPayConstants.TradeType.JSAPI);
JSONObject payer = new JSONObject();
......
......@@ -24,7 +24,7 @@ import com.jeequan.jeepay.core.entity.PayOrder;
import com.jeequan.jeepay.pay.channel.wxpay.WxpayPaymentService;
import com.jeequan.jeepay.pay.channel.wxpay.kits.WxpayKit;
import com.jeequan.jeepay.pay.channel.wxpay.kits.WxpayV3Util;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import com.jeequan.jeepay.pay.rqrs.AbstractRS;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.rqrs.payorder.UnifiedOrderRQ;
......@@ -49,17 +49,17 @@ public class WxNative extends WxpayPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) {
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) {
WxNativeOrderRQ bizRQ = (WxNativeOrderRQ) rq;
WxPayService wxPayService = mchConfigContext.getWxServiceWrapper().getWxPayService();
WxPayService wxPayService = mchAppConfigContext.getWxServiceWrapper().getWxPayService();
// 构造请求数据
JSONObject reqJSON = buildV3OrderRequest(payOrder, mchConfigContext);
JSONObject reqJSON = buildV3OrderRequest(payOrder, mchAppConfigContext);
String reqUrl; // 请求地址
if(mchConfigContext.isIsvsubMch()){ // 特约商户
if(mchAppConfigContext.isIsvsubMch()){ // 特约商户
reqUrl = WxpayV3Util.ISV_URL_MAP.get(WxPayConstants.TradeType.NATIVE);
}else {
reqUrl = WxpayV3Util.NORMALMCH_URL_MAP.get(WxPayConstants.TradeType.NATIVE);
......
......@@ -24,7 +24,7 @@ import com.jeequan.jeepay.pay.channel.AbstractChannelNoticeService;
import com.jeequan.jeepay.pay.channel.ysfpay.utils.YsfSignUtils;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.model.IsvConfigContext;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.apache.commons.lang3.tuple.MutablePair;
......@@ -65,7 +65,7 @@ public class YsfpayChannelNoticeService extends AbstractChannelNoticeService {
}
@Override
public ChannelRetMsg doNotice(HttpServletRequest request, Object params, PayOrder payOrder, MchConfigContext mchConfigContext, NoticeTypeEnum noticeTypeEnum) {
public ChannelRetMsg doNotice(HttpServletRequest request, Object params, PayOrder payOrder, MchAppConfigContext mchAppConfigContext, NoticeTypeEnum noticeTypeEnum) {
try {
ChannelRetMsg result = ChannelRetMsg.confirmSuccess(null);
......@@ -77,7 +77,7 @@ public class YsfpayChannelNoticeService extends AbstractChannelNoticeService {
log.info("{} 回调参数, jsonParams:{}", logPrefix, jsonParams);
// 校验支付回调
boolean verifyResult = verifyParams(jsonParams, payOrder, mchConfigContext.getIsvConfigContext());
boolean verifyResult = verifyParams(jsonParams, payOrder, mchAppConfigContext.getIsvConfigContext());
// 验证参数失败
if(!verifyResult){
throw ResponseException.buildText("ERROR");
......
......@@ -21,7 +21,7 @@ import com.jeequan.jeepay.core.entity.PayOrder;
import com.jeequan.jeepay.pay.channel.IPayOrderQueryService;
import com.jeequan.jeepay.pay.channel.ysfpay.utils.YsfHttpUtil;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
......@@ -46,7 +46,7 @@ public class YsfpayPayOrderQueryService implements IPayOrderQueryService {
private YsfpayPaymentService ysfpayPaymentService;
@Override
public ChannelRetMsg query(PayOrder payOrder, MchConfigContext mchConfigContext) throws Exception {
public ChannelRetMsg query(PayOrder payOrder, MchAppConfigContext mchAppConfigContext) throws Exception {
JSONObject reqParams = new JSONObject();
String orderType = YsfHttpUtil.getOrderTypeByCommon(payOrder.getWayCode());
String logPrefix = "【云闪付("+orderType+")查单】";
......@@ -56,7 +56,7 @@ public class YsfpayPayOrderQueryService implements IPayOrderQueryService {
reqParams.put("orderType", orderType); //订单类型
//封装公共参数 & 签名 & 调起http请求 & 返回响应数据并包装为json格式。
JSONObject resJSON = ysfpayPaymentService.packageParamAndReq("/gateway/api/pay/queryOrder", reqParams, logPrefix, mchConfigContext.getIsvConfigContext(), mchConfigContext);
JSONObject resJSON = ysfpayPaymentService.packageParamAndReq("/gateway/api/pay/queryOrder", reqParams, logPrefix, mchAppConfigContext.getIsvConfigContext(), mchAppConfigContext);
log.info("查询订单 payorderId:{}, 返回结果:{}", payOrder.getPayOrderId(), resJSON);
if(resJSON == null){
return ChannelRetMsg.waiting(); //支付中
......
......@@ -29,7 +29,7 @@ import com.jeequan.jeepay.pay.channel.ysfpay.utils.YsfHttpUtil;
import com.jeequan.jeepay.pay.channel.ysfpay.utils.YsfSignUtils;
import com.jeequan.jeepay.pay.config.SystemYmlConfig;
import com.jeequan.jeepay.pay.model.IsvConfigContext;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import com.jeequan.jeepay.pay.rqrs.AbstractRS;
import com.jeequan.jeepay.pay.rqrs.payorder.UnifiedOrderRQ;
import com.jeequan.jeepay.pay.util.PaywayUtil;
......@@ -38,7 +38,6 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.io.File;
import java.util.Date;
/**
......@@ -70,13 +69,13 @@ public class YsfpayPaymentService extends AbstractPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) throws Exception {
return PaywayUtil.getRealPaywayService(this, payOrder.getWayCode()).pay(rq, payOrder, mchConfigContext);
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) throws Exception {
return PaywayUtil.getRealPaywayService(this, payOrder.getWayCode()).pay(rq, payOrder, mchAppConfigContext);
}
/** 封装参数 & 统一请求 **/
public JSONObject packageParamAndReq(String apiUri, JSONObject reqParams, String logPrefix, IsvConfigContext isvConfigContext, MchConfigContext mchConfigContext) throws Exception {
public JSONObject packageParamAndReq(String apiUri, JSONObject reqParams, String logPrefix, IsvConfigContext isvConfigContext, MchAppConfigContext mchAppConfigContext) throws Exception {
YsfpayIsvParams isvParams = isvConfigContext.getIsvParamsByIfCode(getIfCode(), YsfpayIsvParams.class);
......@@ -86,7 +85,7 @@ public class YsfpayPaymentService extends AbstractPaymentService {
}
reqParams.put("serProvId", isvParams.getSerProvId()); //云闪付服务商标识
YsfpayIsvsubMchParams isvsubMchParams = mchConfigContext.getIsvsubMchParamsByIfCode(getIfCode(), YsfpayIsvsubMchParams.class);
YsfpayIsvsubMchParams isvsubMchParams = mchAppConfigContext.getIsvsubMchParamsByIfCode(getIfCode(), YsfpayIsvsubMchParams.class);
reqParams.put("merId", isvsubMchParams.getMerId()); // 商户号
//签名
......
......@@ -25,7 +25,7 @@ import com.jeequan.jeepay.pay.rqrs.payorder.payway.AliBarOrderRS;
import com.jeequan.jeepay.pay.rqrs.payorder.UnifiedOrderRQ;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.util.ApiResBuilder;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
......@@ -51,7 +51,7 @@ public class AliBar extends YsfpayPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) throws Exception {
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) throws Exception {
String logPrefix = "【云闪付条码(alipay)支付】";
AliBarOrderRQ bizRQ = (AliBarOrderRQ) rq;
AliBarOrderRS res = ApiResBuilder.buildSuccess(AliBarOrderRS.class);
......@@ -67,7 +67,7 @@ public class AliBar extends YsfpayPaymentService {
reqParams.put("termInfo", "{\"ip\": \""+StringUtils.defaultIfEmpty(payOrder.getClientIp(), "127.0.0.1")+"\"}"); //终端信息
// 发送请求
JSONObject resJSON = packageParamAndReq("/gateway/api/pay/micropay", reqParams, logPrefix, mchConfigContext.getIsvConfigContext(), mchConfigContext);
JSONObject resJSON = packageParamAndReq("/gateway/api/pay/micropay", reqParams, logPrefix, mchAppConfigContext.getIsvConfigContext(), mchAppConfigContext);
//请求 & 响应成功, 判断业务逻辑
String respCode = resJSON.getString("respCode"); //应答码
String respMsg = resJSON.getString("respMsg"); //应答信息
......
......@@ -25,7 +25,7 @@ import com.jeequan.jeepay.pay.rqrs.payorder.payway.AliJsapiOrderRS;
import com.jeequan.jeepay.pay.rqrs.payorder.UnifiedOrderRQ;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.util.ApiResBuilder;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
......@@ -49,7 +49,7 @@ public class AliJsapi extends YsfpayPaymentService {
return null;
}
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) throws Exception {
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) throws Exception {
String logPrefix = "【云闪付(alipayJs)jsapi支付】";
JSONObject reqParams = new JSONObject();
AliJsapiOrderRS res = ApiResBuilder.buildSuccess(AliJsapiOrderRS.class);
......@@ -67,7 +67,7 @@ public class AliJsapi extends YsfpayPaymentService {
reqParams.put("customerIp", StringUtils.defaultIfEmpty(payOrder.getClientIp(), "127.0.0.1"));
// 发送请求并返回订单状态
JSONObject resJSON = packageParamAndReq("/gateway/api/pay/unifiedorder", reqParams, logPrefix, mchConfigContext.getIsvConfigContext(), mchConfigContext);
JSONObject resJSON = packageParamAndReq("/gateway/api/pay/unifiedorder", reqParams, logPrefix, mchAppConfigContext.getIsvConfigContext(), mchAppConfigContext);
//请求 & 响应成功, 判断业务逻辑
String respCode = resJSON.getString("respCode"); //应答码
String respMsg = resJSON.getString("respMsg"); //应答信息
......
......@@ -25,7 +25,7 @@ import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxBarOrderRQ;
import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxBarOrderRS;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.util.ApiResBuilder;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
......@@ -49,7 +49,7 @@ public class WxBar extends YsfpayPaymentService {
return null;
}
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) throws Exception {
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) throws Exception {
String logPrefix = "【云闪付条码(wechat)支付】";
WxBarOrderRQ bizRQ = (WxBarOrderRQ) rq;
......@@ -67,7 +67,7 @@ public class WxBar extends YsfpayPaymentService {
reqParams.put("termInfo", "{\"ip\": \""+StringUtils.defaultIfEmpty(payOrder.getClientIp(), "127.0.0.1")+"\"}"); //终端信息
// 发送请求
JSONObject resJSON = packageParamAndReq("/gateway/api/pay/micropay", reqParams, logPrefix, mchConfigContext.getIsvConfigContext(), mchConfigContext);
JSONObject resJSON = packageParamAndReq("/gateway/api/pay/micropay", reqParams, logPrefix, mchAppConfigContext.getIsvConfigContext(), mchAppConfigContext);
//请求 & 响应成功, 判断业务逻辑
String respCode = resJSON.getString("respCode"); //应答码
String respMsg = resJSON.getString("respMsg"); //应答信息
......
......@@ -25,7 +25,7 @@ import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxJsapiOrderRQ;
import com.jeequan.jeepay.pay.rqrs.payorder.payway.WxJsapiOrderRS;
import com.jeequan.jeepay.pay.rqrs.msg.ChannelRetMsg;
import com.jeequan.jeepay.pay.util.ApiResBuilder;
import com.jeequan.jeepay.pay.model.MchConfigContext;
import com.jeequan.jeepay.pay.model.MchAppConfigContext;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
......@@ -50,7 +50,7 @@ public class WxJsapi extends YsfpayPaymentService {
}
@Override
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchConfigContext mchConfigContext) throws Exception {
public AbstractRS pay(UnifiedOrderRQ rq, PayOrder payOrder, MchAppConfigContext mchAppConfigContext) throws Exception {
String logPrefix = "【云闪付(wechatJs)jsapi支付】";
JSONObject reqParams = new JSONObject();
WxJsapiOrderRS res = ApiResBuilder.buildSuccess(WxJsapiOrderRS.class);
......@@ -68,7 +68,7 @@ public class WxJsapi extends YsfpayPaymentService {
reqParams.put("customerIp", StringUtils.defaultIfEmpty(payOrder.getClientIp(), "127.0.0.1"));
// 发送请求并返回订单状态
JSONObject resJSON = packageParamAndReq("/gateway/api/pay/unifiedorder", reqParams, logPrefix, mchConfigContext.getIsvConfigContext(), mchConfigContext);
JSONObject resJSON = packageParamAndReq("/gateway/api/pay/unifiedorder", reqParams, logPrefix, mchAppConfigContext.getIsvConfigContext(), mchAppConfigContext);
//请求 & 响应成功, 判断业务逻辑
String respCode = resJSON.getString("respCode"); //应答码
String respMsg = resJSON.getString("respMsg"); //应答信息
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment