xuhy
2024-08-22 5e1cf8e0e94b42a94c3a3d3ccda5147fe6ce94f0
ruoyi-api/ruoyi-api-payment/src/main/java/com/ruoyi/payment/api/feignClient/WxPaymentClient.java
New file
@@ -0,0 +1,62 @@
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.vo.NotifyV3PayDecodeRespBody;
import com.ruoyi.payment.api.vo.PaymentOrder;
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);
}