| @@ -160,6 +160,4 @@ public class WxPayOrder extends TenantEntity { | |||||
| } | } | ||||
| return false; | return false; | ||||
| } | } | ||||
| } | } | ||||
| @@ -456,7 +456,7 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { | |||||
| if(EnumPayMchType.DIRECT.equals(payMchType)){//直连模式记录收款商户 | if(EnumPayMchType.DIRECT.equals(payMchType)){//直连模式记录收款商户 | ||||
| merchant_id = wxCouponChannelService.getCouponOneMerchantId(payWay,o.getCouponChannelId(),o.getTenantId()); | merchant_id = wxCouponChannelService.getCouponOneMerchantId(payWay,o.getCouponChannelId(),o.getTenantId()); | ||||
| merchant_uid = wxCouponChannelService.getCouponOneMerchantUid(payWay,merchant_id,o.getTenantId()); | merchant_uid = wxCouponChannelService.getCouponOneMerchantUid(payWay,merchant_id,o.getTenantId()); | ||||
| if(StringUtils.isBlank(merchant_uid)){ | |||||
| if(null == merchant_id || StringUtils.isBlank(merchant_uid)){ | |||||
| throw new MallinkException(ErrorCode.PAY_ORDER_MERCHANT_UID_ERROR); | throw new MallinkException(ErrorCode.PAY_ORDER_MERCHANT_UID_ERROR); | ||||
| } | } | ||||
| } | } | ||||
| @@ -100,6 +100,7 @@ public class PayServiceFactory { | |||||
| serviceMap.put(EnumPayWay.PAY_WAY_WECHAT_MA.getCode()+"_"+EnumPayVersion.WX_PAY_V3.getCode(), wxMiniAppMaPayService); | serviceMap.put(EnumPayWay.PAY_WAY_WECHAT_MA.getCode()+"_"+EnumPayVersion.WX_PAY_V3.getCode(), wxMiniAppMaPayService); | ||||
| //电商收付通没有收款码支付 | //电商收付通没有收款码支付 | ||||
| //serviceMap.put(EnumPayWay.PAY_WAY_WECHAT_MA.getCode()+"_"+EnumPayVersion.WX_PAY_V3_SFT.getCode(), wxMiniAppMaPayService); | //serviceMap.put(EnumPayWay.PAY_WAY_WECHAT_MA.getCode()+"_"+EnumPayVersion.WX_PAY_V3_SFT.getCode(), wxMiniAppMaPayService); | ||||
| serviceMap.put(EnumPayWay.PAY_WAY_WECHAT_WAP.getCode()+"_"+EnumPayVersion.WX_PAY_V2.getCode(), wxH5PayService); | serviceMap.put(EnumPayWay.PAY_WAY_WECHAT_WAP.getCode()+"_"+EnumPayVersion.WX_PAY_V2.getCode(), wxH5PayService); | ||||
| serviceMap.put(EnumPayWay.PAY_WAY_WECHAT_WAP.getCode()+"_"+EnumPayVersion.WX_PAY_V3_SFT.getCode(), wxH5PaySFTService); | serviceMap.put(EnumPayWay.PAY_WAY_WECHAT_WAP.getCode()+"_"+EnumPayVersion.WX_PAY_V3_SFT.getCode(), wxH5PaySFTService); | ||||
| serviceMap.put(EnumPayWay.PAY_WAY_TT.getCode()+"_"+EnumPayVersion.DY_PAY_V2.getCode(),ttMiniAppPayService); | serviceMap.put(EnumPayWay.PAY_WAY_TT.getCode()+"_"+EnumPayVersion.DY_PAY_V2.getCode(),ttMiniAppPayService); | ||||
| @@ -237,7 +237,12 @@ public class WxMiniAppPayV3AdapterService extends BaseWxPayV3AdapterService impl | |||||
| V3PayQueryReq req = new V3PayQueryReq(); | V3PayQueryReq req = new V3PayQueryReq(); | ||||
| if (!oldRecord.isMulity()) { | if (!oldRecord.isMulity()) { | ||||
| req.setSp_mchid(payAccount.getMchId()); | req.setSp_mchid(payAccount.getMchId()); | ||||
| req.setSub_mchid(oldRecord.getSingleChildOrderShare().getMerchantUid()); | |||||
| //总分 | |||||
| if (payAccount.getMchType() == EnumPayMchType.TOTAL.getCode()) { | |||||
| req.setSub_mchid(payAccount.getSubMchId()); | |||||
| }else if (payAccount.getMchType() == EnumPayMchType.DIRECT.getCode()) { | |||||
| req.setSub_mchid(oldRecord.getSingleChildOrderShare().getMerchantUid()); | |||||
| } | |||||
| req.setOut_trade_no(oldRecord.getPayOrderNo()); | req.setOut_trade_no(oldRecord.getPayOrderNo()); | ||||
| String response = WxPayV3.payCommonQuery(payService, req); | String response = WxPayV3.payCommonQuery(payService, req); | ||||
| if (StringUtils.isBlank(response)){ | if (StringUtils.isBlank(response)){ | ||||
| @@ -274,7 +279,12 @@ public class WxMiniAppPayV3AdapterService extends BaseWxPayV3AdapterService impl | |||||
| if (!record.isMulity()) { | if (!record.isMulity()) { | ||||
| SFTPayQueryReq req = new SFTPayQueryReq(); | SFTPayQueryReq req = new SFTPayQueryReq(); | ||||
| req.setSp_mchid(payAccount.getMchId()); | req.setSp_mchid(payAccount.getMchId()); | ||||
| req.setSub_mchid(record.getSingleChildOrderShare().getMerchantUid()); | |||||
| //总分 | |||||
| if (payAccount.getMchType() == EnumPayMchType.TOTAL.getCode()) { | |||||
| req.setSub_mchid(payAccount.getSubMchId()); | |||||
| }else if (payAccount.getMchType() == EnumPayMchType.DIRECT.getCode()) { | |||||
| req.setSub_mchid(record.getSingleChildOrderShare().getMerchantUid()); | |||||
| } | |||||
| req.setOut_trade_no(record.getPayOrderNo()); | req.setOut_trade_no(record.getPayOrderNo()); | ||||
| WxPayV3SFT.payCommonClose(payService, req); | WxPayV3SFT.payCommonClose(payService, req); | ||||
| return new PayAdapterResult(true, "close success", req, null); | return new PayAdapterResult(true, "close success", req, null); | ||||