fusitionChars json方式做报表部分关键代码

(注意:自测 @version fusioncharts/3.2.4-sr1.9888 版本 可以  V3.2.1 没有setJSONUrl 方法 )

前台Jquery:

   $(function(){   
    var chart = new FusionCharts("/public/Charts/Line.swf", "ChartId", "100%", "300"); 
    chart.setJSONUrl("/SearchStatisticsController/statistics");
    chart.render("chartdiv"); 
   }); 

(注释:chart.setJSONUrl("/SearchStatisticsController/statistics");是向后台发送请求)

后台java代码:

 //生成统计图所需的参数
public static void statistics(String searchUser) { 
List<Map> listCount= new ArrayList<Map>(); 
String sql="SELECT COUNT(manufactory) from ProductSearch WHERE manufactory<>'0'";
sql=andWhere2(sql,searchUser);
Query query = ProductSearch.em().createQuery(sql); 
listCount.add(getMap("厂商",query.getResultList().get(0)));

sql="SELECT COUNT(gene) from ProductSearch WHERE gene<>''";
sql=andWhere2(sql,searchUser);
query = ProductSearch.em().createQuery(sql);  
listCount.add(getMap("基因",query.getResultList().get(0)));

sql="SELECT COUNT(catalognNo) from ProductSearch WHERE catalognNo<>''";
sql=andWhere2(sql,searchUser);
query = ProductSearch.em().createQuery(sql);  
listCount.add(getMap("目录号",query.getResultList().get(0)));

sql="SELECT COUNT(gene) from ProductSearch WHERE type='试剂'";
sql=andWhere2(sql,searchUser);
query = ProductSearch.em().createQuery(sql); 
listCount.add(getMap("试剂",query.getResultList().get(0)));

sql="SELECT COUNT(gene) from ProductSearch WHERE type='抗体'";
sql=andWhere2(sql,searchUser);
query = ProductSearch.em().createQuery(sql); 
listCount.add(getMap("抗体",query.getResultList().get(0)));
 
sql="SELECT COUNT(organism) from ProductSearch WHERE organism<>''";
sql=andWhere2(sql,searchUser);
query = ProductSearch.em().createQuery(sql);   
listCount.add(getMap("来源",query.getResultList().get(0)));
 
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
for (int i = 0; i < listCount.size(); i++) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("label", listCount.get(i).get("column")); 
map.put("value", listCount.get(i).get("count"));  
list.add(map);

Map<String, Object> map2 = new HashMap<String, Object>();
map2.put("caption", "用户查询统计");  
map2.put("xAxisName", "查询名称");  
map2.put("yAxisName", "查询次数"); 
map2.put("numberPrefix", "次");   

List<Map<String, Object>> list2 = new ArrayList<Map<String, Object>>();
Map<String, Object> map4 = new HashMap<String, Object>();
map4.put("name", "numberPrefix");  
map4.put("type", "font");  
map4.put("font", "宋体"); 
map4.put("size", "50");   
map4.put("color", "99E3BB"); 
list2.add(map4);
Map map3 = new HashMap(); 
map3.put("data", list);
map3.put("chart", map2); 
map3.put("definition", list2); 
renderJSON(map3);

}
(注释:就是查询数据库,拼接json格式,返回到前台)

代码我是在QQ中问一个前辈,我是看明白了,希望能帮助到一些跟我一样刚学的人

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值