Commit c0aad8c1 by zhiheng.zhang

Merge branch 'feature/20201110_混合支付退款_张志恒' into develop

# Conflicts:
#	order-management/src/main/java/cn/freemud/management/service/handle/PaymentHandle.java
parents 92960e20 1797707f
...@@ -425,6 +425,8 @@ public class QueryOrdersResponse { ...@@ -425,6 +425,8 @@ public class QueryOrdersResponse {
private List<OrderPayItemResp> orderPayItemCreateReqList; private List<OrderPayItemResp> orderPayItemCreateReqList;
private List<OrderPayItem> orderPayItem; private List<OrderPayItem> orderPayItem;
private String pickUpGoodsNo;
@NoArgsConstructor @NoArgsConstructor
@Data @Data
public static class AddDeliveryInfo { public static class AddDeliveryInfo {
......
...@@ -43,13 +43,13 @@ public class PaymentSdkAdapter { ...@@ -43,13 +43,13 @@ public class PaymentSdkAdapter {
return refundRequestDTO; return refundRequestDTO;
} }
public MultiOrderRefundRequest getMultiOrderPayRefundRequest(QueryOrdersResponse.DataBean.OrderBean orderBean) { public MultiOrderRefundRequest getMultiOrderPayRefundRequest(QueryOrdersResponse.DataBean.OrderBean orderBean, BigDecimal refundAmount) {
MultiOrderRefundRequest multiQueryRequest = new MultiOrderRefundRequest(); MultiOrderRefundRequest multiQueryRequest = new MultiOrderRefundRequest();
multiQueryRequest.setStationId("1"); multiQueryRequest.setStationId("1");
multiQueryRequest.setPartnerId(orderBean.getCompanyId()); multiQueryRequest.setPartnerId(orderBean.getCompanyId());
multiQueryRequest.setStoreId(orderBean.getShopId()); multiQueryRequest.setStoreId(orderBean.getShopId());
multiQueryRequest.setFmId(""); multiQueryRequest.setFmId("");
multiQueryRequest.setRefundAmount(orderBean.getAmount()); multiQueryRequest.setRefundAmount(Long.valueOf(String.valueOf(refundAmount)));
multiQueryRequest.setRefundTradeNo(getRefundSerialNo().toString()); multiQueryRequest.setRefundTradeNo(getRefundSerialNo().toString());
multiQueryRequest.setStoreId(orderBean.getShopId()); multiQueryRequest.setStoreId(orderBean.getShopId());
multiQueryRequest.setNotifyUrl(refundNotifyCallback); multiQueryRequest.setNotifyUrl(refundNotifyCallback);
......
...@@ -142,19 +142,19 @@ public class PaymentHandle { ...@@ -142,19 +142,19 @@ public class PaymentHandle {
return payRefundResponse; return payRefundResponse;
} }
public PayRefundResponse multiRefund(QueryOrdersResponse.DataBean.OrderBean orderBean) { public PayRefundResponse multiRefund(QueryOrdersResponse.DataBean.OrderBean orderBean){
PayRefundStatus refundStatus = PayRefundStatus.SUCCESS; PayRefundStatus refundStatus=PayRefundStatus.SUCCESS;
MultiOrderRefundRequest multiOrderRefundRequest = paymentSdkAdapter.getMultiOrderPayRefundRequest(orderBean); MultiOrderRefundRequest multiOrderRefundRequest = paymentSdkAdapter.getMultiOrderPayRefundRequest(orderBean,getRefundAmount(orderBean));
MultiOrderRefundResponse multiOrderRefundResponse = mulitiPaymentClient.paymentApplicationRefund(multiOrderRefundRequest, orderBean.getCompanyId()); MultiOrderRefundResponse multiOrderRefundResponse = mulitiPaymentClient.paymentApplicationRefund(multiOrderRefundRequest,orderBean.getCompanyId());
if (multiOrderRefundResponse == null || multiOrderRefundResponse.getData() == null || !com.freemud.sdk.api.assortment.order.domain.ResponseCodeConstant.ORDER_PAY_RESPONSE_SUCCESS.equals(multiOrderRefundResponse.getCode())) { if (multiOrderRefundResponse == null || multiOrderRefundResponse.getData() == null || !com.freemud.sdk.api.assortment.order.domain.ResponseCodeConstant.ORDER_PAY_RESPONSE_SUCCESS.equals(multiOrderRefundResponse.getCode())) {
throw new OrderServiceException(ResponseResult.REFUND_EXCEPTION); throw new OrderServiceException(ResponseResult.REFUND_EXCEPTION);
} }
List<MultiOrderRefundResponse.RefundPlatformResponse> refundPlatformResponseList = multiOrderRefundResponse.getData().refundPlatformResponseList; List<MultiOrderRefundResponse.RefundPlatformResponse> refundPlatformResponseList = multiOrderRefundResponse.getData().refundPlatformResponseList;
refundPlatformResponseList = refundPlatformResponseList.stream().filter(m -> !m.getEbcode().equalsIgnoreCase("10102")).collect(Collectors.toList()); refundPlatformResponseList = refundPlatformResponseList.stream().filter(m -> !m.getEbcode().equalsIgnoreCase("10102")).collect(Collectors.toList());
if (null != refundPlatformResponseList && refundPlatformResponseList.size() > 0) { if(null != refundPlatformResponseList && refundPlatformResponseList.size()>0){
redisCache.save(RedisUtil.getPaymentTransIdSequenceKey(refundPlatformResponseList.get(0).getTransId()), orderBean.getOid(), 1L, TimeUnit.DAYS); redisCache.save(RedisUtil.getPaymentTransIdSequenceKey(refundPlatformResponseList.get(0).getTransId()),orderBean.getOid(),1L,TimeUnit.DAYS);
} }
return handlePayRefundResponse(refundStatus, multiOrderRefundRequest.getRefundTradeNo()); return handlePayRefundResponse(refundStatus,multiOrderRefundRequest.getRefundTradeNo());
} }
} }
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