QrDemo.java
3.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
package com.sunyo.energy.location.demopay;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.util.HashMap;
import java.util.Map;
import com.google.gson.Gson;
import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.sunyo.energy.location.model.WaterMeter;
import net.sf.json.JSONObject;
import net.sf.json.util.JSONUtils;
import springfox.documentation.spring.web.json.Json;
public class QrDemo {
public static String orUrl(String orderId, String payMent) throws UnsupportedEncodingException {
String bankURL="https://ibsbjstar.ccb.com.cn/CCBIS/ccbMain";
/**
* 商户代码
*/
String MERCHANTID = "105000045820502";
// String MERCHANTID = "105001453995827";
/**
* 商户柜台代码
*/
String POSID = "049347762";
// String POSID = "031575220";
/**
* 分行代码
*/
// String BRANCHID = "410803805";
String BRANCHID = "410000000";
/**
* 货币种类 01 人民币 只支持人民币
*/
String CURCODE="01";
/**
* 交易码
*/
String TXCODE = "530550";
String REMARK1 = "";
String REMARK2 = "";
/**
* 返回类型
*/
String RETURNTYPE="3";
String TIMEOUT = "";
/**
* 应柜台的公钥后30位
*/
String PUB32TR2= "57b3055539f4925efaf9dacb020111";
// String PUB32TR2= "8578d1cd9340dba556126a71020111";
StringBuffer tmp = new StringBuffer(); //ÑéÇ©×Ö¶Î
tmp.append("MERCHANTID=");
tmp.append(MERCHANTID);
tmp.append("&POSID=");
tmp.append(POSID);
tmp.append("&BRANCHID=");
tmp.append(BRANCHID);
tmp.append("&ORDERID=");
tmp.append(orderId);
tmp.append("&PAYMENT=");
tmp.append(payMent);
tmp.append("&CURCODE=");
tmp.append(CURCODE);
tmp.append("&TXCODE=");
tmp.append(TXCODE);
tmp.append("&REMARK1=");
tmp.append(REMARK1);
tmp.append("&REMARK2=");
tmp.append(REMARK2);
tmp.append("&RETURNTYPE=");
tmp.append(RETURNTYPE);
tmp.append("&TIMEOUT=");
tmp.append(TIMEOUT);
tmp.append("&PUB=");
tmp.append(PUB32TR2);
Map map = new HashMap();
map.put("CCB_IBSVersion","V6"); //±ØÊäÏî
map.put("MERCHANTID",MERCHANTID);
map.put("BRANCHID",BRANCHID);
map.put("POSID",POSID);
map.put("ORDERID",orderId);
map.put("PAYMENT",payMent);
map.put("CURCODE",CURCODE);
map.put("TXCODE",TXCODE);
map.put("REMARK1",REMARK1);
map.put("REMARK2",REMARK2);
map.put("RETURNTYPE",RETURNTYPE);
map.put("TIMEOUT",TIMEOUT);
map.put("MAC",MD5.md5Str(tmp.toString()));
String ret = HttpClientUtil.httpPost(bankURL, map);
Gson gson = new Gson();
QrURLDemo qrurl = (QrURLDemo) gson.fromJson(ret, QrURLDemo.class);
String rets = HttpClientUtil.httpGet(qrurl.getPAYURL(), "UTF-8");
JSONObject jsonObject = JSONObject.fromObject(rets);
String qrurl1 = URLDecoder.decode(jsonObject.get("QRURL").toString(), "UTF-8");
return qrurl1;
}
}