123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478 |
- $(function () {
- function initaveragescoreEcharts(list, s_index) {
- 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(
- $(".section2.sectiontwo_" + s_index + " #averagescoreEcharts")[0]
- );
- myEcharts.clear();
- myEcharts.setOption(option);
- }
- function achievementdistributiontable(list, s_index) {
- var table = "",
- goodTableHeadTr1Html =
- '<th class="dj">等级</th><th class="pm">排名(年级/名)</th><th class="dj">人数</th><th class="comm">详情</th>',
- 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 +=
- "<tr><td>" +
- item.rankname +
- "类</td><td>" +
- item.rankrange +
- "</td><td>" +
- item.stunum +
- "</td><td>" +
- stuarr +
- "</td></tr>";
- });
-
- table =
- '<table border="1" class="my_table"><thead><tr class="goodTableHeadTr1">' +
- goodTableHeadTr1Html +
- '</tr></thead><tbody class="goodTableTbody">' +
- trHtml +
- "</tbody></table>";
- $(".section2.sectiontwo_" + s_index + " .achievementdistribution").html(
- table
- );
- }
- function progresstable (list, s_index) {
- if(s_index !=0) return
- var table = "",
- trHtml = { 1: "", 2: "" };
- var cjdjheight =
- $(".section2_1.sectiontwo_" + s_index + " .cjdjheight").height() - 454;//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] +=
- "<tr><td>" +
- (idx + 1) +
- "</td><td>" +
- item.username +
- "</td><td>" +
- item.score +
- "分</td><td>第" +
- item.classrank +
- '名</td><td class="green">进步' +
- item.classrankpre +
- "名</td>";
- } else {
- trHtml[1] +=
- "<tr><td>" +
- (idx + 1) +
- "</td><td>" +
- item.username +
- "</td><td>" +
- item.score +
- "分</td><td>第" +
- item.classrank +
- '名</td><td class="green">进步' +
- item.classrankpre +
- "名</td>";
- }
- } else {
- if (ispage) {
- trHtml[2] +=
- "<td>" +
- (idx + 1) +
- "</td><td>" +
- item.username +
- "</td><td>" +
- item.score +
- "分</td><td>第" +
- item.classrank +
- '名</td><td class="green">进步' +
- item.classrankpre +
- "名</td>";
- } else {
- trHtml[1] +=
- "<td>" +
- (idx + 1) +
- "</td><td>" +
- item.username +
- "</td><td>" +
- item.score +
- "分</td><td>第" +
- item.classrank +
- '名</td><td class="green">进步' +
- item.classrankpre +
- "名</td>";
- }
- }
- });
- for (var i = 1; i < 3; i++) {
- page[i] =
- '<table border="1" class="my_table"><tbody class="goodTableTbody">' +
- trHtml[i] +
- "</tbody></table>";
- }
- $(".section2_1.sectiontwo_" + s_index + " .progress").html(page[1]);
- if (ispage) {
- //添加第二页
- $(".section2_1.sectiontwo_" + s_index).after(
- '<div class="page_root section2 sectiontwo_' +
- s_index +
- ' section2_2"></div>'
- );
- $(".section2_2.sectiontwo_" + s_index).html(page[2]);
- }
- }
-
- function retrogression(list, s_index) {
- var trHtml = "",
- table = "";
- $.each(list.dftb, function (idx, item) {
- item.classrankpre = Math.abs(item.classrankpre);
- if (idx % 2 == 0) {
- trHtml +=
- "<tr><td>" +
- (idx + 1) +
- "</td><td>" +
- item.username +
- "</td><td>" +
- item.score +
- "分</td><td>第" +
- item.classrank +
- '名</td><td class="red">退步' +
- item.classrankpre +
- "名</td>";
- } else {
- trHtml +=
- "<td>" +
- (idx + 1) +
- "</td><td>" +
- item.username +
- "</td><td>" +
- item.score +
- "分</td><td>第" +
- item.classrank +
- '名</td><td class="red">退步' +
- item.classrankpre +
- "名</td>";
- }
- });
- var table =
- '<table border="1" class="my_table"><tbody class="goodTableTbody">' +
- trHtml +
- "</tbody></table>";
- $(".section2.sectiontwo_" + s_index + " .retrogression").html(table);
- }
-
- function critical(list, s_index) {
- var trHtml = "",
- table = "";
- $.each(list.ljs, function (idx, item) {
- if (idx % 2 == 0) {
- trHtml +=
- "<tr><td>" +
- (idx + 1) +
- "</td><td>" +
- item.username +
- "</td><td>" +
- item.score +
- "分</td><td>第" +
- item.classrank +
- '分</td><td class="red">' +
- item.classrankpre +
- "分</td>";
- } else {
- trHtml +=
- "<td>" +
- (idx + 1) +
- "</td><td>" +
- item.username +
- "</td><td>" +
- item.score +
- "分</td><td>第" +
- item.classrank +
- '分</td><td class="red">' +
- item.classrankpre +
- "分</td>";
- }
- });
- var table =
- '<table border="1" class="my_table"><tbody class="goodTableTbody">' +
- trHtml +
- "</tbody></table>";
- $(".section2.sectiontwo_" + s_index + " .critical").html(table);
- }
-
- function wave(list, s_index) {
- 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 +=
- "<tr><td>" +
- (idx + 1) +
- "</td><td>" +
- item.username +
- "</td><td>" +
- item.score +
- "分</td><td>" +
- item.classrank +
- '分</td><td class="' +
- curdata.class +
- '">' +
- curdata.name +
- item.classrankpre +
- "名</td>";
- } else {
- trHtml +=
- "<td>" +
- (idx + 1) +
- "</td><td>" +
- item.username +
- "</td><td>" +
- item.score +
- "分</td><td>" +
- item.classrank +
- '分</td><td class="' +
- curdata.class +
- '">' +
- curdata.name +
- item.classrankpre +
- "名</td>";
- }
- });
- var table =
- '<table border="1" class="my_table"><tbody class="goodTableTbody">' +
- trHtml +
- "</tbody></table>";
- $(".section2.sectiontwo_" + s_index + " .wave").html(table);
- }
-
- function errquestion(list, s_index) {
- var table = "",
- goodTableHeadTr1Html =
- "<th>题号</th><th>题型</th><th>知识点</th><th>班级得分率</th><th>年级得分率</th><th>高频错误项</th>",
- trHtml = "";
- $.each(list.gpctList, function (idx, item) {
- item.answer = JSON.parse(item.answer);
- var pointnames = item.pointnames[0] || "";
- var erroroption = item.erroroption || "--";
- trHtml +=
- '<tr><td class="word_wrap">第' +
- item.qn +
- "题</td><td>" +
- item.eptname +
- "</td><td>" +
- pointnames +
- "</td><td>" +
- item.classsrate +
- "%</td><td>" +
- item.gradesrate +
- "%</td><td>" +
- erroroption +
- "</td></tr>";
- });
- table =
- '<table border="1" class="my_table"><thead><tr class="goodTableHeadTr1">' +
- goodTableHeadTr1Html +
- '</tr></thead><tbody class="goodTableTbody">' +
- trHtml +
- "</tbody></table>";
- $(".section2.sectiontwo_" + s_index + " .errquestion").html(table);
- }
- var parameter = $(".section_2_html_root").data("page-params");
- parameter = JSON.parse(parameter);
- var html = "";
- $.each(parameter, function (s_index, item) {
- html +=
- ' <div class="page_root section2 sectiontwo_' +
- s_index +
- '">' +
- (s_index === 0
- ? '<h1 class="section_title_1">第二章 单科概况</h1><div class="abstract_box"><div class="abstract_left"><img src="/img/img2.png" /></div><div class="abstract_right"><div class="abstract_content">从学校和数据的角度分析整体科目、整体班级及各科各班之间的水平和差异情况,系统从多个维度的数据进行对比分析,包括<strong> 满分、最高分、平均分、最低分、四率、参考人数、标准差。</strong ></div ></div ></div >'
- : "") +
- '<h1 class="subjectinfo">' +
- item.subjectname +
- '概况</h1><div class="section_title_3 jj">本次报告是结合学生语文学科成绩,进行深层分析,很好地反映了全部学生阶段性的教学成果和存在的问题。学生整体表现大致如下:</div><h2 class="section_title_2">1.总览</h2><div class="section_list"><div class="section_item"><div class="item_num"><span class="classavgscore"></span>分</div><div class="item_title">平均分</div></div><div class="section_item"><div class="item_num"><span class="classavgscorerank"></span>名</div><div class="item_title">平均分排名</div></div><div class="section_item"><div class="item_num"><span class="yxrate"></span>%</div><div class="item_title">优秀率</div></div><div class="section_item"><div class="item_num"><span class="jgrate"></span>%</div><div class="item_title">及格率</div></div><div class="section_item" style="margin-right: 0"><div class="item_num"><span class="classmaxscore"></span>分</div><div class="item_title">最高分</div></div></div><div style="margin-bottom: 4mm; font-size: 4mm">全校平均分:<span class="schoolavgscore blue"></span>分<spanclass="line"></spanclass=>全校最高分:<span class="schoolmaxscore blue"></span>分</div><h2 class="section_title_2">2.学科平均分对比</h2><div id="averagescoreEcharts" style="margin: 0 4mm 4mm; height: 80mm"></div></div><div class="page_root section2 section2_1 sectiontwo_' +
- s_index +
- '"><div class="cjdjheight"><h2 class="section_title_2">3.成绩等级分布</h2><div class="achievementdistribution"></div><h2 class="section_title_2">4.需关注学生</h2><h3 class="section_title_3">4.1 大幅进步分布</h3></div><div class="progress multicolumn"></div></div><div class="page_root section2 sectiontwo_' +
- s_index +
- '"><h3 class="section_title_3">4.2 大幅退步分布</h3><div class="retrogression"></div></div><div class="page_root section2 sectiontwo_' +
- s_index +
- '"><h3 class="section_title_3">4.3 临界生分布</h3><div class="critical"></div></div><div class="page_root section2 sectiontwo_' +
- s_index +
- '"><h3 class="section_title_3">4.4 波动生分布</h3><div class="wave"></div></div><div class="page_root section2 sectiontwo_' +
- s_index +
- '"><h2 class="section_title_2">5.高频错题分析</h2><div class="errquestion"></div></div>';
- });
- $(".ChapterTwo").html(html);
- $.each(parameter, function (s_index, item) {
- $(".section2.sectiontwo_" + s_index + " .classavgscore").text(
- item.classavgscore
- );
- $(".section2.sectiontwo_" + s_index + " .classavgscorerank").text(
- item.classavgscorerank
- );
- $(".section2.sectiontwo_" + s_index + " .yxrate").text(item.yxrate);
- $(".section2.sectiontwo_" + s_index + " .jgrate").text(item.jgrate);
- $(".section2.sectiontwo_" + s_index + " .classmaxscore").text(
- item.classmaxscore
- );
- $(".section2.sectiontwo_" + s_index + " .schoolavgscore").text(
- item.schoolavgscore
- );
- $(".section2.sectiontwo_" + s_index + " .schoolmaxscore").text(
- item.schoolmaxscore
- );
- initaveragescoreEcharts(item, s_index);
- achievementdistributiontable(item, s_index);
- progresstable(item, s_index);
- retrogression(item, s_index);
- critical(item, s_index);
- wave(item, s_index);
- errquestion(item, s_index);
- // document.documentElement.scrollTop = 8500;
- });
- });
|