package com.ruoyi.payment.api.feignClient;
|
|
import com.ruoyi.common.core.constant.ServiceNameConstants;
|
import com.ruoyi.common.core.domain.R;
|
import com.ruoyi.payment.api.factory.WxPaymentFallbackFactory;
|
import com.ruoyi.payment.api.model.WxPaymentRefundModel;
|
import com.ruoyi.payment.api.vo.NotifyV3PayDecodeRespBody;
|
import com.ruoyi.payment.api.vo.PaymentOrder;
|
import com.ruoyi.payment.api.vo.WxRefundNotifyResp;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.cloud.openfeign.FeignClient;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
import javax.servlet.http.HttpServletRequest;
|
import java.util.Map;
|
|
/**
|
* 充电订单服务
|
* @author ruoyi
|
*/
|
@FeignClient(contextId = "WxPaymentClient", value = ServiceNameConstants.PAYMENT_SERVICE, fallbackFactory = WxPaymentFallbackFactory.class)
|
public interface WxPaymentClient {
|
|
/**
|
* 查询支付订单信息
|
* @param orderId
|
* @return
|
*/
|
@PostMapping("/wx/query/queryOrderInfo")
|
R<NotifyV3PayDecodeRespBody> queryOrderInfo(String orderId);
|
|
|
/**
|
* 订单支付
|
* @param paymentOrder
|
* @return
|
*/
|
@PostMapping("/wx/orderPay")
|
R<Map<String, Object>> orderPay(@RequestBody PaymentOrder paymentOrder);
|
|
|
/**
|
* 支付回调
|
* @param request
|
* @return
|
*/
|
@PostMapping("/wx/pay/notify")
|
R<Map<String, Object>> payNotify(HttpServletRequest request);
|
|
/**
|
* 支付回调成功后的成功应答
|
*/
|
@PostMapping("/wx/pay/ack")
|
void ack();
|
|
|
/**
|
* 关闭订单
|
* @param outTradeNo
|
*/
|
@PostMapping("/wx/pay/close")
|
void close(String outTradeNo);
|
|
@ApiOperation("订单退款")
|
@PostMapping(value = "/wx/refundOrderR")
|
public R<String> refundOrderR(@RequestBody WxPaymentRefundModel model);
|
|
|
|
@ApiOperation("订单退款回调")
|
@PostMapping(value = "/wx/refund/notify")
|
R<WxRefundNotifyResp> refundNotify(HttpServletRequest request);
|
}
|