微信支付退款功能
前几天不是刚做了支付吗,但是没有退款后来又想想小程序没有退款这个支付功能就不算完美,所以又怼了个退款,依旧以前的风格,话不多说直接开怼。
- 首先退款跟支付一样会有一些必传参数,但是不同的是微信支付的退款请求的时候需要携带证书才能够退款成功,必传参数我就不列出了,下图是下载证书的地方因为申请证书的时候没在我的电脑上所以看不到下载。
有下载的这个证书下载下来是个压缩包,就是下面这个样子
证书下载的时候名称会有标准例如:0000011111(商户id)_20200101(当前日期)_cert,这是名称规则。
然后解压缩:
解压缩完了会有这几个文件,官方文档说明是pem文件是PHP开发用的包括key.pem这个文件都是PHP语言的,其他语言只用.p12这个证书就行了。
2.这些东西都准备好之后就可以开始我们愉快的代码时间了;
public AjaxResult wxRefund(Long participantId) throws Exception {
// 校验订单信息
SysCarpoolParticipant sysCarpoolParticipant = sysCarpoolParticipantMapper.selectSysCarpoolParticipantById(participantId);
if (sysCarpoolParticipant.getPaymentStatus() == 0) {
return AjaxResult.error("该订单未支付");
}
String orderId = sysCarpoolParticipant.getOutTradeNo()