2025-10-17 17:32:20 +08:00
|
|
|
|
package com.cdzy.payment.service;
|
|
|
|
|
|
|
2025-10-24 10:09:53 +08:00
|
|
|
|
import com.cdzy.payment.model.vo.EbikeWxHandleNotifyVo;
|
2025-11-19 17:37:01 +08:00
|
|
|
|
import com.ebike.feign.model.dto.FeignEbikeRefundDto;
|
2025-10-30 09:21:18 +08:00
|
|
|
|
import com.fasterxml.jackson.databind.JsonNode;
|
2025-10-17 17:32:20 +08:00
|
|
|
|
import com.wechat.pay.java.service.payments.model.Transaction;
|
|
|
|
|
|
import com.wechat.pay.java.service.refund.model.Refund;
|
|
|
|
|
|
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 微信支付服务类(JSAPI支付),小程序
|
|
|
|
|
|
*
|
2025-11-14 16:24:04 +08:00
|
|
|
|
* @author yanglei
|
|
|
|
|
|
* @since 2025-10-17 09:22
|
2025-10-17 17:32:20 +08:00
|
|
|
|
*/
|
|
|
|
|
|
|
2025-10-24 10:09:53 +08:00
|
|
|
|
public interface EbikeWxPayService {
|
2025-10-17 17:32:20 +08:00
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 关闭订单
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param outTradeNo 商户(骑行)订单号
|
2025-10-21 09:57:21 +08:00
|
|
|
|
* @return true 成功 false 失败
|
2025-10-17 17:32:20 +08:00
|
|
|
|
*/
|
|
|
|
|
|
boolean closeOrder(String outTradeNo);
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* JSAPI支付下单
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param orderId 订单id
|
|
|
|
|
|
* @return 下单成功返回wx支付请求参数,否则返回null
|
|
|
|
|
|
*/
|
2025-10-30 09:21:18 +08:00
|
|
|
|
JsonNode prepay(Long orderId);
|
2025-10-17 17:32:20 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 通过支付订单号查询支付订单
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param outTradeNo 支付订单号
|
|
|
|
|
|
* @return 支付订单信息
|
|
|
|
|
|
*/
|
|
|
|
|
|
Transaction queryOrderByOutTradeNo(String outTradeNo);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 通过商户(骑行)订单号查询支付订单
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param orderId 商户(骑行)订单号
|
|
|
|
|
|
* @return 支付订单信息
|
|
|
|
|
|
*/
|
2025-10-29 17:01:46 +08:00
|
|
|
|
Transaction queryOrderByOrderId(Long orderId);
|
2025-10-17 17:32:20 +08:00
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 通过订单号查询支付订单状态
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param orderId 商户(骑行)订单号
|
|
|
|
|
|
* @return 支付订单信息
|
|
|
|
|
|
*/
|
2025-10-29 17:01:46 +08:00
|
|
|
|
EbikeWxHandleNotifyVo queryOrderStatusByOrderId(Long orderId);
|
2025-10-17 17:32:20 +08:00
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 处理支付回调
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param request 回调请求
|
|
|
|
|
|
* @return 支付订单信息
|
|
|
|
|
|
*/
|
2025-10-24 10:09:53 +08:00
|
|
|
|
EbikeWxHandleNotifyVo handlePayNotify(HttpServletRequest request);
|
2025-10-17 17:32:20 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 调用微信退款接口
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param refundDto 退款请求
|
|
|
|
|
|
* @return 退款信息id
|
|
|
|
|
|
*/
|
2025-11-19 17:37:01 +08:00
|
|
|
|
EbikeWxHandleNotifyVo refund(FeignEbikeRefundDto refundDto);
|
2025-10-17 17:32:20 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 通过商户退款id查询退款信息
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param refundId 商户退款订主键
|
|
|
|
|
|
* @return 退款信息
|
|
|
|
|
|
*/
|
2025-10-22 10:13:57 +08:00
|
|
|
|
Refund queryRefundById(Long refundId);
|
2025-10-17 17:32:20 +08:00
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 通过商户退款单号查询退款信息
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param outTradeNo 商户退款订单号
|
|
|
|
|
|
* @return 退款信息
|
|
|
|
|
|
*/
|
|
|
|
|
|
Refund queryRefundByOutTradeNo(String outTradeNo);
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 通过退款记录主键id查询退款信息状态
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param refundId 退款记录主键id
|
|
|
|
|
|
* @return 退款状态信息
|
|
|
|
|
|
*/
|
2025-10-24 10:09:53 +08:00
|
|
|
|
EbikeWxHandleNotifyVo queryRefundStatusById(Long refundId);
|
2025-10-17 17:32:20 +08:00
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
* 处理支退款回调
|
|
|
|
|
|
*
|
|
|
|
|
|
* @param request 回调请求
|
|
|
|
|
|
* @return 退款订单信息
|
|
|
|
|
|
*/
|
2025-10-24 10:09:53 +08:00
|
|
|
|
EbikeWxHandleNotifyVo handleRefundNotify(HttpServletRequest request);
|
2025-10-17 17:32:20 +08:00
|
|
|
|
|
|
|
|
|
|
}
|