ParamsTools.java
4.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
package com.agg.h5game.tools;
import android.content.Context;
import com.stss.sdk.bean.STSSPayParams;
import com.stss.sdk.bean.STSSUserExtraData;
import com.stss.sdk.verify.STSSUToken;
import org.json.JSONException;
import org.json.JSONObject;
import java.util.HashMap;
import java.util.Map;
public class ParamsTools {
public static String getParams(Context context, STSSUToken token) {
HashMap<String, String> params = new HashMap<>();
params.put("isAppType", "Android");
params.put("cid", AggH5Tools.getLogicChannel(context, "sid"));
if (token != null) {
params.put("uid", token.getGame_uid());
params.put("game_uid", token.getGame_uid());
params.put("channel_uid", token.getChannel_uid());
params.put("token", token.getToken());
}
return mapToQueryString(params);
}
public static String mapToQueryString(HashMap<String, String> map) {
StringBuilder stringBuilder = new StringBuilder();
for (Map.Entry<String, String> entry : map.entrySet()) {
if (stringBuilder.length() > 0) {
stringBuilder.append("&");
}
stringBuilder.append(entry.getKey()).append("=").append(entry.getValue());
}
return stringBuilder.toString();
}
// JS调用Android 支付订单json转STSSPayParams
public static STSSUserExtraData jsonToSTSSUserExtraData(String jsonParams) {
STSSUserExtraData userExtraData = new STSSUserExtraData();
try {
JSONObject jsonObject = new JSONObject(jsonParams);
userExtraData.setDataType(jsonObject.getString("data_type"));
userExtraData.setServerID(jsonObject.getString("server_id"));
userExtraData.setServerName(jsonObject.getString("server_name"));
userExtraData.setRoleID(jsonObject.getString("role_id"));
userExtraData.setRoleName(jsonObject.getString("role_name"));
userExtraData.setRoleLevel(jsonObject.getString("role_level"));
userExtraData.setCreateTime(String.valueOf(jsonObject.getLong("role_create_time")));
userExtraData.setVipLv(String.valueOf(jsonObject.getInt("role_vip")));
userExtraData.setBalance(jsonObject.getString("role_balance"));
userExtraData.setGender(jsonObject.getString("role_gender"));
userExtraData.setOccupationId(jsonObject.getString("role_occupation_id"));
userExtraData.setOccupationName(jsonObject.getString("role_occupation_name"));
userExtraData.setPower(jsonObject.getString("role_power"));
userExtraData.setPartyId(jsonObject.getString("party_id"));
userExtraData.setPartyName(jsonObject.getString("party_name"));
userExtraData.setPartyMasterId(jsonObject.getString("party_master_id"));
userExtraData.setPartyMasterName(jsonObject.getString("party_master_name"));
userExtraData.setUpdateTime(String.valueOf(jsonObject.optLong("add_time")));
userExtraData.setExtension(jsonObject.getString("extension"));
} catch (JSONException e) {
e.printStackTrace();
}
return userExtraData;
}
// JS调用Android 支付订单json转STSSPayParams
public static STSSPayParams jsonToSTSSPayParams(String jsonString) {
AggH5Log.d("STSSAggSdk",jsonString);
STSSPayParams params = new STSSPayParams();
try {
JSONObject jsonObject = new JSONObject(jsonString);
params.setCpOrderId(jsonObject.optString("out_trade_no"));
params.setProductId(String.valueOf(jsonObject.optInt("product_id")));
params.setProductName(jsonObject.optString("product_name"));
params.setProductDesc(jsonObject.optString("product_desc"));
params.setPrice(jsonObject.optString("product_price"));
params.setRatio(jsonObject.optString("exchange_rate"));
params.setBuyNum(String.valueOf(jsonObject.optInt("product_count")));
params.setCurrencyName(jsonObject.optString("currency_name"));
params.setServerId(jsonObject.optString("server_id"));
params.setServerName(jsonObject.optString("server_name"));
params.setRoleId(jsonObject.optString("role_id"));
params.setRoleName(jsonObject.optString("role_name"));
params.setRoleLevel(jsonObject.optString("role_level"));
params.setCoinNum((int)Double.parseDouble(jsonObject.optString("role_balance"))+"");
params.setVip(String.valueOf(jsonObject.optInt("role_vip")));
params.setAddTime(String.valueOf(jsonObject.optLong("add_time")));
params.setCallBack(jsonObject.optString("call_back"));
params.setPayNotifyUrl(jsonObject.optString("notify_url"));
params.setExtension(jsonObject.optString("extension"));
} catch (JSONException e) {
e.printStackTrace();
}
return params;
}
}