Commit 058bcf16 by zhiheng.zhang

Merge branch 'feature/2020-1104-混合支付' into qa

# Conflicts:
#	order-application-service/src/main/java/cn/freemud/service/impl/OrderServiceImpl.java
parents ff5cbd9b 74381499
...@@ -2833,6 +2833,7 @@ public class OrderAdapter { ...@@ -2833,6 +2833,7 @@ public class OrderAdapter {
orderPayResponse.setPartnerId(partnerId); orderPayResponse.setPartnerId(partnerId);
orderPayResponse.setOrderId(orderId); orderPayResponse.setOrderId(orderId);
orderPayResponse.setFmId(fmId); orderPayResponse.setFmId(fmId);
orderPayResponse.setPayMode(PayChannelType.ZERO.getEbcode());
return orderPayResponse; return orderPayResponse;
} }
...@@ -3421,7 +3422,7 @@ public class OrderAdapter { ...@@ -3421,7 +3422,7 @@ public class OrderAdapter {
, null , null
, createOrderVo.getUnionPayCard() , createOrderVo.getUnionPayCard()
, createOrderVo.getShopId() , createOrderVo.getShopId()
, createOrderVo.getChannel() , createOrderVo.getChannel()==null ? "" :createOrderVo.getChannel()
); );
} }
public CreatePrepayRequestDto convertToCreatePrepayRequestDto(String partnerId public CreatePrepayRequestDto convertToCreatePrepayRequestDto(String partnerId
......
...@@ -2366,7 +2366,7 @@ public class OrderServiceImpl implements Orderservice { ...@@ -2366,7 +2366,7 @@ public class OrderServiceImpl implements Orderservice {
tigger = true; tigger = true;
} }
//混合支付 //混合支付
if (tigger) { if (tigger && StringUtils.isNotBlank(channel)) {
log.info("混合支付:"); log.info("混合支付:");
String partnerPayOvertime = this.getPartnerPayOvertime(orderBean.getCompanyId()); String partnerPayOvertime = this.getPartnerPayOvertime(orderBean.getCompanyId());
orderPayResponse = comPayOrder(cardCode,orderBean,paymentRequest,partnerPayOvertime,totalAmount.intValue(), svcAmount,svcVAmount,channel,storeId,LogThreadLocal.getTrackingNo()); orderPayResponse = comPayOrder(cardCode,orderBean,paymentRequest,partnerPayOvertime,totalAmount.intValue(), svcAmount,svcVAmount,channel,storeId,LogThreadLocal.getTrackingNo());
...@@ -2424,6 +2424,7 @@ public class OrderServiceImpl implements Orderservice { ...@@ -2424,6 +2424,7 @@ public class OrderServiceImpl implements Orderservice {
orderPayResponse.setOpenId(paymentRequest.getOpenId()); orderPayResponse.setOpenId(paymentRequest.getOpenId());
orderPayResponse.setPartnerId(orderBean.getCompanyId()); orderPayResponse.setPartnerId(orderBean.getCompanyId());
orderPayResponse.setOrderId(orderBean.getOid()); orderPayResponse.setOrderId(orderBean.getOid());
orderPayResponse.setPayMode(PayChannelType.USVCP.getEbcode());
} }
return orderPayResponse; return orderPayResponse;
} }
...@@ -2486,7 +2487,7 @@ public class OrderServiceImpl implements Orderservice { ...@@ -2486,7 +2487,7 @@ public class OrderServiceImpl implements Orderservice {
} }
//svc 卡支付失败 //svc 卡支付失败
if (StringUtils.isNotBlank(cardCode)) { if (StringUtils.isNotBlank(cardCode)) {
return ResponseUtil.error(ResponseResultEnum.PAY_BACKEND_CONFIG_ERROR.getCode(), ResponseResultEnum.PAY_BACKEND_CONFIG_ERROR.getMessage(), null); return ResponseUtil.error(ResponseResultEnum.PAY_BACKEND_CONFIG_ERROR.getCode(), StringUtils.isNotBlank(msg) ? msg : ResponseResultEnum.PAY_BACKEND_CONFIG_ERROR.getMessage(), null);
} }
return ResponseUtil.error(ResponseResultEnum.PAY_UNIFIED_ORDER_ERROR.getCode(), ResponseResultEnum.PAY_UNIFIED_ORDER_ERROR.getMessage(), null); return ResponseUtil.error(ResponseResultEnum.PAY_UNIFIED_ORDER_ERROR.getCode(), ResponseResultEnum.PAY_UNIFIED_ORDER_ERROR.getMessage(), null);
} }
...@@ -2525,15 +2526,21 @@ public class OrderServiceImpl implements Orderservice { ...@@ -2525,15 +2526,21 @@ public class OrderServiceImpl implements Orderservice {
com.freemud.application.sdk.api.base.BaseResponse<UnifiedOrderResponse> responseBase = standardPaymentService.unifiedOrder(request, trackingNo); com.freemud.application.sdk.api.base.BaseResponse<UnifiedOrderResponse> responseBase = standardPaymentService.unifiedOrder(request, trackingNo);
if (!ResponseCodeConstant.RESPONSE_SUCCESS_STR.equals(responseBase.getCode())) { if (!ResponseCodeConstant.RESPONSE_SUCCESS_STR.equals(responseBase.getCode())) {
log.error("支付SDK返回信息错误,trackingNo:{} request:{} response:{}", trackingNo, JSONObject.toJSONString(request), JSONObject.toJSONString(responseBase)); log.error("支付SDK返回信息错误,trackingNo:{} request:{} response:{}", trackingNo, JSONObject.toJSONString(request), JSONObject.toJSONString(responseBase));
return null; // 1.9.34 预支付失败需要把原因进行记录
orderPayResponse = new OrderPayResponse();
orderPayResponse.setMsg(responseBase.getMessage());
} else {
putDelMq(request.getPartnerId(), request.getStoreId(), responseBase.getData().getFmId(), orderBean.getOid());
orderPayResponse = orderAdapter.convent2OrderPayResponse(responseBase.getData());
orderPayResponse.setWxAppid(paymentRequest.getWxAppId());
orderPayResponse.setOpenId(paymentRequest.getOpenId());
orderPayResponse.setPartnerId(orderBean.getCompanyId());
orderPayResponse.setOrderId(orderBean.getOid());
orderPayResponse.setPayMode(PayChannelType.WECHAT.getEbcode());
if (orderPayResponse.getPayOrder()!=null) {
orderPayResponse.setPayMode(PayChannelType.ALIPAY.getEbcode());
}
} }
putDelMq(request.getPartnerId(), request.getStoreId(), responseBase.getData().getFmId(), orderBean.getOid());
OrderPayResponse orderPayResponse = orderAdapter.convent2OrderPayResponse(responseBase.getData());
orderPayResponse.setWxAppid(paymentRequest.getWxAppId());
orderPayResponse.setOpenId(paymentRequest.getOpenId());
orderPayResponse.setPartnerId(orderBean.getCompanyId());
orderPayResponse.setOrderId(orderBean.getOid());
return orderPayResponse;
} catch (Exception e) { } catch (Exception e) {
LogUtil.error("getPreOrderPay_error", JSONObject.toJSONString(orderBean), JSONObject.toJSONString(paymentRequest)); LogUtil.error("getPreOrderPay_error", JSONObject.toJSONString(orderBean), JSONObject.toJSONString(paymentRequest));
//TODO 邮件告警 //TODO 邮件告警
...@@ -2722,6 +2729,11 @@ public class OrderServiceImpl implements Orderservice { ...@@ -2722,6 +2729,11 @@ public class OrderServiceImpl implements Orderservice {
JSONObject.toJSONString(orderExtInfo)); JSONObject.toJSONString(orderExtInfo));
orderEditRequest.setOrderId(orderBean.getOid()); orderEditRequest.setOrderId(orderBean.getOid());
orderEditRequest.setTrackingNo(trackingNo); orderEditRequest.setTrackingNo(trackingNo);
if (orderPayResponse.getPayMode()!=null) {
orderEditRequest.setPayChannel(PayChannelType.getByEbcode(orderPayResponse.getPayMode()).getEbcode());
orderEditRequest.setPayChannelName(PayChannelType.getByEbcode(orderPayResponse.getPayMode()).getName());
orderEditRequest.setPayChannelType(PayChannelType.getByEbcode(orderPayResponse.getPayMode()).getIndex());
}
//混合支付项 //混合支付项
if (CollectionUtils.isNotEmpty(orderPayResponse.getPayItem())) { if (CollectionUtils.isNotEmpty(orderPayResponse.getPayItem())) {
orderEditRequest.setOrderPayItem(orderPayResponse.getPayItem()); orderEditRequest.setOrderPayItem(orderPayResponse.getPayItem());
......
...@@ -11,7 +11,8 @@ public enum PayChannelType { ...@@ -11,7 +11,8 @@ public enum PayChannelType {
ALIPAY((byte)2,"10300","支付宝"), ALIPAY((byte)2,"10300","支付宝"),
SVC((byte)3,"10102","储值卡"), SVC((byte)3,"10102","储值卡"),
COMB((byte)4,"10212","混合支付"), COMB((byte)4,"10212","混合支付"),
USVCP((byte)5,"10556", "电子风味卡支付"); USVCP((byte)5,"10556", "电子风味卡支付"),
ZERO((byte)6,"100000", "0元支付");
private Byte index; private Byte index;
private String ebcode; private String ebcode;
......
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