package com.ks.tool.bkz.util;
|
|
import com.alibaba.fastjson.JSONArray;
|
import com.alibaba.fastjson.JSONObject;
|
import com.google.gson.Gson;
|
import com.google.gson.reflect.TypeToken;
|
import com.ks.tool.bkz.dto.FirstOrderSubInfoDTO;
|
|
import java.lang.reflect.Type;
|
import java.util.HashMap;
|
import java.util.Iterator;
|
import java.util.List;
|
import java.util.Map;
|
|
public class FirstOrderSubDataUtil {
|
|
/**
|
* 解析商品数据
|
*
|
* @param data
|
* @return
|
*/
|
public static List<FirstOrderSubInfoDTO> parseOrderSubData(String data) {
|
JSONObject dataJSON = JSONObject.parseObject(data);
|
JSONObject resultValue = dataJSON.getJSONObject("data").getJSONObject("resultValue");
|
|
for (Iterator<String> its = resultValue.keySet().iterator(); its.hasNext(); ) {
|
String key = its.next();
|
if (NumberUtil.isNumeric(key)) {
|
JSONArray array = resultValue.getJSONObject(key).getJSONObject("data").getJSONArray("entity").getJSONObject(0).getJSONArray("model");
|
Type type = new TypeToken<List<FirstOrderSubInfoDTO>>() {
|
}.getType();
|
List<FirstOrderSubInfoDTO> list = new Gson().fromJson(array.toString(), type);
|
return list;
|
}
|
}
|
return null;
|
}
|
|
/**
|
* 获取签名
|
*
|
* @param token
|
* @param time
|
* @param appKey
|
* @param data
|
* @return
|
*/
|
public static String getSign(String token, String time, String appKey, String data) {
|
return StringUtil.Md5(String.format("%s&%s&%s&%s", token, time, appKey, data));
|
}
|
|
|
/**
|
* 获取token
|
* @param cookie
|
* @return
|
*/
|
public static String getTokenFromCookie(String cookie) {
|
Map<String, String> map = new HashMap<>();
|
String[] sts = cookie.split(";");
|
for (String st : sts) {
|
map.put(st.split("=")[0].trim(), st.split("=")[1].trim());
|
}
|
String tk = map.get("_m_h5_tk");
|
return tk.split("_")[0];
|
}
|
|
|
}
|