• 支付宝退款--服务端


    1、

    /**
         * 
         * @方法名称:alipayRefundRequest
         * @内容摘要: <支付宝退款请求>
         * @param out_trade_no 订单支付时传入的商户订单号,不能和 trade_no同时为空。
         * @param trade_no 支付宝交易号,和商户订单号不能同时为空
         * @param refund_amount 需要退款的金额,该金额不能大于订单金额,单位为元,支持两位小数
         */
        public String alipayRefundRequest(String out_trade_no,String trade_no,double refund_amount){
    
            // 发送请求
            String strResponse = null;
            try {
                AlipayClient alipayClient = new DefaultAlipayClient
                        (AlipayConfig.alipay_url,AlipayConfig.app_id,
                                AlipayConfig.private_key,AlipayConfig.content_type,AlipayConfig.input_charset,AlipayConfig.public_key);
                AlipayTradeRefundRequest request = new AlipayTradeRefundRequest();
                
                AlipayRefundInfo alidata= new AlipayRefundInfo();
                alidata.setOut_trade_no(out_trade_no);
    //            alidata.setRefund_amount(0.01);  //用于测试
                alidata.setRefund_amount(refund_amount);
                alidata.setTrade_no(trade_no);
                
                request.setBizContent(JSONObject.fromObject(alidata).toString());
                logger.info("////////////////////////////////////////////////----BizContent:"+JSONObject.fromObject(alidata).toString());
                AlipayTradeRefundResponse response = alipayClient.execute(request);
                strResponse=response.getCode();
                logger.info("////////////////////////////////////////////////----strResponse:"+strResponse);
                if ("10000".equals(response.getCode())) {
                    strResponse="退款成功";
                }else {
                    strResponse=response.getSubMsg();
                }
                
            } catch (Exception e) {
                e.printStackTrace();
                logger.info("///////////////////////////----exception:"+e);
    //            Logger.getLogger(getClass()).error("alipayRefundRequest", e);
            }
            return strResponse;
    
        }

    2、AlipayConfig.java

    package com.eland.util;
    
    /* *
     *类名:AlipayConfig
     *功能:基础配置类
     *详细:设置帐户有关信息及返回路径
     *版本:3.3
     *日期:2012-08-10
     *说明:
     *以下代码只是为了方便商户测试而提供的样例代码,商户可以根据自己网站的需要,按照技术文档编写,并非一定要使用该代码。
     *该代码仅供学习和研究支付宝接口使用,只是提供一个参考。
    
     *提示:如何获取安全校验码和合作身份者ID
     *1.用您的签约支付宝账号登录支付宝网站(www.alipay.com)
     *2.点击“商家服务”(https://b.alipay.com/order/myOrder.htm)
     *3.点击“查询合作者身份(PID)”、“查询安全校验码(Key)”
    
     *安全校验码查看时,输入支付密码后,页面呈灰色的现象,怎么办?
     *解决方法:
     *1、检查浏览器配置,不让浏览器做弹框屏蔽设置
     *2、更换浏览器或电脑,重新登录查询。
     */
    
    public class AlipayConfig {
    
        // 合作身份者ID,以2088开头由16位纯数字组成的字符串
        public static String partner = "2088xxxxxxxxxxxx";
        // 商户的私钥
        public static String private_key = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
        // 支付宝的公钥(固定)--取消
        public static String public_key = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDDI6d306Q8fIfCOaTXyiUeJHkrIvYISRcc73s3vF1ZT7XN8RNPwJxo8pWaJMmvyTn9N4HQ632qJBVHf8sxHi/fEsraprwCtzvzQETrNRwVxLO5jVmRGi60j8Ue1efIlzPXV9je9mkjzOmdssymZkh2QhUrCmZYI/FCEa3/cNMW0QIDAQAB";
    
    
        //支付宝的公钥(支付)
        public static String ali_public_key =xxx";
                                               
        //支付宝网关
        public static String alipay_url = "https://openapi.alipay.com/gateway.do";
        // 支付宝分配给开发者的应用ID
        public static String app_id = "2016xxxxxxxxxxx";
        
        public static String content_type = "JSON";
        
        
        // 调试用,创建TXT日志文件夹路径
        public static String log_path = "D:\";
        // 字符编码格式 目前支持 gbk 或 utf-8
        public static String input_charset = "utf-8";
        // 签名方式 不需修改
        public static String sign_type = "RSA";
    
    }
  • 相关阅读:
    工具类---xlsx文件读写
    2021上半年第二次作业总结
    2021上半年第一次作业总结
    C语言II博客作业04
    C语言II—作业03
    C语言II博客作业02
    C语言II博客作业01
    win7开启snmp服务实现监控过程展现
    台湾某医学会sql注入漏洞
    测试面试题(持续总结中)
  • 原文地址:https://www.cnblogs.com/doufuquanjia/p/5960341.html
Copyright © 2020-2023  润新知