diff --git a/mallinkService/src/main/java/com/iformall/service/helper/WxPayOrderServiceHelper.java b/mallinkService/src/main/java/com/iformall/service/helper/WxPayOrderServiceHelper.java index 510487f0b..3ee645d43 100644 --- a/mallinkService/src/main/java/com/iformall/service/helper/WxPayOrderServiceHelper.java +++ b/mallinkService/src/main/java/com/iformall/service/helper/WxPayOrderServiceHelper.java @@ -3,6 +3,7 @@ package com.iformall.service.helper; import java.util.Date; import java.util.Map; +import com.iformall.enums.*; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -16,10 +17,6 @@ import com.iformall.domain.po.WxMerchantBUser; import com.iformall.domain.po.WxOrder; import com.iformall.domain.po.WxPayAccount; import com.iformall.domain.po.WxPayOrder; -import com.iformall.enums.EnumOrderStatus; -import com.iformall.enums.EnumPayEndFrom; -import com.iformall.enums.EnumPayMode; -import com.iformall.enums.EnumPayStatus; import com.iformall.exception.MallinkException; import com.iformall.pay.WxPay; import com.iformall.pay.WxPayOrderQ; @@ -168,7 +165,12 @@ public class WxPayOrderServiceHelper { payOrderSQ.setAppid(appInfo.getParentAppId()); payOrderSQ.setSub_appid(appInfo.getAppId()); payOrderSQ.setMch_id(payAccount.getMchId()); - payOrderSQ.setSub_mch_id(payAccount.getSubMchId()); + if (payAccount.getMchType() == EnumPayMchType.TOTAL.getCode()) { + payOrderSQ.setSub_mch_id(payAccount.getSubMchId()); + }else if (payAccount.getMchType() == EnumPayMchType.DIRECT.getCode()) { + payOrderSQ.setSub_mch_id(record.getSingleChildOrderShare().getMerchantUid()); + } +// payOrderSQ.setSub_mch_id(payAccount.getSubMchId()); payOrderSQ.setNonce_str(noncestr); if (StringUtils.isNotBlank(record.getTransactionId())) { payOrderSQ.setTransaction_id(record.getTransactionId()); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java index 4b8adeb88..5ec0f6c76 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java @@ -2722,6 +2722,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { } childShares.put(String.valueOf(composeOrder.getSingleOrder().getId()), new WxComposeChildOrderShare(composeOrder.getSingleOrder().getId(),payAmount,merchant_id,merchant_uid)); + payOrder.setChildOrderShare(JSON.toJSONString(childShares)); payOrder.setPayFrom(EnumPayFrom.INSIDE_B.getCode()); payOrder.setPosPayOrderId(couponOrder.getId());