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.RefundReq; import com.ruoyi.payment.api.model.RefundResp; import com.ruoyi.payment.api.vo.AliPaymentReq; import com.ruoyi.payment.api.vo.AliPaymentResp; import com.ruoyi.payment.api.vo.AliQueryOrder; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; /** * @author zhibing.pu * @Date 2024/8/24 14:39 */ @FeignClient(contextId = "AliPaymentClient", value = ServiceNameConstants.PAYMENT_SERVICE, fallbackFactory = WxPaymentFallbackFactory.class) public interface AliPaymentClient { /** * 调起支付宝小程序支付 * @param req * @return */ @PostMapping("/ali/payment") R payment(AliPaymentReq req); /** * 查询支付订单 * @param outTradeNo * @return */ @PostMapping("/ali/query") R query(String outTradeNo); /** * 关闭订单 * @param outTradeNo */ @PostMapping("/ali/close") void close(String outTradeNo); /** * 后台退款 远程调用 */ @PostMapping("/ali/refund") public R refund(@RequestBody RefundReq dto); }