package com.nova.sankuai.infra.utils.huifubao; import com.alibaba.fastjson.JSON; import com.nova.sankuai.infra.utils.huifubao.api.DefaultHeepayClient; import com.nova.sankuai.infra.utils.huifubao.api.HeepayClient; import com.nova.sankuai.infra.utils.huifubao.common.CertRequest; import com.nova.sankuai.infra.utils.huifubao.common.MyKey; import com.nova.sankuai.infra.utils.huifubao.request.BaseRequest; import com.nova.sankuai.infra.utils.huifubao.request.SignRequest; import com.nova.sankuai.infra.utils.huifubao.respone.SignResponse; import java.text.SimpleDateFormat; import java.util.Date; /** * * 该接口为快捷签约接口 * */ public class PageSign { public static void main(String[] args) { /** * 业务参数 **/ SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); SignRequest signRequest = new SignRequest(); /* 子商户号,大商户子商户模式必传 signRequest.setSub_merch_id("");*/ long tenDigitTimestamp = System.currentTimeMillis() / 1000; signRequest.setOut_trade_no(String.valueOf(tenDigitTimestamp)); signRequest.setOut_trade_time(sd.format(new Date())); //商户平台用户标识,自定义保证唯一 signRequest.setMerch_user_id("大白"); //必须是在汇付宝报备过的域名,不能含有端口号和IP signRequest.setNotify_url("https://www.heepay.com/notify"); //必须是在汇付宝报备过的域名,不能含有端口号和IP signRequest.setReturn_url("https://www.heepay.com/notify"); System.out.println("待加密------------------------------------------------------------------------>" + JSON.toJSONString(signRequest)); System.out.println(); //商户平台用户来源ip 非必传 //signRequest.setFrom_user_ip(""); //持卡人银行卡号,若传值页面自动代入 signRequest.setBank_card_no(""); //持卡人姓名,若传值页面自动代入 signRequest.setBank_user_name(""); //持卡人预留银行手机号,若传值页面自动代入 signRequest.setMobile(""); /** ** 公共请求参数 */ CertRequest certRequest = new CertRequest(); //请求URL certRequest.setServerUrl("https://pay.Heepay.com/API/PageSign/Index.aspx"); //商户编号,(汇付宝商户内码:七位整数数字) certRequest.setMerchantId("1664502"); //版本号:固定值 1.0 certRequest.setVersion("1.0"); //具体业务接口名称 certRequest.setMethod("heepay.agreement.bank.sign.page"); //商户私钥 certRequest.setPrivateKeyStr(MyKey.privateKeystr); //汇付宝公钥 certRequest.setPublicKeyStr(MyKey.publicKeystr); BaseRequest baseRequest = new BaseRequest(); baseRequest.setBiz_content(JSON.toJSONString(signRequest)); try { HeepayClient client = new DefaultHeepayClient(certRequest); SignResponse response = client.submitSign(baseRequest); System.out.println(); System.out.print(response.toString()); } catch (Exception e) { e.printStackTrace(); } } }