易宝支付 java_易宝支付工具类

[java]代码库package utils;

public class PaymentUtil {

/**

* 生成hmac方法

*

* @param p0_Cmd

* 业务类型

* @param p1_MerId

* 商户编号

* @param p2_Order

* 商户订单ID号

* @param p3_Amt

* 支付金额

* @param p4_Cur

* 交易币种

* @param p5_Pid

* 商品名称

* @param p6_Pcat

* 商品种类

* @param p7_Pdesc

* 商品描述

* @param p8_Url

* 商户接受支付成功后的地址

* @param p9_SAF

* 送货地址

* @param pa_MP

* 商户扩展信息

* @param pd_FrpId

* 银行编码

* @param pr_NeedResponse

* 应答机制

* @param keyValue

* 商户密钥

* @return

*/

public static String createHmac(String p0_Cmd, String p1_MerId,

String p2_Order, String p3_Amt, String p4_Cur, String p5_Pid,

String p6_Pcat, String p7_Pdesc, String p8_Url, String p9_SAF,

String pa_MP, String pd_FrpId, String pr_NeedResponse,

String keyValue) {

StringBuffer sValue = new StringBuffer();

sValue.append(p0_Cmd);

sValue.append(p1_MerId);

sValue.append(p2_Order);

sValue.append(p3_Amt);

sValue.append(p4_Cur);

sValue.append(p5_Pid);

sValue.append(p6_Pcat);

sValue.append(p7_Pdesc);

sValue.append(p8_Url);

sValue.append(p9_SAF);

sValue.append(pa_MP);

sValue.append(pd_FrpId);

sValue.append(pr_NeedResponse);

String resultValue = DigestUtil.hmacSign(sValue.toString(), keyValue);

return resultValue;

}

/**

* 返回校验hmac方法

*

* @param hmac

* 支付网关发来的加密验证码

* @param p1_MerId

* 商户编号

* @param r0_Cmd

* 业务类型

* @param r1_Code

* 支付结果

* @param r2_TrxId

* 易宝支付交易流水号

* @param r3_Amt

* 支付金额

* @param r4_Cur

* 交易币种

* @param r5_Pid

* 商品名称

* @param r6_Order

* 商户订单号

* @param r7_Uid

* 易宝支付会员ID

* @param r8_MP

* 商户扩展信息

* @param r9_BType

* 交易结果返回类型

* @param keyValue

* 密钥

* @return

*/

public static boolean verifyCallback(String hmac, String p1_MerId,

String r0_Cmd, String r1_Code, String r2_TrxId, String r3_Amt,

String r4_Cur, String r5_Pid, String r6_Order, String r7_Uid,

String r8_MP, String r9_BType, String keyValue) {

StringBuffer sValue = new StringBuffer();

// 商户编号

sValue.append(p1_MerId);

// 业务类型

sValue.append(r0_Cmd);

// 支付结果

sValue.append(r1_Code);

// 易宝支付交易流水号

sValue.append(r2_TrxId);

// 支付金额

sValue.append(r3_Amt);

// 交易币种

sValue.append(r4_Cur);

// 商品名称

sValue.append(r5_Pid);

// 商户订单号

sValue.append(r6_Order);

// 易宝支付会员ID

sValue.append(r7_Uid);

// 商户扩展信息

sValue.append(r8_MP);

// 交易结果返回类型

sValue.append(r9_BType);

String sNewString = DigestUtil.hmacSign(sValue.toString(), keyValue);

if (hmac.equals(sNewString)) {

return true;

}

return false;

}

}

694748ed64b9390909c0d88230893790.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值