| @@ -799,8 +799,15 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { | |||||
| if(payAccount == null){ | if(payAccount == null){ | ||||
| throw new MallinkException(ErrorCode.API_KEY_NOT_FOUND); | throw new MallinkException(ErrorCode.API_KEY_NOT_FOUND); | ||||
| } | } | ||||
| OrderAdapterService orderAdapterService = orderFactory.getOrderAdapterService(EnumComposeOrder.SINGLE.getCode()); | |||||
| WxComposeOrder composeOrder = orderAdapterService.getComposeOrder(record.getOrderId(), cAppInfo.getTenantId()); | |||||
| if (composeOrder == null) { | |||||
| logger.error("pay order reverse, no composeOrder " + record.toString()); | |||||
| throw new MallinkException(ErrorCode.ORDER_IS_NOT_FIND); | |||||
| } | |||||
| try { | try { | ||||
| PayAdapterResult result = payServiceFactory.getPayAdapterService(record.getPayVendor(),record.getPayVersion()).payOrderReverse(cAppInfo, record, payAccount); | |||||
| PayAdapterResult result = payServiceFactory.getPayAdapterService(record.getPayVendor(),record.getPayVersion()).payOrderReverse(cAppInfo, record, payAccount,composeOrder); | |||||
| if (result.isSuccess()) { | if (result.isSuccess()) { | ||||
| record.setPayOrderStatus(EnumPayStatus.PAY_STATUS_REVERSE.getCode()); | record.setPayOrderStatus(EnumPayStatus.PAY_STATUS_REVERSE.getCode()); | ||||
| record.setUpdateTime(new Date()); | record.setUpdateTime(new Date()); | ||||
| @@ -76,7 +76,7 @@ public interface PayAdapterService { | |||||
| * @return | * @return | ||||
| * @throws Exception | * @throws Exception | ||||
| */ | */ | ||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record,WxPayAccount payAccount) throws Exception; | |||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record,WxPayAccount payAccount,WxComposeOrder composeOrder) throws Exception; | |||||
| /** | /** | ||||
| * API 订单同步 | * API 订单同步 | ||||
| @@ -240,7 +240,7 @@ public class TtMiniAppPayAdapterService extends BaseTtPayAdapterService implemen | |||||
| } | } | ||||
| @Override | @Override | ||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount) | |||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount,WxComposeOrder composeOrder) | |||||
| throws Exception { | throws Exception { | ||||
| return super.payOrderReverse(appInfo, record, payAccount); | return super.payOrderReverse(appInfo, record, payAccount); | ||||
| } | } | ||||
| @@ -105,7 +105,7 @@ public class TtOpenPayAdapterService extends BaseTtPayAdapterService implements | |||||
| } | } | ||||
| @Override | @Override | ||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount) | |||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount,WxComposeOrder composeOrder) | |||||
| throws Exception { | throws Exception { | ||||
| return super.payOrderReverse(appInfo, record, payAccount); | return super.payOrderReverse(appInfo, record, payAccount); | ||||
| } | } | ||||
| @@ -53,7 +53,7 @@ public class WxH5PaySFTService extends BaseWxPaySFTAdapterService implements CDr | |||||
| } | } | ||||
| @Override | @Override | ||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount) | |||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount,WxComposeOrder composeOrder) | |||||
| throws Exception { | throws Exception { | ||||
| // TODO Auto-generated method stub | // TODO Auto-generated method stub | ||||
| return null; | return null; | ||||
| @@ -277,7 +277,7 @@ public class WxMiniAppPaySFTAdapterService extends BaseWxPaySFTAdapterService i | |||||
| } | } | ||||
| @Override | @Override | ||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount) | |||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount,WxComposeOrder composeOrder) | |||||
| throws Exception { | throws Exception { | ||||
| return super.payOrderReverse(appInfo, record, payAccount, payAccount.getSubMchId()); | return super.payOrderReverse(appInfo, record, payAccount, payAccount.getSubMchId()); | ||||
| } | } | ||||
| @@ -50,7 +50,7 @@ public class WxH5PayService extends BaseWxPayV2AdapterService implements CDrivi | |||||
| } | } | ||||
| @Override | @Override | ||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount) | |||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount,WxComposeOrder composeOrder) | |||||
| throws Exception { | throws Exception { | ||||
| // TODO Auto-generated method stub | // TODO Auto-generated method stub | ||||
| return null; | return null; | ||||
| @@ -320,7 +320,7 @@ public class WxMiniAppPayAdapterService extends BaseWxPayV2AdapterService implem | |||||
| } | } | ||||
| @Override | @Override | ||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount) | |||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount,WxComposeOrder composeOrder) | |||||
| throws Exception { | throws Exception { | ||||
| return super.payOrderReverse(appInfo, record, payAccount,payAccount.getSubMchId()); | return super.payOrderReverse(appInfo, record, payAccount,payAccount.getSubMchId()); | ||||
| } | } | ||||
| @@ -271,9 +271,16 @@ public class WxMiniMaPayAdapterService extends BaseWxPayV2AdapterService impleme | |||||
| } | } | ||||
| @Override | @Override | ||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount) | |||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount,WxComposeOrder composeOrder) | |||||
| throws Exception { | throws Exception { | ||||
| return super.payOrderReverse(appInfo, record, payAccount,payAccount.getSubMchId()); | |||||
| String mchId = payAccount.getSubMchId(); | |||||
| if (record.getMchType() == EnumPayMchType.DIRECT.getCode()) { | |||||
| mchId = getMerchantUid(record,composeOrder.getSingleOrder()); | |||||
| //总分 | |||||
| }else if (record.getMchType() == EnumPayMchType.TOTAL.getCode()) { | |||||
| mchId = payAccount.getSubMchId(); | |||||
| } | |||||
| return super.payOrderReverse(appInfo, record, payAccount,mchId); | |||||
| } | } | ||||
| @Override | @Override | ||||
| @@ -317,7 +317,7 @@ public class WxMiniAppPayV3AdapterService extends BaseWxPayV3AdapterService impl | |||||
| } | } | ||||
| @Override | @Override | ||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount) | |||||
| public PayAdapterResult payOrderReverse(WxAppinfo appInfo, WxPayOrder record, WxPayAccount payAccount,WxComposeOrder composeOrder) | |||||
| throws Exception { | throws Exception { | ||||
| return super.payOrderReverse(appInfo, record, payAccount,payAccount.getSubMchId()); | return super.payOrderReverse(appInfo, record, payAccount,payAccount.getSubMchId()); | ||||
| } | } | ||||