Count2Controller类
@Autowired
    private Count2Service count2Service;


    @ModelAttribute
    public Count2 get(@RequestParam(required=false) String id) {
        Count2 entity = null;
        if (StringUtils.isNotBlank(id)){
            entity = count2Service.get(id);
        }
        if (entity == null){
            entity = new Count2();
        }
        return entity;
    }

    @RequestMapping(value = "echarts")
    public String echarts1() {
        return "modules/count2/echarts4";
    }

    @RequestMapping(value = "getEcharts3")
    @ResponseBody
    public String list(Count2 count2, HttpServletRequest request, HttpServletResponse response, Model model) {
        /*Page<Count2> page = count2Service.findPage(new Page<Count2>(request, response), count2);*/
        List<Count2> list= count2Service.findListByParentId1();
        List ls=new ArrayList();
        List ls1=new ArrayList();
        List ls2=new ArrayList();
        List ls3=new ArrayList();
        List ls4=new ArrayList();
        for (int i=0;i<list.size();i++){
            ls.add(list.get(i).getDepartId());
            ls1.add(list.get(i).getFaceload());
            ls2.add(list.get(i).getFingerprintload());
            ls3.add(list.get(i).getiPhoneload());
            ls4.add(list.get(i).getPCload());
        }
        Map<String, Object> data = Maps.newHashMap();
        //title
        Map<String, Object> titleMap = Maps.newHashMap();
        titleMap.put("text", "1级账户登陆方式成功失败统计");
        titleMap.put("left","center");
        data.put("title", titleMap);
        //tooltip
        Map<String, Object> tooltipMap = Maps.newHashMap();
        tooltipMap.put("trigger","axis");

Map<String, Object> axisPointer = Maps.newHashMap();
        axisPointer.put("type","shadow");
        tooltipMap.put("axisPointer",axisPointer);

        data.put("tooltip", tooltipMap);
        //legend
        Map<String, Object> legendMap = Maps.newHashMap();
        legendMap.put("data", Lists.newArrayList("成功","失败"));
        legendMap.put("show","true");
        data.put("legend",  legendMap);
        //grid
        Map<String, Object> gridMap = Maps.newHashMap();
        gridMap.put("left","100");

        data.put("grid",gridMap);
        //xAxis
        Map<String, Object> xAxisMap = Maps.newHashMap();
        xAxisMap.put("type","value");
        xAxisMap.put("boundaryGap","[0, 0.01]");
        data.put("xAxis",xAxisMap);
        Map<String, Object> axisLabelMap = Maps.newHashMap();
        axisLabelMap.put("inside", false);
        xAxisMap.put("axisLabel", axisLabelMap);

        data.put("xAxis",  xAxisMap);
        //yAxis
        Map<String, Object> yAxisMap = Maps.newHashMap();
        yAxisMap.put("type","category");
        /*yAxisMap.put("data",ls);*/
        yAxisMap.put("data",ls);
        data.put("yAxis",  yAxisMap);
        //series
        Map<String, Object> seriesMap = Maps.newHashMap();
        seriesMap.put("name", "人脸识别");
        seriesMap.put("type", "bar");
        seriesMap.put("data",ls1);

        Map<String, Object> seriesMap1 = Maps.newHashMap();
        seriesMap1.put("name", "指纹登陆");
        seriesMap1.put("type", "bar");
        seriesMap1.put("data",ls2);

        Map<String, Object> seriesMap2 = Maps.newHashMap();
        seriesMap2.put("name", "电话登陆");
        seriesMap2.put("type", "bar");
        seriesMap2.put("data",ls3);

        Map<String, Object> seriesMap3 = Maps.newHashMap();
        seriesMap3.put("name", "手机登陆");
        seriesMap3.put("type", "bar");
        seriesMap3.put("data",ls4);

        data.put("series", Lists.newArrayList(seriesMap,seriesMap1,seriesMap2,seriesMap3));
        String result = JSON.toJSONString(data);
        logger.info(result);
        return result;
    }

    @RequestMapping(value = "getEcharts4")
    @ResponseBody
    public String getNameByCategory(Count2 count1l, HttpServletRequest request, HttpServletResponse response, Model model){
        String result = "";
        String departid=count1l.getDepartId();
        List<Count2> list = count2Service.findListByParentIdSon1(departid);
        List ls=new ArrayList();
        List ls1=new ArrayList();
        List ls2=new ArrayList();
        List ls3=new ArrayList();
        List ls4=new ArrayList();
        for (int i=0;i<list.size();i++){
            ls.add(list.get(i).getDepartId());
            ls1.add(list.get(i).getFaceload());
            ls2.add(list.get(i).getFingerprintload());
            ls3.add(list.get(i).getiPhoneload());
            ls4.add(list.get(i).getPCload());
        }
        if(departid != null &&"1001".equals(departid)){
            result = getWayCommon(ls ,ls1,ls2,ls3,ls4);
        }
        if(departid != null &&"1002".equals(departid)){
            result = getWayCommon(ls ,ls1,ls2,ls3,ls4);
        }
        if(departid != null &&"1003".equals(departid)){
            result = getWayCommon(ls ,ls1,ls2,ls3,ls4);
        }
        if(departid != null &&"1004".equals(departid)){
            result = getWayCommon(ls ,ls1,ls2,ls3,ls4);
        }
        return result;
    }


    public String getWayCommon( List  ls,List ls1,List ls2,List ls3, List ls4){
        Map<String, Object> data = Maps.newHashMap();
        //title
        Map<String, Object> titleMap = Maps.newHashMap();
        titleMap.put("text", "2级账户登陆方式成功失败统计");
        titleMap.put("left","center");
        data.put("title", titleMap);
        //tooltip
        Map<String, Object> tooltipMap = Maps.newHashMap();
        tooltipMap.put("trigger","axis");

        Map<String, Object> axisPointer = Maps.newHashMap();
        axisPointer.put("type","shadow");
        tooltipMap.put("axisPointer",axisPointer);

        data.put("tooltip", tooltipMap);
        //legend
        Map<String, Object> legendMap = Maps.newHashMap();
        legendMap.put("data", Lists.newArrayList("成功","失败"));
        legendMap.put("show","true");
        data.put("legend",  legendMap);
        //grid
        Map<String, Object> gridMap = Maps.newHashMap();
        gridMap.put("left","100");

        data.put("grid",gridMap);
        //xAxis
        Map<String, Object> xAxisMap = Maps.newHashMap();
        xAxisMap.put("type","value");
        xAxisMap.put("boundaryGap","[0, 0.01]");
        data.put("xAxis",xAxisMap);
        Map<String, Object> axisLabelMap = Maps.newHashMap();
        axisLabelMap.put("inside", false);
        xAxisMap.put("axisLabel", axisLabelMap);

        data.put("xAxis",  xAxisMap);
        //yAxis
        Map<String, Object> yAxisMap = Maps.newHashMap();
        yAxisMap.put("type","category");
        /*yAxisMap.put("data",ls);*/
        yAxisMap.put("data",ls);
        data.put("yAxis",  yAxisMap);
        //series
        Map<String, Object> seriesMap = Maps.newHashMap();
        seriesMap.put("name", "人脸识别");
        seriesMap.put("type", "bar");
        seriesMap.put("data",ls1);

        Map<String, Object> seriesMap1 = Maps.newHashMap();
        seriesMap1.put("name", "指纹登陆");
        seriesMap1.put("type", "bar");
        seriesMap1.put("data",ls2);

        Map<String, Object> seriesMap2 = Maps.newHashMap();
        seriesMap2.put("name", "电话登陆");
        seriesMap2.put("type", "bar");
        seriesMap2.put("data",ls3);

        Map<String, Object> seriesMap3 = Maps.newHashMap();
        seriesMap3.put("name", "手机登陆");
        seriesMap3.put("type", "bar");
        seriesMap3.put("data",ls4);

        data.put("series", Lists.newArrayList(seriesMap,seriesMap1,seriesMap2,seriesMap3));
        String result = JSON.toJSONString(data);
        logger.info(result);
        return result;
    }

