天天看点

微信支付退款 升级版 【码云gvp 】

    好久没有更新博客了 今天偶然发现自己的框架篇还有一个微信支付没写 也算是自己的笔记了 就来补上了

    微信的支付退款 提现 我已经换成了班纳睿大大的WxJava了 码云地址

   我这里只采用了最简单的支付 以及退款

   框架是采取的springboot的自动装配

   直接上代码

   pom

<dependency>
            <groupId>com.github.binarywang</groupId>
            <artifactId>weixin-java-pay</artifactId>
            <version>3.4.0</version>
        </dependency>
           

 配置文件(yml)

wx:
  pay:
    appId: appID
    mchId: 商户号
    mchKey: key
    subAppId:
    subMchId:
    keyPath: 证书
    notifyUrl: www.liliubing.cn
           

证书在windows环境需要安装 密码就是商户号 Linux直接绝对路径就可以了

/**
     * 微信原路返回
     * @return
     */
    public ResponseResult<String> wxPay(RefundDto dto) throws Exception{
        log.info("微信退款");
        WxPayRefundRequest wxPayRefundRequest = new WxPayRefundRequest();
        wxPayRefundRequest.setOutTradeNo(dto.getOutTranNum());//支付流水号
        wxPayRefundRequest.setOutRefundNo(dto.getOutTranNum());//退款流水号
        wxPayRefundRequest.setTotalFee(Integer.valueOf(dto.getTootleMoney()));//支付金额
        wxPayRefundRequest.setRefundFee(Integer.valueOf(dto.getMoney()));//退款金额
        WxPayRefundResult refundRequest = wxPayService.refund(wxPayRefundRequest);
        System.out.println(refundRequest);
        if(refundRequest.getReturnCode().equals("SUCCESS")){
            //成功
            log.info("退款成功");
            return ResponseResult.success();
        }else{
            //失败
            log.info("退款失败");
            return ResponseResult.failNotice("退款失败");
        }
    }
           

这个里面不需要配置任何商户号appid之类的 他们会自动装配好 只需要 填入必须参数 outtrannum是支付的时候的流水号 支付金额 以及退款金额  退款编号自动生成就可以了