85 lines
2.2 KiB
Java
85 lines
2.2 KiB
Java
package com.ruoyi.system.service;
|
|
|
|
import com.ruoyi.system.domain.EtOrder;
|
|
import com.wechat.pay.java.service.payments.jsapi.model.PrepayWithRequestPaymentResponse;
|
|
import com.wechat.pay.java.service.payments.model.Transaction;
|
|
import com.wechat.pay.java.service.profitsharing.model.AddReceiverResponse;
|
|
import com.wechat.pay.java.service.profitsharing.model.CreateOrderReceiver;
|
|
import com.wechat.pay.java.service.profitsharing.model.DeleteReceiverResponse;
|
|
import com.wechat.pay.java.service.profitsharing.model.OrdersEntity;
|
|
import com.wechat.pay.java.service.refund.model.Refund;
|
|
|
|
import java.math.BigDecimal;
|
|
import java.util.List;
|
|
|
|
/**
|
|
* 微信支付服务接口
|
|
* @author 辉
|
|
* 2024/3/11
|
|
*/
|
|
public interface IWxPayService {
|
|
|
|
/**
|
|
* 生成微信预支付订单
|
|
* @param order 平台订单
|
|
* @return JSAPI调用
|
|
*/
|
|
PrepayWithRequestPaymentResponse prepayWithRequestPayment(String payType, EtOrder order);
|
|
|
|
|
|
/**
|
|
* 关闭订单
|
|
* @param billNo 平台订单编号
|
|
*/
|
|
void closeOrder(String billNo);
|
|
|
|
/**
|
|
* 通过微信订单id查询订单信息
|
|
* @param prePayId 微信订单id
|
|
* @return 订单信息
|
|
*/
|
|
Transaction queryOrderById(String prePayId);
|
|
|
|
/**
|
|
* 通过商户订单号查询订单信息
|
|
* @param outTradeNo 商户订单号
|
|
* @return 订单信息
|
|
*/
|
|
Transaction queryOrderByOutTradeNo(String outTradeNo);
|
|
|
|
/**
|
|
* 退款
|
|
* @param etOrder 原订单对象
|
|
* @param reason 退款原因
|
|
* @param amount 退款金额
|
|
*/
|
|
Refund refund(EtOrder etOrder, String reason, BigDecimal amount);
|
|
|
|
/**
|
|
* 根据退款单号查询退款信息
|
|
* @param outRefundNo 退款单号
|
|
*/
|
|
Refund queryByOutRefundNo(String outRefundNo);
|
|
|
|
|
|
/**
|
|
* 请求分账API
|
|
* @param transactionId 微信支付单号
|
|
* @param receivers 分账接收方
|
|
*/
|
|
public OrdersEntity createOrder(String transactionId, List<CreateOrderReceiver> receivers);
|
|
|
|
/**
|
|
* 添加分账接收方
|
|
* @param wxopenid openid
|
|
*/
|
|
AddReceiverResponse addReceiver(String wxopenid);
|
|
|
|
/**
|
|
* 删除分账接收方
|
|
* @param wxopenid openid
|
|
*/
|
|
DeleteReceiverResponse deleteReceiver(String wxopenid);
|
|
|
|
}
|