<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org" xmlns:layout=""
layout:decorator="layout_new">
<head>
<meta charset="UTF-8" />
<!-- 引入 ECharts 文件 -->
<script th:src="@{/js/jquery.min.js}"></script>
<script th:src="@{/date/laydate.js}"></script>
<script th:src="@{/echarts/jQuery-jcDate.js}"></script>
<script th:src="@{/echarts/echarts.js}" charset="utf-8"></script>
<script th:src="@{/echarts/theme/infographic.js}" charset="utf-8"></script>
</head>
<body>
<div class="row J_mainContent" id="content-main"
layout:fragment="content">
<div class="wrapper wrapper-content ">
<div class="row">
<div class="col-sm-12">
<div class="ibox float-e-margins">
<div class="ibox-title">
<h5>
<i class="fa fa-tasks"></i> <a th:text="${menuName}">统计图表</a>
</h5>
<p class="pull-right">
<button type="button" class="btn btn-primary btn-xs"
onclick="javascript:window.location.href=window.location.href;">
<i class="fa fa-refresh"></i> 刷新
</button>
</p>
</div>
</div>
<div class="ibox float-e-margins">
<div class="ibox-content">
<form class="form-horizontal clearfix" id="searchForm"
method="get" th:action="@{/Echarts/}">
<div class="form-group col-xs-12 col-sm-6 col-md-3">
<label class="col-sm-4 control-label">旧版本名称</label>
<div class="col-sm-8">
<select id="previous_version_name" name="previous_version_name"
class="form-control">
<option value="">请选择</option>
<option value="JJ01">JJ01</option>
<option value="JJ02">JJ012</option>
<option value="JJ03">JJ03</option>
<option value="JJ05">JJ05</option>
<option value="JJ07">JJ07</option>
</select>
</div>
</div>
<div class="form-group col-xs-12 col-sm-6 col-md-3">
<label class="col-sm-4 control-label">新版本名称</label>
<div class="col-sm-8">
<select id="new_version_name" name="new_version_name"
class="form-control">
<option value="">请选择</option>
<option value="J1-otaA-all-00502001">J1-otaA-all-00502001</option>
<option value="J1-ota-all-00502001">J1-ota-all-00502001</option>
</select>
</div>
</div>
<div class="form-group col-xs-12 col-sm-6 col-md-3">
<label class="col-sm-4 control-label tr">起始时间</label>
<div class="col-sm-8">
<input class="inline laydate-icon" placeholder="开始日期"
id="start" name="start" /> <input
class="inline laydate-icon" placeholder="结束日期" id="end"
name="end" />
</div>
</div>
<div class="form-group col-xs-12 col-sm-6 col-md-3">
<div class="col-sm-12 col-sm-offset-2">
<button class="btn btn-primary" type="button"
onclick="search()">查询</button>
</div>
</div>
</form>
<hr />
</div>
</div>
</div>
</div>
<!-- 为ECharts准备一个具备大小(宽高)的Dom -->
<div id="main" style="width: auto; height: 400px;"></div>
<script type="text/javascript">
// 基于准备好的dom,初始化echarts实例
search();
function search() {
var start = $("#start").val();
var end = $("#end").val();
var previous_version_name = $("#previous_version_name").val();
var new_version_name = $("#new_version_name").val();
var myChart = echarts.init(document.getElementById('main'),
'infographic');
myChart.setOption({
title : {
text : '升级情况'
},
tooltip : {
trigger : 'axis'
},
legend : {
data : [ '升级成功', '升级失败' ]
},
grid : {
left : '3%',
right : '4%',
bottom : '3%',
containLabel : true
},
toolbox : {
show : true,
feature : {
dataZoom : {
yAxisIndex : 'none'
},
dataView : {
readOnly : false
},
magicType : {
type : [ 'line', 'bar' ]
},
restore : {},
saveAsImage : {}
}
},
xAxis : {
type : 'category',
boundaryGap : false,
data : []
},
yAxis : {
type : 'value'
},
series : []
});
var date = []; //类别数组(实际用来盛放X轴坐标值)
var success_nums = []; //销量数组(实际用来盛放Y坐标值)
var errnum = []; //升级失败
$.ajax({
type : "post",
async : true, //异步请求(同步请求将会锁住浏览器,用户其他操作必须等待请求完成才可以执行)
url : "/Echarts/echarts", //请求发送到TestServlet处
data : {
start : start,
end : end,
new_version_name : new_version_name,
previous_version_name : previous_version_name
},
dataType : "json", //返回数据形式为json
success : function(result) {
//请求成功时执行该函数内容,result即为服务器返回的json对象
if (result == "") {
swal("提示!", "暂无数据", "warning");
return;
}
if (result) {
for ( var i in result) {
date.push(result[i].in_date);
}
for ( var j in result) {
success_nums.push(result[j].count);
}
for ( var y in result) {
errnum.push(result[y].errnum);
}
myChart.setOption({ //加载数据图表
xAxis : {
data : date
},
series : [ {
name : '升级成功',
type : 'line',
data : success_nums
}, {
name : '升级失败',
type : 'line',
data : errnum
}, ]
});
}
},
error : function(errorMsg) {
//请求失败时执行该函数
swal("错误!", "图表请求数据失败!", "error");
myChart.hideLoading();
}
})
}
!function() {
laydate.skin('molv');//切换皮肤,库
laydate({
elem : '#demo'
});//绑定元素
}();
//日期范围限制
var start = {
elem : '#start',
format : 'YYYY-MM-DD hh:mm:ss',
//min: laydate.now(), //设定最小日期为当前日期
max : laydate.now(), //最大日期
istime : true,
istoday : false,
choose : function(datas) {
end.min = datas; //开始日选好后,重置结束日的最小日期
end.start = datas //将结束日的初始值设定为开始日
}
};
var end = {
elem : '#end',
format : 'YYYY-MM-DD hh:mm:ss',
//min: laydate.now(),
max : laydate.now(), //设定最大日期为当前日期
//max: '2099-06-16',
istime : true,
istoday : false,
choose : function(datas) {
start.max = datas; //结束日选好后,充值开始日的最大日期
}
};
laydate(start);
laydate(end);
</script>
</div>
</div>
</body>
</html>
Echarts报表动态加载
最新推荐文章于 2023-02-27 14:41:27 发布