echarts4.jsp

<%@ page contentType="text/html;charset=UTF-8" %>
<%@ include file="/WEB-INF/views/include/taglib.jsp"%>


<html>
<head>
    <title>echart-测试1</title>
    <script src="${ctxStatic}/jquery/jquery-1.8.3.min.js" type="text/javascript"></script>
    <script src="${ctxStatic}/echarts/echarts.min.js" type="text/javascript"></script>

</head>

<body>
<!-- 为ECharts准备一个具备大小(宽高)的Dom -->
<input id="return-button" type="button" value="返回"style="position: absolute;top: 10px;left: 503px;z-index: 9999999" >

<div id="main" style="width: 600px;height:400px;">
</div>
</body>
</html>

<script type="text/javascript">
    $('#return-button').on('click',function(){
        // 基于准备好的dom,初始化echarts实例
        var dom=document.getElementById('main');
        var myChart = echarts.init(dom);
        //定义option
        var option="";
        var option1 = "";
        var disButton = document.getElementById("return-button");
        disButton.style.display="none";
        $.ajax({
            type : "POST",
            url : '${ctx}/count2/count2/getEcharts3/',
            contentType : "application/json; charset=utf-8",
            dataType : 'json',
            cache : false,
            success : function(data) {
                // 使用刚指定的配置项和数据显示图表。
                option=data;
                myChart.setOption(option);
                myChart.on('click',function(object) {
                    // 销毁之前的echarts实例

                    echarts.dispose(dom);
                    // 初始化一个新的实例
                    var myChart = echarts.init(dom);
                    disButton.style.display="block";
                    $.ajax({
                        type: "get",
                        url: '${ctx}/count2/count2/getEcharts4' + '?departId='+object.name, // 此处可以替换为你的接口地址
                        dataType: 'json',
                        success: function (data) {
                            option1=data;
                            myChart.setOption(option1, true);

                        }
                    });
                })
            }
        });
    });
    // 基于准备好的dom,初始化echarts实例
    var dom=document.getElementById('main');
    var myChart = echarts.init(dom);
    //定义option
    var option="";
    var option1 = "";
    var disButton = document.getElementById("return-button");
    disButton.style.display="none";
    $.ajax({
        type : "POST",
        url : '${ctx}/count2/count2/getEcharts3/',
        contentType : "application/json; charset=utf-8",
        dataType : 'json',
        cache : false,
        success : function(data) {
            // 使用刚指定的配置项和数据显示图表。
            option=data;
            myChart.setOption(option);
            myChart.on('click',function(object) {
                // 销毁之前的echarts实例

                echarts.dispose(dom);
                // 初始化一个新的实例
                var myChart = echarts.init(dom);
                disButton.style.display="block";
                $.ajax({
                    type: "get",
                    url: '${ctx}/count2/count2/getEcharts4' + '?departId='+object.name, // 此处可以替换为你的接口地址
                    dataType: 'json',
                    success: function (data) {
                        option1=data;
                        myChart.setOption(option1, true);

                    }
                });
            })
        }
    });

</script>

 

posted on 2018-09-27 21:05  倔强的乐  阅读(140)  评论(0编辑  收藏  举报