Commit c1316b46 by ping.wu

退款接口返回类修改

parent 71b1155b
......@@ -147,6 +147,7 @@ public class PayServiceImpl {
private static final Integer MULITI_RESPONSE = 200;
private static final String SUCCESS = "SUCCESS";
public static final Integer SUCCESS_RESPONSE_CODE_INT = 100;
public static final Integer SUCCESS_RESPONSE_101_CODE_INT = 101;
public static final Integer REFUND_RESPONSE_CODE = 8200305;
/**
......@@ -1327,11 +1328,10 @@ public class PayServiceImpl {
// request.setAccountDivided(receiveJsonStr);
// }
com.freemud.application.sdk.api.base.BaseResponse<PayRefundResponseDto> refundNewResponse = omsPaymentClient.payRefund(request);
if (Objects.equals(refundNewResponse.getCode(), "100") || Objects.equals(refundNewResponse.getCode(), "101")) {
PayRefundResponseDto res = refundNewResponse.getData();
if (null != res && null != res.getData()) {
PayRefundData refundData = res.getData();
com.freemud.application.sdk.api.base.BaseResponse<PayRefundData> refundNewResponse = omsPaymentClient.payRefund(request);
if (Objects.equals(refundNewResponse.getCode(), "100")) {
PayRefundData refundData = refundNewResponse.getData();
if (null != refundData ) {
OrderRefundResponse refundResponse = new OrderRefundResponse();
refundResponse.setStatusCode(refundData.getResultCode());
refundResponse.setMsg(refundData.getResultMsg());
......@@ -1357,17 +1357,11 @@ public class PayServiceImpl {
}
// public Integer getRefundStatus(Integer resultCode) {
// if (Objects.equals(resultCode, ResponseConstant.SUCCESS_RESPONSE_CODE_INT)) {
// return PaymentRefundStatus.PAYMENT_REFUND_STATUS_1.getCode();
// } else {
// return Objects.equals(resultCode, ResponseConstant.REFUND_RESPONSE_CODE) ? PaymentRefundStatus.PAYMENT_REFUND_STATUS_4.getCode() : PaymentRefundStatus.PAYMENT_REFUND_STATUS_2.getCode();
// }
// }
public Integer getRefundStatus(Integer resultCode) {
if (Objects.equals(resultCode, SUCCESS_RESPONSE_CODE_INT)) {
return PaymentRefundStatus.PAYMENT_REFUND_STATUS_1.getCode();
} else if (Objects.equals(resultCode, SUCCESS_RESPONSE_101_CODE_INT)) {
return PaymentRefundStatus.PAYMENT_REFUND_STATUS_1.getCode();
} else {
return Objects.equals(resultCode, REFUND_RESPONSE_CODE) ? PaymentRefundStatus.PAYMENT_REFUND_STATUS_4.getCode() : PaymentRefundStatus.PAYMENT_REFUND_STATUS_2.getCode();
}
......
......@@ -54,6 +54,7 @@ public class PaymentHandle {
private static final String SUCCESS = "100";
public static final Integer SUCCESS_RESPONSE_CODE_INT = 100;
public static final Integer SUCCESS_RESPONSE_101_CODE_INT = 101;
public static final Integer REFUND_RESPONSE_CODE = 8200305;
......@@ -125,7 +126,7 @@ public class PaymentHandle {
return handlePayRefundResponse(refundStatus, refundRequest.getRefundId());
}
// com.freemud.application.sdk.api.base.BaseResponse<RefundNewResponse> orderRefundResponse;
BaseResponse<PayRefundResponseDto> orderRefundResponse;
BaseResponse<PayRefundData> orderRefundResponse;
try {
// orderRefundResponse = paymentNewService.newOrderRefund(refundRequest, LogThreadLocal.getTrackingNo());
orderRefundResponse = paymentNewClient.payRefund(refundRequest);
......@@ -133,17 +134,17 @@ public class PaymentHandle {
ErrorLog.errorConvertJson(this.getClass(), "paymentNewService.newOrderRefundError", ex);
throw new OrderServiceException(ResponseResult.REFUND_EXCEPTION);
}
if (orderRefundResponse == null) {
if (orderRefundResponse == null || orderRefundResponse.getData() == null) {
throw new OrderServiceException(ResponseResult.REFUND_EXCEPTION);
}
if (ObjectUtils.equals(orderRefundResponse.getCode(), "101")) {
refundStatus = ObjectUtils.equals(PayRefundStatus.SUCCESS.getCode(), orderRefundResponse.getData().getCode()) ? PayRefundStatus.SUCCESS : PayRefundStatus.FAIL;
return handlePayRefundResponse(refundStatus, refundRequest.getRefundId());
}
if (ObjectUtils.notEqual(orderRefundResponse.getCode(), SUCCESS)) {
throw new OrderServiceException(ResponseResult.REFUND_FAIL, orderRefundResponse.getMessage());
}
refundStatus = ObjectUtils.equals(PayRefundStatus.SUCCESS.getCode(), orderRefundResponse.getData().getCode()) ? PayRefundStatus.SUCCESS : PayRefundStatus.FAIL;
if (ObjectUtils.equals(orderRefundResponse.getData().getResultCode(), 101)) {
refundStatus = PayRefundStatus.SUCCESS;
return handlePayRefundResponse(refundStatus, refundRequest.getRefundId());
}
refundStatus = ObjectUtils.equals(orderRefundResponse.getData().getResultCode(), 100) ? PayRefundStatus.SUCCESS : PayRefundStatus.FAIL;
return handlePayRefundResponse(refundStatus, refundRequest.getRefundId());
}
......@@ -228,14 +229,14 @@ public class PaymentHandle {
}
public com.freemud.application.sdk.api.base.BaseResponse<OrderRefundResponse> orderRefundNew(PayRefundRequestDto refundRequest) {
public BaseResponse<OrderRefundResponse> orderRefundNew(PayRefundRequestDto refundRequest) {
PaymentQueryOrderRequestDto paymentQueryOrderRequest = new PaymentQueryOrderRequestDto();
paymentQueryOrderRequest.setPartnerId(refundRequest.getPartnerId());
paymentQueryOrderRequest.setStoreId(refundRequest.getStoreId());
paymentQueryOrderRequest.setFrontTransId(refundRequest.getOrgTransId());
com.freemud.application.sdk.api.base.BaseResponse<PaymentQueryOrderResponseDto> payQueryOrderResponse = paymentNewClient.payQueryOrder(paymentQueryOrderRequest);
BaseResponse<PaymentQueryOrderResponseDto> payQueryOrderResponse = paymentNewClient.payQueryOrder(paymentQueryOrderRequest);
Long vipAmount = 0L;
String payCode = null;
if (Objects.equals(payQueryOrderResponse.getCode(), "100") && payQueryOrderResponse.getData() != null) {
......@@ -276,27 +277,24 @@ public class PaymentHandle {
// request.setAccountDivided(receiveJsonStr);
// }
com.freemud.application.sdk.api.base.BaseResponse<PayRefundResponseDto> refundNewResponse = paymentNewClient.payRefund(request);
if (Objects.equals(refundNewResponse.getCode(), "100") || Objects.equals(refundNewResponse.getCode(), "101")) {
PayRefundResponseDto res = refundNewResponse.getData();
BaseResponse<PayRefundData> refundNewResponse = paymentNewClient.payRefund(request);
if (Objects.equals(refundNewResponse.getCode(), "100")) {
PayRefundData refundData = refundNewResponse.getData();
if (null != refundData) {
OrderRefundResponse refundResponse = new OrderRefundResponse();
refundResponse.setStatusCode(100);
refundResponse.setRefundStatus(PaymentRefundStatus.PAYMENT_REFUND_STATUS_1.getCode());
if (null != res && null != res.getData()) {
PayRefundData refunData = res.getData();
refundResponse.setStatusCode(refunData.getResultCode());
refundResponse.setMsg(refunData.getResultMsg());
refundResponse.setRefundAmount(refunData.getRefundAmount());
refundResponse.setTotalAmount(refunData.getTotalAmount());
refundResponse.setRefundStatus(this.getRefundStatus(refunData.getResultCode()));
refundResponse.setRefundTradeNo(refunData.getRefundTradeNo());
refundResponse.setTradeNo(refunData.getRefundTradeNo());
refundResponse.setThirdPartRefundTradeNo(refunData.getThirdPartRefundTradeNo());
refundResponse.setThirdPartTradeNo(refunData.getThirdPartTradeNo());
refundResponse.setTotalAmount(refunData.getTotalAmount());
}
refundResponse.setStatusCode(refundData.getResultCode());
refundResponse.setMsg(refundData.getResultMsg());
refundResponse.setRefundAmount(refundData.getRefundAmount());
refundResponse.setTotalAmount(refundData.getTotalAmount());
refundResponse.setRefundStatus(this.getRefundStatus(refundData.getResultCode()));
refundResponse.setRefundTradeNo(refundData.getRefundTradeNo());
refundResponse.setTradeNo(refundData.getRefundTradeNo());
refundResponse.setThirdPartRefundTradeNo(refundData.getThirdPartRefundTradeNo());
refundResponse.setThirdPartTradeNo(refundData.getThirdPartTradeNo());
refundResponse.setTotalAmount(refundData.getTotalAmount());
return ResponseUtils.success(refundResponse);
}
}
if (!Arrays.asList("8200201", "8200202", "8200203", "8200204", "8200205").contains(refundNewResponse.getCode())) {
// this.emailAlertService.sendEmailAlert("支付退款失败", "请求json:" + JSONObject.toJSONString(request) + "返回msg:" + refundNewResponse.getMessage());
......@@ -323,6 +321,8 @@ public class PaymentHandle {
public Integer getRefundStatus(Integer resultCode) {
if (Objects.equals(resultCode, SUCCESS_RESPONSE_CODE_INT)) {
return PaymentRefundStatus.PAYMENT_REFUND_STATUS_1.getCode();
}else if (Objects.equals(resultCode, SUCCESS_RESPONSE_101_CODE_INT)) {
return PaymentRefundStatus.PAYMENT_REFUND_STATUS_1.getCode();
} else {
return Objects.equals(resultCode, REFUND_RESPONSE_CODE) ? PaymentRefundStatus.PAYMENT_REFUND_STATUS_4.getCode() : PaymentRefundStatus.PAYMENT_REFUND_STATUS_2.getCode();
}
......
......@@ -3,8 +3,9 @@ package cn.freemud.management.thirdparty;
import cn.freemud.management.annotations.LogIgnoreFeign;
import cn.freemud.management.entities.dto.request.pay.PayRefundRequestDto;
import cn.freemud.management.entities.dto.request.pay.PaymentQueryOrderRequestDto;
import cn.freemud.management.entities.dto.response.pay.PayRefundResponseDto;
import cn.freemud.management.entities.dto.response.pay.PayRefundData;
import cn.freemud.management.entities.dto.response.pay.PaymentQueryOrderResponseDto;
import com.freemud.application.sdk.api.base.BaseResponse;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
......@@ -45,12 +46,12 @@ public interface OMSPaymentClient {
*/
@LogIgnoreFeign(logMessage="payQueryOrder")
@PostMapping("paymentcenter/queryOrder")
com.freemud.application.sdk.api.base.BaseResponse<PaymentQueryOrderResponseDto> payQueryOrder(@RequestBody PaymentQueryOrderRequestDto request);
BaseResponse<PaymentQueryOrderResponseDto> payQueryOrder(@RequestBody PaymentQueryOrderRequestDto request);
/**
* 现金支付退款接口
*/
@LogIgnoreFeign(logMessage="payRefund")
@PostMapping("paymentcenter/refund")
com.freemud.application.sdk.api.base.BaseResponse<PayRefundResponseDto> payRefund(@RequestBody PayRefundRequestDto request);
BaseResponse<PayRefundData> payRefund(@RequestBody PayRefundRequestDto request);
}
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