Commit 6dcdbe3f by xiaoer.li@freemud.com

混合支付金额上报

parent 4c95743d
......@@ -34,8 +34,10 @@ import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.log.ThirdPartyLog;
import com.freemud.application.sdk.api.ordercenter.enums.NewOrderStatus;
import com.freemud.application.sdk.api.ordercenter.enums.OrderClientType;
import com.freemud.application.sdk.api.ordercenter.enums.PayChannelType;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderInfoReqs;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderItemResp;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderPayItemReqs;
import com.freemud.application.sdk.api.ordercenter.response.orderInfo.OrderSettlementResp;
import com.freemud.sdk.api.assortment.orderdistributor.request.DisRequest;
import com.freemud.sdk.api.assortment.orderdistributor.service.OrderDistributionService;
......@@ -51,10 +53,7 @@ import org.springframework.context.ApplicationContext;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.*;
@Component
@Slf4j
......@@ -221,12 +220,23 @@ public class OrderCallBackMQService {
AssortmentOpenPlatformWxapp wxApp = openPlatformWxappManager.findByPartnerIdAndWxappId(userLoginInfoDto.getPartnerId(), userLoginInfoDto.getWxAppid());
wechatReportOrderDto.setSubMchId(wxApp == null ? "" : wxApp.getMchId());
}
// 混合支付
Integer userAmount = 0;
if (orderInfoReqs.getOrderPayItemCreateReqList().size()>0) {
OrderPayItemReqs orderPayItemReqs = orderInfoReqs.getOrderPayItemCreateReqList()
.stream()
.filter(s -> s.getPayChannelType().equals(PayChannelType.WECHAT.getIndex()) || s.getPayChannelType().equals(PayChannelType.ALIPAY.getIndex()))
.findFirst().orElse(null);
if (orderPayItemReqs!=null) {
userAmount = orderPayItemReqs.getPayAmount().intValue();
}
}
wechatReportOrderDto.setPayVoucher(orderInfoReqs.getPayRequestNo());
wechatReportOrderDto.setSubAppId(userLoginInfoDto.getWxAppid());
wechatReportOrderDto.setOutShopNo(orderInfoReqs.getStoreId());
wechatReportOrderDto.setSubOpenId(userLoginInfoDto.getOpenId());
wechatReportOrderDto.setLoginToken(userLoginInfoDto.getSessionKey());
wechatReportOrderDto.setUserAmount(orderInfoReqs.getSettlementAmount().intValue());
wechatReportOrderDto.setUserAmount(userAmount >0 ? userAmount :orderInfoReqs.getSettlementAmount().intValue());
wechatReportOrderDto.setOutOrderNo(orderInfoReqs.getOrderCode());
wechatReportOrderDto.setTransactionId(orderExtInfoDto.getPaid_no());
wechatReportOrderDto.setOutTradeNo(orderExtInfoDto.getPayTransId());
......@@ -245,7 +255,7 @@ public class OrderCallBackMQService {
}
}
}
wechatReportOrderDto.setTotalAmount(discountAmount+orderInfoReqs.getSettlementAmount().intValue());
wechatReportOrderDto.setTotalAmount(discountAmount+(userAmount >0 ? userAmount : orderInfoReqs.getSettlementAmount().intValue()));
wechatReportOrderDto.setDiscountAmount(discountAmount);
//订单状态 (2—用户下单;1—支付完成)
wechatReportOrderDto.setStatus(NewOrderStatus.PENDING_PAYMENT.getIndex().equals(orderInfoReqs.getOrderState()) ? 2 : 1);
......
Markdown is supported
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