Commit 2bb63b8a by vega

feature:createOrder:新增礼品卡支付

parent 8d5b8630
...@@ -490,7 +490,10 @@ public class OrderAdapter { ...@@ -490,7 +490,10 @@ public class OrderAdapter {
createOrderDto.setLongitude(longitude); createOrderDto.setLongitude(longitude);
createOrderDto.setOrderType(convent2OrderTypeEnum(orderType)); createOrderDto.setOrderType(convent2OrderTypeEnum(orderType));
createOrderDto.setPayType(QueryPayType.ONLINE_PAY); createOrderDto.setPayType(QueryPayType.ONLINE_PAY);
if(StringUtils.isNotBlank(createOrderVo.getCardCode())){ if (Objects.nonNull(createOrderVo.getUseUnionPayCard()) && createOrderVo.getUseUnionPayCard()) {
createOrderDto.setPayChannel(PayChannel.UPC.getCode());
createOrderDto.setPayChannelName(PayChannel.UPC.getDesc());
} else if(StringUtils.isNotBlank(createOrderVo.getCardCode())){
createOrderDto.setPayChannel("10102"); createOrderDto.setPayChannel("10102");
createOrderDto.setPayChannelName("储值卡支付"); createOrderDto.setPayChannelName("储值卡支付");
} }
...@@ -545,7 +548,10 @@ public class OrderAdapter { ...@@ -545,7 +548,10 @@ public class OrderAdapter {
productOrderInfo.setBizType(1); productOrderInfo.setBizType(1);
productOrderInfo.setOrderType(orderType); productOrderInfo.setOrderType(orderType);
productOrderInfo.setPayType(QueryPayType.ONLINE_PAY); productOrderInfo.setPayType(QueryPayType.ONLINE_PAY);
if(StringUtils.isNotBlank(createOrderVo.getCardCode())){ if (Objects.nonNull(createOrderVo.getUseUnionPayCard()) && createOrderVo.getUseUnionPayCard()) {
productOrderInfo.setPayChannel(PayChannel.UPC.getCode());
productOrderInfo.setPayChannelName(PayChannel.UPC.getDesc());
} else if(StringUtils.isNotBlank(createOrderVo.getCardCode())){
productOrderInfo.setPayChannel("10102"); productOrderInfo.setPayChannel("10102");
productOrderInfo.setPayChannelName("储值卡支付"); productOrderInfo.setPayChannelName("储值卡支付");
} }
...@@ -675,7 +681,10 @@ public class OrderAdapter { ...@@ -675,7 +681,10 @@ public class OrderAdapter {
memberOrderInfo.setOrderType(orderType); memberOrderInfo.setOrderType(orderType);
memberOrderInfo.setIsParent(false); memberOrderInfo.setIsParent(false);
memberOrderInfo.setOrderClient(OrderClientType.I_MEMBER.getIndex()); memberOrderInfo.setOrderClient(OrderClientType.I_MEMBER.getIndex());
if(StringUtils.isNotBlank(createOrderVo.getCardCode())){ if (Objects.nonNull(createOrderVo.getUseUnionPayCard()) && createOrderVo.getUseUnionPayCard()) {
memberOrderInfo.setPayChannel(PayChannel.UPC.getCode());
memberOrderInfo.setPayChannelName(PayChannel.UPC.getDesc());
} else if(StringUtils.isNotBlank(createOrderVo.getCardCode())){
memberOrderInfo.setPayChannel("10102"); memberOrderInfo.setPayChannel("10102");
memberOrderInfo.setPayChannelName("储值卡支付"); memberOrderInfo.setPayChannelName("储值卡支付");
} }
...@@ -715,7 +724,10 @@ public class OrderAdapter { ...@@ -715,7 +724,10 @@ public class OrderAdapter {
fatherOrderInfo.setIsParent(true); fatherOrderInfo.setIsParent(true);
fatherOrderInfo.setOrderClient(OrderClientType.SAAS.getIndex()); fatherOrderInfo.setOrderClient(OrderClientType.SAAS.getIndex());
fatherOrderInfo.setOrderType(orderType); fatherOrderInfo.setOrderType(orderType);
if(StringUtils.isNotBlank(createOrderVo.getCardCode())){ if (Objects.nonNull(createOrderVo.getUseUnionPayCard()) && createOrderVo.getUseUnionPayCard()) {
fatherOrderInfo.setPayChannel(PayChannel.UPC.getCode());
fatherOrderInfo.setPayChannelName(PayChannel.UPC.getDesc());
} else if(StringUtils.isNotBlank(createOrderVo.getCardCode())){
fatherOrderInfo.setPayChannel("10102"); fatherOrderInfo.setPayChannel("10102");
fatherOrderInfo.setPayChannelName("储值卡支付"); fatherOrderInfo.setPayChannelName("储值卡支付");
} }
...@@ -905,6 +917,8 @@ public class OrderAdapter { ...@@ -905,6 +917,8 @@ public class OrderAdapter {
responseVo.setOrderPayType("支付宝支付"); responseVo.setOrderPayType("支付宝支付");
} else if (ordersBean.getPayChannel() != null && PayChannel.WXPAY.getCode().equals(ordersBean.getPayChannel())) { } else if (ordersBean.getPayChannel() != null && PayChannel.WXPAY.getCode().equals(ordersBean.getPayChannel())) {
responseVo.setOrderPayType("微信支付"); responseVo.setOrderPayType("微信支付");
} else if (ordersBean.getPayChannel() != null && Objects.equals(PayChannel.UPC.getCode(), ordersBean.getPayChannel())) {
responseVo.setOrderPayType("银联礼品卡支付");
} else { } else {
responseVo.setOrderPayType("微信支付"); responseVo.setOrderPayType("微信支付");
} }
...@@ -2825,9 +2839,9 @@ public class OrderAdapter { ...@@ -2825,9 +2839,9 @@ public class OrderAdapter {
} }
public CreatePrepayRequestDto convertToCreatePrepayRequestDto(String partnerId, String wxAppId, String openId, public CreatePrepayRequestDto convertToCreatePrepayRequestDto(String partnerId, String wxAppId, String openId,
String faceCode, String cardCode, String payCode, QueryOrdersResponse.DataBean.OrderBean fatherOrderBean, String faceCode, String cardCode, String payCode, QueryOrdersResponse.DataBean.OrderBean fatherOrderBean,
QueryOrdersResponse.DataBean.OrderBean productOrderBean, long totalAmount, int cardAmount, OrderExtInfoDto orderExtInfoDTO, QueryOrdersResponse.DataBean.OrderBean productOrderBean, long totalAmount, int cardAmount, OrderExtInfoDto orderExtInfoDTO,
String transId, OrderClientType orderClient){ String transId, OrderClientType orderClient, Boolean useUnionPayCard){
CreatePrepayRequestDto requestDto = new CreatePrepayRequestDto(); CreatePrepayRequestDto requestDto = new CreatePrepayRequestDto();
requestDto.setPartnerId(partnerId); requestDto.setPartnerId(partnerId);
requestDto.setWxAppId(wxAppId); requestDto.setWxAppId(wxAppId);
...@@ -2842,6 +2856,7 @@ public class OrderAdapter { ...@@ -2842,6 +2856,7 @@ public class OrderAdapter {
requestDto.setOrderExtInfoDTO(orderExtInfoDTO); requestDto.setOrderExtInfoDTO(orderExtInfoDTO);
requestDto.setTransId(transId); requestDto.setTransId(transId);
requestDto.setOrderClient(orderClient); requestDto.setOrderClient(orderClient);
requestDto.setUseUnionPayCard(useUnionPayCard);
return requestDto; return requestDto;
} }
...@@ -2852,7 +2867,7 @@ public class OrderAdapter { ...@@ -2852,7 +2867,7 @@ public class OrderAdapter {
createOrderOperateDto.getFatherOrderBean(), createOrderOperateDto.getProductOrderBean(), createOrderOperateDto.getFatherOrderBean(), createOrderOperateDto.getProductOrderBean(),
createOrderOperateDto.getTotalAmount() == null ? 0 : createOrderOperateDto.getTotalAmount(), createOrderOperateDto.getTotalAmount() == null ? 0 : createOrderOperateDto.getTotalAmount(),
createOrderOperateDto.getCardAmount() == null ? 0 : createOrderOperateDto.getCardAmount(), orderExtInfoDTO, createOrderOperateDto.getCardAmount() == null ? 0 : createOrderOperateDto.getCardAmount(), orderExtInfoDTO,
createOrderOperateDto.getFatherOrderBean().getOid(), null); createOrderOperateDto.getFatherOrderBean().getOid(), null, createOrderVo.getUseUnionPayCard());
} }
/** /**
......
...@@ -57,4 +57,9 @@ public class CreatePrepayRequestDto { ...@@ -57,4 +57,9 @@ public class CreatePrepayRequestDto {
private String transId; private String transId;
private OrderClientType orderClient; private OrderClientType orderClient;
/**
* 使用银联礼品卡
*/
private Boolean useUnionPayCard;
} }
...@@ -206,6 +206,11 @@ public class CreateOrderVo { ...@@ -206,6 +206,11 @@ public class CreateOrderVo {
private String channelType; private String channelType;
/** /**
* 使用银联礼品卡 true 使用, null or false 不使用
*/
private Boolean useUnionPayCard;
/**
* 微信配送地址信息 * 微信配送地址信息
*/ */
private WeixinDeliveryAddressDto weixinDeliveryAddress; private WeixinDeliveryAddressDto weixinDeliveryAddress;
......
...@@ -15,6 +15,7 @@ package cn.freemud.enums; ...@@ -15,6 +15,7 @@ package cn.freemud.enums;
public enum PayChannel { public enum PayChannel {
SVC("10102", "svc卡支付"), SVC("10102", "svc卡支付"),
UPC("10400", "银联礼品卡支付"),
ALIPAY("10300", "支付宝"), ALIPAY("10300", "支付宝"),
WXPAY("10211", "微信"); WXPAY("10211", "微信");
......
...@@ -1802,6 +1802,9 @@ public class OrderServiceImpl implements Orderservice { ...@@ -1802,6 +1802,9 @@ public class OrderServiceImpl implements Orderservice {
String transId = createPrepayRequestDto.getTransId(); String transId = createPrepayRequestDto.getTransId();
if (totalAmount < 0) { if (totalAmount < 0) {
throw new ServiceException(ResponseResult.PAY_AMOUNT_ERROR); throw new ServiceException(ResponseResult.PAY_AMOUNT_ERROR);
} else if (totalAmount > 0 && Objects.nonNull(createPrepayRequestDto.getUseUnionPayCard()) && createPrepayRequestDto.getUseUnionPayCard()) {
// 银联礼品卡支付
orderPayResponse = upcPay(createPrepayRequestDto.getFatherOrderBean(), paymentRequest, transId, LogThreadLocal.getTrackingNo());
} else if (totalAmount > 0 && StringUtils.isBlank(cardCode)) { } else if (totalAmount > 0 && StringUtils.isBlank(cardCode)) {
orderPayResponse = getPreOrderPay(createPrepayRequestDto.getFatherOrderBean(), paymentRequest, LogThreadLocal.getTrackingNo(), createPrepayRequestDto.getCardAmount(), transId); orderPayResponse = getPreOrderPay(createPrepayRequestDto.getFatherOrderBean(), paymentRequest, LogThreadLocal.getTrackingNo(), createPrepayRequestDto.getCardAmount(), transId);
} else if (totalAmount > 0 && StringUtils.isNotBlank(cardCode)) { } else if (totalAmount > 0 && StringUtils.isNotBlank(cardCode)) {
...@@ -1844,6 +1847,10 @@ public class OrderServiceImpl implements Orderservice { ...@@ -1844,6 +1847,10 @@ public class OrderServiceImpl implements Orderservice {
} }
} }
private OrderPayResponse upcPay(QueryOrdersResponse.DataBean.OrderBean orderBean, PaymentRequest paymentRequest, String transId, String trackingNo) {
return null;
}
/** /**
* 创建普通订单 * 创建普通订单
*/ */
......
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