74 lines
2.1 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.cdzy.payment.service;
import com.alibaba.fastjson2.JSONObject;
import com.cdzy.payment.model.dto.AmountDto;
import com.cdzy.payment.model.dto.AmountRefundDto;
import com.cdzy.payment.model.dto.DetailDto;
import com.wechat.pay.java.service.payments.model.Transaction;
import com.wechat.pay.java.service.refund.model.Refund;
/**
* 微信支付服务类JSAPI支付小程序
*
* @author dingchao
* @date 2025/4/25
* @modified by:
*/
public interface WxPayService {
/**
* 关闭订单
*
* @param outTradeNo 商户(骑行)订单号
* @return
*/
boolean closeOrder(String outTradeNo);
/**
* JSAPI支付下单
*
* @param outTradeNo 商户(骑行)订单号
* @param description 商品描述
* @param goodsTag 商品标记
* @param openId 用户标识
* @param amount 金额
* @param detail 商品详情
* @param clientIp 客户端IP
* @return 下单成功返回true否则返回false
*/
JSONObject prepay(String outTradeNo, String description, String goodsTag, String openId, AmountDto amount, DetailDto detail, String clientIp);
/**
* 通过交易订单号查询支付订单
*
* @param transactionId 微信支付订单号
* @return 支付订单信息
*/
Transaction queryOrderById(String transactionId);
/**
* 通过商户(骑行)订单号查询支付订单
*
* @param outTradeNo 商户(骑行)订单号
* @return 支付订单信息
*/
Transaction queryOrderByOutTradeNo(String outTradeNo);
/**
* 退款申请
*
* @param transactionId 微信支付订单号
* @param outTradeNo 商户(骑行)订单号
* @param reason 退款原因
* @param amount 退款金额
* @return 退款信息id
*/
String refund(String transactionId, String outTradeNo, String reason, AmountRefundDto amount);
/**
* 通过商户退款单号查询退款信息
*
* @param outRefundNo 商户退款订单号
* @return 退款信息
*/
Refund queryRefundByOutNo(String outRefundNo);
}