1. 程式人生 > >後臺封裝復雜數據,將數據轉json,傳前臺

後臺封裝復雜數據,將數據轉json,傳前臺

utils start 效果 return color gen 復雜 show 技術

前臺需要的數據是

function showCurve(dee,daa) {
$(‘#container‘).highcharts(
{
title: {
text: ‘終端歷史分布 ‘,
x: -20
},
xAxis: {
categories:eval(dee)這裏是日期數組[‘一月‘, ‘二月‘, ‘三月‘, ‘四月‘, ‘五月‘, ‘六月‘, ‘七月‘, ‘八月‘, ‘九月‘, ‘十月‘, ‘十一月‘, ‘十二月‘]
            },
yAxis: {
title: {
text: ‘在線數 (/臺)‘
},
plotLines: [{
value: 0,
width: 1,
color: ‘#808080‘
}]
},
tooltip: {
valueSuffix: ‘次‘
},
legend: {
layout: ‘vertical‘,
align: ‘right‘,
verticalAlign: ‘middle‘,
borderWidth: 0
},
series: eval(daa)這裏是眾坐標map 集合
 [{
name: ‘東京‘,
data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9]
}, {
name: ‘紐約‘,
data: [-0.2, 0.8, 5.7, 11.3, 17.0, 22.0, 24.8, 24.1, 20.1, 14.1, 8.6]
}, {
name: ‘柏林‘,
data: [-0.9, 0.6, 3.5, 8.4, 13.5, 17.0, 18.6, 17.9, 14.3, 9.0, 3.9]
}, {
name: ‘倫敦‘,
data: [3.9, 4.2, 5.7, 8.5, 11.9, 15.2, 17.0, 16.6, 14.2, 10.3, 6.6]
}]
        }
)
}

技術分享圖片

List<List> result = new ArrayList<>();
List<String> dates = DateUtils.getMonsList(distributionStatistics.getStartDate(), distributionStatistics.getEndDate());
List dataList = new ArrayList();//存放多個map,一個map裏放一條對應的數據
//
{
name: ‘東京‘,
data: [7.0, 6.9, 9.5, 14.5, 18.2, 21.5, 25.2, 26.5, 23.3, 18.3, 13.9]
}
//
Map<String, Object> data = new HashMap<>();
List dateValue = new ArrayList();
List<Object[]> list = new ArrayList<>();
for (String s : sqls) {
Object o = session.createSQLQuery(s).setParameter(0, type.toString()).list().get(0);
o = o.getClass().isArray() ? (list.add((Object[]) o)) : list.add((new Object[]{o}));
}
for (Object[] da : list) {
for (Object d : da) {
dateValue.add(d);
}
}
data.put("name", type);
data.put("data", dateValue);
dataList.add(data);//將map存放到list集合

result.add(dates);//存放日期集合
result.add(dataList);//存放數據集合
return JSON.toJSONString(result);用fastjson 轉

效果

技術分享圖片






後臺封裝復雜數據,將數據轉json,傳前臺