Commit c547495b by 周晓航

【【技术线】OMS订单同意退款删除商户配置的订单状态退款开关校验】

https://www.tapd.cn/43862731/prong/stories/view/1143862731001051139
parent 37cd71e3
...@@ -13,14 +13,14 @@ package com.freemud.sdk.api.assortment.order.enums; ...@@ -13,14 +13,14 @@ package com.freemud.sdk.api.assortment.order.enums;
* 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目 * 注意:本内容仅限于上海非码科技内部传阅,禁止外泄以及用于其他的商业目
*/ */
public enum PayRefundStatus { public enum PayRefundStatus {
SUCCESS(1,"退款成功"), SUCCESS(1, "退款成功"),
FAIL(2,"退款失败"), FAIL(2, "退款失败"),
RUNNING(4,"退款中"), RUNNING(4, "退款中"),
/** /**
* 额外状态码 用于判断逻辑, * 额外状态码 用于判断逻辑,
*/ */
NOT_SUFFICIENT_FUNDS(8200201,"余额不足"), NOT_SUFFICIENT_FUNDS(8200201, "余额不足"),
COMPATIBILITY_STATUS(9999999,"退款异常"); COMPATIBILITY_STATUS(9999999, "退款异常");
private Integer code; private Integer code;
private String desc; private String desc;
...@@ -44,6 +44,9 @@ public enum PayRefundStatus { ...@@ -44,6 +44,9 @@ public enum PayRefundStatus {
// 退款成功 // 退款成功
case 100: case 100:
return PayRefundStatus.SUCCESS; return PayRefundStatus.SUCCESS;
// 已退款订单 当做退款成功处理
case 101:
return PayRefundStatus.SUCCESS;
default: default:
return PayRefundStatus.FAIL; return PayRefundStatus.FAIL;
} }
......
package com.freemud.sdk.api.assortment.order.response.order; package com.freemud.sdk.api.assortment.order.response.order;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
...@@ -33,6 +32,10 @@ public class MultiOrderRefundResponse<T> { ...@@ -33,6 +32,10 @@ public class MultiOrderRefundResponse<T> {
* 退款成功 * 退款成功
*/ */
public static Integer REFUND_SUCCESS = 100; public static Integer REFUND_SUCCESS = 100;
/**
* 101已退款订单(当成功处理)
*/
public static Integer REFUND_SUCCESSED = 101;
private String endTransTradeNo; private String endTransTradeNo;
private String fmRefundNo; private String fmRefundNo;
private String fmTradeNo; private String fmTradeNo;
...@@ -50,7 +53,7 @@ public class MultiOrderRefundResponse<T> { ...@@ -50,7 +53,7 @@ public class MultiOrderRefundResponse<T> {
private String transId; private String transId;
private String ebcode; private String ebcode;
@ApiModelProperty(value = "业务返回码 8200305 代表退款中 100是成功 其他 都是失败") @ApiModelProperty(value = "业务返回码 8200305 代表退款中 100是成功 101已退款订单(当成功处理) 其他 都是失败")
private Integer resultCode; private Integer resultCode;
@ApiModelProperty(value = "业务返回消息") @ApiModelProperty(value = "业务返回消息")
......
...@@ -371,15 +371,15 @@ public class OrderVerifyHandle { ...@@ -371,15 +371,15 @@ public class OrderVerifyHandle {
//订单 //订单
boolean isRefundDeliveryFee=false; boolean isRefundDeliveryFee=false;
//saas渠道订单,已完成的订单不能操作, 商户配置已完成订单可退款可退款 //saas渠道订单,已完成的订单不能操作, 商户配置已完成订单可退款可退款
if (ObjectUtils.equals(orderBean.getSource(), OrderSourceV1.SAAS.getCode())) { // if (ObjectUtils.equals(orderBean.getSource(), OrderSourceV1.SAAS.getCode())) {
isCanRefund = getRefundConfig(orderBean); // isCanRefund = getRefundConfig(orderBean);
if (!isCanRefund) { // if (!isCanRefund) {
return ResponseUtil.error(ResponseResult.ORDER_HAD_AFFIRM_CAN_NOT_REFUND); // return ResponseUtil.error(ResponseResult.ORDER_HAD_AFFIRM_CAN_NOT_REFUND);
} // }
} // }
if (isCanRefund) { // if (isCanRefund) {
orderBean.setAmount(getRefundAmount(orderBean,isRefundDeliveryFee).longValue()); orderBean.setAmount(getRefundAmount(orderBean,isRefundDeliveryFee).longValue());
} // }
return ResponseUtil.success(); return ResponseUtil.success();
} }
......
...@@ -159,7 +159,9 @@ public class PaymentHandle { ...@@ -159,7 +159,9 @@ public class PaymentHandle {
MultiOrderRefundRequest multiOrderRefundRequest = paymentSdkAdapter.getMultiOrderPayRefundRequest(orderBean, getRefundAmount(orderBean)); MultiOrderRefundRequest multiOrderRefundRequest = paymentSdkAdapter.getMultiOrderPayRefundRequest(orderBean, getRefundAmount(orderBean));
MultiOrderRefundResponse multiOrderRefundResponse = mulitiPaymentClient.paymentApplicationRefund(multiOrderRefundRequest, orderBean.getCompanyId()); MultiOrderRefundResponse multiOrderRefundResponse = mulitiPaymentClient.paymentApplicationRefund(multiOrderRefundRequest, orderBean.getCompanyId());
String message = ""; String message = "";
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())) {
// fisherman 退款异常 也当做 退款中处理 // fisherman 退款异常 也当做 退款中处理
refundStatus = PayRefundStatus.RUNNING; refundStatus = PayRefundStatus.RUNNING;
} else { } else {
......
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