$(function () { function initaveragescoreEcharts (list) { var itemStyle = { normal: { label: { show: true, //开启显示数值 position: "top" //数值在上方显示 } } }; var avgscore = [],xAxis_data=[],totalScore = 0; var curlegend = [ "平均分"]; $.each(list.pjf, function (idx, item) { totalScore += item.classavgscore; avgscore.push(item.classavgscore); xAxis_data.push(item.classname) }) var gradeAvgScore = Math.floor(totalScore / xAxis_data.length); var curseries = [ { name: "平均分", type: "bar", barWidth: $.UnitUtil.mm2px(5), // 柱状图最小高度 barMinHeight: $.UnitUtil.mm2px(2), barGap: 0, data: avgscore, itemStyle: itemStyle, markLine: { precision: 0, data: [{ type: "average", name: "平均值" }], itemStyle: { normal: { lineStyle: { color: "#ff001e", type: "dotted" }, label: { show: true, color: "#ff001e", position: "insideEndTop", formatter: function () { return "年级平均分:" + gradeAvgScore; } } } }, large: true }, z: 10 } ]; var option = { animation: false, color: ["#5C99FF", "#FF5F56", "#5EC5C8", "#f1982b"], title: { text: "分", x: "left", y: "top", textStyle: { color: "#5F6E82", fontSize: $.UnitUtil.mm2px(3), fontWeight: 500 } }, legend: { itemWidth: $.UnitUtil.mm2px(2), itemHeight: $.UnitUtil.mm2px(2), top: "bottom", data: curlegend }, grid: { top: $.UnitUtil.mm2px(10), left: 0, right: 0, bottom: $.UnitUtil.mm2px(8), containLabel: true }, xAxis: [ { type: "category", data: xAxis_data, axisLabel: { color: "#5F6E82" //更改坐标轴文字颜色 }, axisTick: { alignWithLabel: true }, boundaryGap: true, triggerEvent: true, axisLine: { show: true, //是否显示轴线 lineStyle: { color: "#DADADA" //刻度线的颜色 } } } ], yAxis: [ { type: "value", axisTick: { show: false //刻度 }, axisLine: { show: false, //是否显示轴线 lineStyle: { color: "#DADADA" //刻度线的颜色 } }, splitLine: { //网格线 lineStyle: { type: "dotted" //设置网格线类型 dotted:虚线 solid:实线 }, show: true //隐藏或显示 }, axisLabel: { color: "#5F6E82" //更改坐标轴文字颜色 } } ], series: curseries }; var myEcharts = echarts.init( document.querySelector(".section2 #averagescoreEcharts") ); myEcharts.clear(); myEcharts.setOption(option); } function achievementdistributiontable (list) { var table = "", goodTableHeadTr1Html = '等级排名(年级/名)人数详情', trHtml = ""; $.each(list.djtj, function (idx, item) { var stujson = JSON.parse(item.stujson),stuarr = ""; $.each(stujson, function (index, items) { stuarr+=items.studentname+"("+items.schoolrank+"名)、" }) stuarr = stuarr.substr(0, stuarr.length - 1); trHtml += '' + item.rankname + "类" + item.rankrange + "" + item.stunum+""+stuarr+""; }) table = '' + goodTableHeadTr1Html + '' + trHtml + '
' $(".section2 .achievementdistribution").html(table) } function progresstable (list) { var table = "", trHtml={1:"",2:""}; var cjdjheight = $(".section2_1 .cjdjheight").height() - 454; var surplus = pageheight - cjdjheight; //本页剩余高度 var height = 0,page = {1:"",2:""},ispage = false; $.each(list.dfjb, function (idx, item) { if (idx % 2 == 0) { height += 27.5; if (height > surplus && surplus - height < 27.5) { ispage = true; } if (ispage) { trHtml[2] += '' + (idx+1) + '' + item.username + '' + item.score + '分第' + item.classrank + '名进步' + item.classrankpre + '名'; } else { trHtml[1] += '' + (idx+1) + '' + item.username + '' + item.score + '分第' + item.classrank + '名进步' + item.classrankpre + '名'; } } else { if (ispage) { trHtml[2]+= '' + (idx+1) + '' + item.username + '' + item.score + '分第' + item.classrank + '名进步' + item.classrankpre + '名'; } else { trHtml[1] += '' + (idx+1) + '' + item.username + '' + item.score + '分第' + item.classrank + '名进步' + item.classrankpre + '名'; } } }) for (var i = 1; i < 3; i++){ page[i]='' + trHtml[i] + '
' } $(".section2_1 .progress").html(page[1]) if (ispage) { //添加第二页 $(".section2_1").after( '
' ); $(".section2_2").html(page[2]); } } function retrogression (list) { var trHtml = "", table = ""; $.each(list.dftb, function (idx, item) { item.classrankpre = Math.abs(item.classrankpre) if (idx % 2 == 0) { trHtml += '' + (idx+1) + '' + item.username + '' + item.score + '分第' + item.classrank + '名退步' + item.classrankpre + '名'; } else { trHtml += '' + (idx+1) + '' + item.username + '' + item.score + '分第' + item.classrank + '名退步' + item.classrankpre + '名'; } }) var table ='' + trHtml + '
' $(".section2 .retrogression").html(table) } function critical (list) { var trHtml = "", table = ""; $.each(list.ljs, function (idx, item) { if (idx % 2 == 0) { trHtml += '' + (idx+1) + '' + item.username + '' + item.score + '分第' + item.classrank + '分' + item.classrankpre + '分'; } else { trHtml += '' + (idx+1) + '' + item.username + '' + item.score + '分第' + item.classrank + '分' + item.classrankpre + '分'; } }) var table ='' + trHtml + '
' $(".section2 .critical").html(table) } function wave (list) { var trHtml = "", table = ""; $.each(list.bds, function (idx, item) { var curdata = { class: "red", name :"退步" } if (item.classrankpre > 0) { curdata = { class: "green", name :"进步" } } item.classrankpre = Math.abs(item.classrankpre) if (idx % 2 == 0) { trHtml += '' + (idx+1) + '' + item.username + '' + item.score + '分' + item.classrank + '分'+curdata.name + item.classrankpre + '名'; } else { trHtml += '' + (idx+1) + '' + item.username + '' + item.score + '分' + item.classrank + '分'+curdata.name + item.classrankpre + '名'; } }) var table ='' + trHtml + '
' $(".section2 .wave").html(table) } function errquestion (list) { console.log(list.gpctList); var table = "", goodTableHeadTr1Html = '题号题型知识点班级得分率与年级差值高频错误项', trHtml = ""; $.each(list.gpctList, function (idx, item) { item.answer = JSON.parse(item.answer); trHtml += '第' + item.qn + "题" + item.eptname + "" + item.pointnames+""+item.classsrate+'%'+item.gradesrate+'%'+item.answer[0]+""; }) table = '' + goodTableHeadTr1Html + '' + trHtml + '
' $(".section2 .errquestion").html(table) } var parameter = $(".section_2_html_root").data("page-params"); parameter = JSON.parse(parameter); console.log(parameter[0]); var curdata = parameter[0]; $(".section2 .subjectinfo").text(curdata.subjectname + "概况"); $(".section2 .classavgscore").text(curdata.classavgscore); $(".section2 .classavgscorerank").text(curdata.classavgscorerank); $(".section2 .yxrate").text(curdata.yxrate); $(".section2 .jgrate").text(curdata.jgrate); $(".section2 .classmaxscore").text(curdata.classmaxscore); $(".section2 .schoolavgscore").text(curdata.schoolavgscore); $(".section2 .schoolmaxscore").text(curdata.schoolmaxscore); initaveragescoreEcharts(curdata); achievementdistributiontable(curdata); progresstable(curdata); retrogression(curdata); critical(curdata); wave(curdata); errquestion(curdata) document.documentElement.scrollTop = 6000; });