Commit a351c534 by box

三方券订单退款退券

parent e9b9495d
......@@ -20,6 +20,7 @@ import cn.freemud.management.thirdparty.EcologyAdapterClient;
import cn.freemud.management.thirdparty.OrderCallbackClient;
import cn.freemud.management.thirdparty.request.ecology.adapter.CancelRedeemCouponRequest;
import cn.freemud.management.thirdparty.response.Result;
import cn.freemud.management.thirdparty.response.ecology.adapter.CancelRedeemCouponResponse;
import cn.freemud.management.util.ResponseUtil;
import com.alibaba.fastjson.JSONObject;
import com.freemud.application.sdk.api.log.ApiLog;
......@@ -219,6 +220,13 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
*/
@Override
public BaseResponse<OrderManagerResponse> orderReject(OrderManagerRequest request, OrderBeanV1 orderBean) {
// 三方券支付冲正
try {
this.thirdCouponRefund(request, orderBean);
} catch (Exception e) {
return ResponseUtil.error(e.getMessage());
}
PayRefundResponse refundResponse = null;
// 支付退款 包括线上小程序付款的订单,订单宝其他支付方式收款(汇来米,收钱吧,现金,其他)
refundResponse = this.payRefundCommon(request, orderBean);
......@@ -319,10 +327,18 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
req.setOperator(request.getOperator());
coupon.getCouponCodes().forEach(code -> {
req.setCode(code);
Result<Object> result = ecologyAdapterClient.couponCancel(req);
Result<CancelRedeemCouponResponse> result = ecologyAdapterClient.couponCancel(req);
ApiLog.infoMessage("冲正三方券:req:{},resp:{}", JSONObject.toJSONString(result), JSONObject.toJSONString(result));
if (!result.isStatus()) {
throw new RuntimeException("撤销核销失败,请重试");
}
if (result.getResult().getCancelResult().equals(CancelRedeemCouponResponse.Result.SUCCESS)) {
return;
}
if (result.getResult().getCancelResult().equals(CancelRedeemCouponResponse.Result.TIME_LIMITED)) {
throw new RuntimeException("核销时间超过可冲正期限,撤销核销失败");
}
throw new RuntimeException("撤销核销失败,请重试");
});
}
......@@ -493,6 +509,12 @@ public class SaasOrderMangerServiceImpl implements OrderManagerService {
}
public BaseResponse<OrderManagerResponse> posCancel(OrderBeanV1 order, OrderManagerRequest request) {
// 三方券支付冲正
try {
this.thirdCouponRefund(request, order);
} catch (Exception e) {
return ResponseUtil.error(e.getMessage());
}
//调用cancel接口,商家退款
OrderCancelReq orderCancelReq = new OrderCancelReq();
orderCancelReq.setPartnerId(order.getCompanyId());
......
......@@ -2,6 +2,7 @@ package cn.freemud.management.thirdparty;
import cn.freemud.management.thirdparty.request.ecology.adapter.CancelRedeemCouponRequest;
import cn.freemud.management.thirdparty.response.Result;
import cn.freemud.management.thirdparty.response.ecology.adapter.CancelRedeemCouponResponse;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
......@@ -10,5 +11,5 @@ import org.springframework.web.bind.annotation.PostMapping;
public interface EcologyAdapterClient {
@PostMapping(value = "/ecologyadapter/coupon/cancel")
Result<Object> couponCancel(CancelRedeemCouponRequest req);
Result<CancelRedeemCouponResponse> couponCancel(CancelRedeemCouponRequest req);
}
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