fix:增加today指数信息
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
package cn.stock.market.infrastructure.api;
|
||||
|
||||
import cn.stock.market.dto.TodayStockDTO;
|
||||
import cn.stock.market.utils.HttpClientRequest;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
@@ -20,7 +21,7 @@ public class TodayApis {
|
||||
}
|
||||
|
||||
//获取Top Gainers
|
||||
public static List<JSONObject> getTopGainers(String exchange){
|
||||
public static List getTopGainers(String exchange){
|
||||
String url = "https://marketapi.intoday.in/widget/topgainer/view?exchange=" + exchange;
|
||||
//返回字符串对象格式:{"status_code":1,"success":true,"data":[{}],"message":"Successful","fromredis":true}
|
||||
String str = get(url);
|
||||
@@ -32,17 +33,19 @@ public class TodayApis {
|
||||
if(!bool){
|
||||
return null;
|
||||
}
|
||||
return getList(object.getString("data"),1);
|
||||
//进行数据转换
|
||||
List<JSONObject> dataObject = new ArrayList<>();
|
||||
JSONArray jsonArray = JSON.parseArray(object.getString("data"));
|
||||
for (Object obj : jsonArray){
|
||||
JSONObject entity = JSON.parseObject(obj.toString());
|
||||
dataObject.add(entity);
|
||||
}
|
||||
return dataObject;
|
||||
// List<TodayStockDTO> dataObject = new ArrayList<>();
|
||||
// JSONArray jsonArray = JSON.parseArray(object.getString("data"));
|
||||
// for (Object obj : jsonArray){
|
||||
//// JSONObject entity = JSON.parseObject(obj.toString());
|
||||
// TodayStockDTO entity = todayStockDTO(JSON.parseObject(obj.toString()));
|
||||
// dataObject.add(entity);
|
||||
// }
|
||||
// return dataObject;
|
||||
}
|
||||
//获取Top Losers
|
||||
public static List<JSONObject> getTopLosers(String exchange){
|
||||
public static List getTopLosers(String exchange){
|
||||
String url = "https://marketapi.intoday.in/widget/toploser/view?exchange=" + exchange;
|
||||
//返回字符串对象格式:{"status_code":1,"success":true,"data":[{}],"message":"Successful","fromredis":true}
|
||||
String str = get(url);
|
||||
@@ -54,17 +57,20 @@ public class TodayApis {
|
||||
if(!bool){
|
||||
return null;
|
||||
}
|
||||
return getList(object.getString("data"),1);
|
||||
//进行数据转换
|
||||
List<JSONObject> dataObject = new ArrayList<>();
|
||||
JSONArray jsonArray = JSON.parseArray(object.getString("data"));
|
||||
for (Object obj : jsonArray){
|
||||
JSONObject entity = JSON.parseObject(obj.toString());
|
||||
dataObject.add(entity);
|
||||
}
|
||||
return dataObject;
|
||||
//// List<TodayStockDTO> dataObject = new ArrayList<>();
|
||||
// List<JSONObject> dataObject = new ArrayList<>();
|
||||
// JSONArray jsonArray = JSON.parseArray(object.getString("data"));
|
||||
// for (Object obj : jsonArray){
|
||||
// JSONObject entity = JSON.parseObject(obj.toString());
|
||||
//// TodayStockDTO entity = todayStockDTO(JSON.parseObject(obj.toString()));
|
||||
// dataObject.add(entity);
|
||||
// }
|
||||
// return dataObject;
|
||||
}
|
||||
//获取Most Active Volume
|
||||
public static List<JSONObject> getMostActiveVolume(String exchange){
|
||||
public static List getMostActiveVolume(String exchange){
|
||||
String url = "https://marketapi.intoday.in/widget/mostactivetopper/view?exchange=" + exchange;
|
||||
//返回字符串对象格式:{"status_code":1,"success":true,"data":[{}],"message":"Successful","fromredis":true}
|
||||
String str = get(url);
|
||||
@@ -76,17 +82,19 @@ public class TodayApis {
|
||||
if(!bool){
|
||||
return null;
|
||||
}
|
||||
return getList(object.getString("data"),1);
|
||||
//进行数据转换
|
||||
List<JSONObject> dataObject = new ArrayList<>();
|
||||
JSONArray jsonArray = JSON.parseArray(object.getString("data"));
|
||||
for (Object obj : jsonArray){
|
||||
JSONObject entity = JSON.parseObject(obj.toString());
|
||||
dataObject.add(entity);
|
||||
}
|
||||
return dataObject;
|
||||
// List<TodayStockDTO> dataObject = new ArrayList<>();
|
||||
// JSONArray jsonArray = JSON.parseArray(object.getString("data"));
|
||||
// for (Object obj : jsonArray){
|
||||
//// JSONObject entity = JSON.parseObject(obj.toString());
|
||||
// TodayStockDTO entity = todayStockDTO(JSON.parseObject(obj.toString()));
|
||||
// dataObject.add(entity);
|
||||
// }
|
||||
// return dataObject;
|
||||
}
|
||||
//获取Most Active Value
|
||||
public static List<JSONObject> getMostActiveValue(String exchange){
|
||||
public static List getMostActiveValue(String exchange){
|
||||
String url = "https://marketapi.intoday.in/widget/mostactivetopperbyvalue/view?exchange=" + exchange;
|
||||
//返回字符串对象格式:{"status_code":1,"success":true,"data":[{}],"message":"Successful","fromredis":true}
|
||||
String str = get(url);
|
||||
@@ -98,14 +106,117 @@ public class TodayApis {
|
||||
if(!bool){
|
||||
return null;
|
||||
}
|
||||
//进行数据转换
|
||||
List<JSONObject> dataObject = new ArrayList<>();
|
||||
JSONArray jsonArray = JSON.parseArray(object.getString("data"));
|
||||
for (Object obj : jsonArray){
|
||||
JSONObject entity = JSON.parseObject(obj.toString());
|
||||
dataObject.add(entity);
|
||||
return getList(object.getString("data"),1);
|
||||
// //进行数据转换
|
||||
// List<TodayStockDTO> dataObject = new ArrayList<>();
|
||||
// JSONArray jsonArray = JSON.parseArray(object.getString("data"));
|
||||
// for (Object obj : jsonArray){
|
||||
//// JSONObject entity = JSON.parseObject(obj.toString());
|
||||
// TodayStockDTO entity = todayStockDTO(JSON.parseObject(obj.toString()));
|
||||
// dataObject.add(entity);
|
||||
// }
|
||||
// return dataObject;
|
||||
}
|
||||
private static List getList(String json, int type){
|
||||
if(type == 1){
|
||||
List<JSONObject> dataObject = new ArrayList<>();
|
||||
JSONArray jsonArray = JSON.parseArray(json);
|
||||
for (Object obj : jsonArray){
|
||||
JSONObject entity = JSON.parseObject(obj.toString());
|
||||
dataObject.add(entity);
|
||||
}
|
||||
return dataObject;
|
||||
}else{
|
||||
//进行数据转换
|
||||
List<TodayStockDTO> dataObject = new ArrayList<>();
|
||||
JSONArray jsonArray = JSON.parseArray(json);
|
||||
for (Object obj : jsonArray){
|
||||
TodayStockDTO entity = todayStockDTO(JSON.parseObject(obj.toString()));
|
||||
dataObject.add(entity);
|
||||
}
|
||||
return dataObject;
|
||||
}
|
||||
return dataObject;
|
||||
|
||||
}
|
||||
|
||||
private static TodayStockDTO todayStockDTO(JSONObject jsonObject){
|
||||
TodayStockDTO dto = new TodayStockDTO();
|
||||
if(jsonObject.containsKey("exchange")){
|
||||
dto.setStockType(jsonObject.getString("exchange"));
|
||||
}else {
|
||||
dto.setStockType("");
|
||||
}
|
||||
if(jsonObject.containsKey("lname")){
|
||||
dto.setStockName(jsonObject.getString("lname"));
|
||||
}else{
|
||||
dto.setStockName("");
|
||||
}
|
||||
if(jsonObject.containsKey("high_price")){
|
||||
dto.setHighPrice(jsonObject.getString("highPrice"));
|
||||
}else{
|
||||
dto.setHighPrice("0.00");
|
||||
}
|
||||
if(jsonObject.containsKey("low_price")){
|
||||
dto.setLowPrice(jsonObject.getString("low_price"));
|
||||
}else {
|
||||
dto.setLowPrice("0.00");
|
||||
}
|
||||
if(jsonObject.containsKey("price")){
|
||||
dto.setLastPrice(jsonObject.getString("price"));
|
||||
}else{
|
||||
dto.setLastPrice("0.00");
|
||||
}
|
||||
if(jsonObject.containsKey("close_price")){
|
||||
dto.setPrevClosePrice(jsonObject.getString("close_price"));
|
||||
}else{
|
||||
dto.setPrevClosePrice("0.00");
|
||||
}
|
||||
if(jsonObject.containsKey("netchg")){
|
||||
dto.setChange(jsonObject.getString("netchg"));
|
||||
}else{
|
||||
dto.setChange("0.00");
|
||||
}
|
||||
if(jsonObject.containsKey("perchg")){
|
||||
dto.setChangePercent(jsonObject.getString("perchg"));
|
||||
}else{
|
||||
dto.setChangePercent("0.00");
|
||||
}
|
||||
return dto;
|
||||
|
||||
}
|
||||
|
||||
//获取详情
|
||||
public static JSONObject getStockDetail(String exchange,String coCode){
|
||||
String url = String.format("https://marketapi.intoday.in/widget/stockdetail/pullview?co_code=%s&exchange=%s",coCode,exchange);
|
||||
String str = get(url);
|
||||
JSONObject object = JSON.parseObject(str);
|
||||
boolean bool = false;
|
||||
if(object.containsKey("success")){
|
||||
bool = object.getBoolean("success");
|
||||
}
|
||||
if(!bool){
|
||||
return new JSONObject();
|
||||
}
|
||||
JSONArray jsonArray = JSON.parseArray(object.getString("data"));
|
||||
JSONObject entity = JSON.parseObject(jsonArray.get(0).toString());
|
||||
return entity;
|
||||
|
||||
}
|
||||
|
||||
//获取k线图
|
||||
public static List getStockKline(String exchange, String coCode, String format, String durationType, String duration){
|
||||
String url = String.format("https://marketapi.intoday.in/widget/pricechart_company/pullview?exchange=%s&co_code=%s&format=%s&durationtype=%s&duration=%s",
|
||||
exchange, coCode, format, durationType, duration);
|
||||
String str = get(url);
|
||||
JSONObject object = JSON.parseObject(str);
|
||||
boolean bool = false;
|
||||
if(object.containsKey("success")){
|
||||
bool = object.getBoolean("success");
|
||||
}
|
||||
if(!bool){
|
||||
return new ArrayList();
|
||||
}
|
||||
return getList(object.getString("data"),1);
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
||||
Reference in New Issue
Block a user