You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

PaymentGwDemo.java 2.5KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. package io.renren.demo;
  2. import com.alibaba.fastjson.JSON;
  3. import io.renren.dto.temp.PaymentBankCardPayMethods;
  4. import io.renren.dto.temp.PaymentGwParams;
  5. import io.renren.dto.temp.PaymentGwResult;
  6. import io.renren.dto.temp.PaymentPayerInfo;
  7. import io.renren.dto.temp.TradeCreateResult;
  8. import io.renren.util.LLianPayClient;
  9. import io.renren.util.LLianPayConstant;
  10. import io.renren.util.LLianPayDateUtils;
  11. /**
  12. * 网关类支付 Demo
  13. */
  14. public class PaymentGwDemo {
  15. public static void main(String[] args) {
  16. TradeCreateResult tradeCreateResult = TradeCreateDemo.generalConsume();
  17. String timestamp = LLianPayDateUtils.getTimestamp();
  18. PaymentGwParams params = new PaymentGwParams();
  19. params.setTimestamp(timestamp);
  20. params.setOid_partner(LLianPayConstant.OidPartner);
  21. params.setTxn_seqno(tradeCreateResult.getTxn_seqno());
  22. params.setTotal_amount(tradeCreateResult.getTotal_amount());
  23. params.setRisk_item("{\"frms_ware_category\":\"4007\",\"goods_name\":\"用户充值\",\"user_info_mercht_userno\":\"LLianPayTest-In-User-12345\",\"user_info_dt_register\":\"20220823101239\",\"user_info_bind_phone\":\"13208002572\",\"user_info_full_name\":\"连连测试\",\"user_info_id_no\":\"\",\"user_info_identify_state\":\"0\",\"user_info_identify_type\":\"4\",\"user_info_id_type\":\"0\",\"frms_client_chnl\":\" H5\",\"frms_ip_addr\":\"127.0.0.1\",\"user_auth_flag\":\"1\"}");
  24. // 终端用户IP。支持IPV4和IPV6两种格式的IP地址。
  25. // 正式环境传用户真实的IP
  26. params.setClient_ip("127.0.0.1");
  27. // 银行编码。付款方式为网银类时可指定。
  28. //params.setBankcode("01040000");
  29. PaymentPayerInfo payerInfo = new PaymentPayerInfo();
  30. payerInfo.setPayer_type("USER");
  31. payerInfo.setPayer_id(tradeCreateResult.getUser_id());
  32. params.setPayerInfo(payerInfo);
  33. PaymentBankCardPayMethods payMethods = new PaymentBankCardPayMethods();
  34. // 企业网银
  35. payMethods.setMethod("EBANK_B2B");
  36. payMethods.setAmount(tradeCreateResult.getTotal_amount());
  37. params.setPayMethods(new PaymentBankCardPayMethods[]{payMethods});
  38. // 测试环境URL
  39. String url = "https://accpapi-ste.lianlianpay-inc.com/v1/txn/payment-gw";
  40. LLianPayClient lLianPayClient = new LLianPayClient();
  41. String resultJsonStr = lLianPayClient.sendRequest(url, JSON.toJSONString(params));
  42. PaymentGwResult paymentResult = JSON.parseObject(resultJsonStr, PaymentGwResult.class);
  43. System.out.println(paymentResult);
  44. }
  45. }