Commit 40af1dd547351232b2e8f7477780fd234a4efa8e
1 parent
6a210cdd
1、修改学生报表界面(2)
Showing
4 changed files
with
251 additions
and
9 deletions
WebRoot/WEB-INF/jsp/sunvote/homework/homework_report.jsp
... | ... | @@ -32,6 +32,7 @@ |
32 | 32 | font-weight: initial;color:#000;} |
33 | 33 | .search_btn{width:30px;} |
34 | 34 | .btn{margin:0 5px;} |
35 | + .center{height:39px;} | |
35 | 36 | </style> |
36 | 37 | </head> |
37 | 38 | |
... | ... | @@ -76,7 +77,7 @@ |
76 | 77 | style="width:88px;" placeholder="结束日期" title="结束日期" /></td> |
77 | 78 | <td style="vertical-align:top;padding-left:2px"><a |
78 | 79 | class="btn btn-light btn-xs" onclick="tosearch();" title="检索"><img src="static/images/search.png" alt="" class="search_btn" /></a></td> |
79 | - <td><li class="btn btn-default btn-sm" onclick="tosearch_week(-1)">上一周</li></td> | |
80 | + <td><li class="btn ${pd.CURRENT_WEEK==-1?'btn-primary':'btn-default' } btn-default btn-sm" onclick="tosearch_week(-1)">上一周</li></td> | |
80 | 81 | <td><li class="btn btn-primary btn-sm" onclick="tosearch_week(0)">本周</li></td> |
81 | 82 | <td><li class="btn btn-default btn-sm" onclick="tosearch_week(1)">下一周</li></td> |
82 | 83 | </tr> |
... | ... | @@ -155,11 +156,10 @@ |
155 | 156 | |
156 | 157 | |
157 | 158 | </div> |
159 | + | |
158 | 160 | |
161 | + | |
159 | 162 | |
160 | - <div id="scrollableTable"></div> | |
161 | - </form> | |
162 | - </div> | |
163 | 163 | |
164 | 164 | <%@ include file="../../system/index/foot.jsp"%> |
165 | 165 | <script src="static/ace/js/bootbox.js"></script> |
... | ... | @@ -310,11 +310,12 @@ |
310 | 310 | $(document).ready(function(){ |
311 | 311 | window.top.loading.remove(); |
312 | 312 | |
313 | - var sour = "${testpaperList}"; | |
313 | + var sour = "${pd.DATA.HOMEWORKS}"; | |
314 | + | |
314 | 315 | |
315 | 316 | if(sour != null && sour.length > 3){ |
316 | 317 | var _width = $('#mainFrame', parent.document).width()-40; |
317 | - var _heigh = $('#mainFrame', parent.document).height()-100; | |
318 | + var _heigh = $('#mainFrame', parent.document).height()-250; | |
318 | 319 | var options = { |
319 | 320 | width: _width, |
320 | 321 | height: _heigh, | ... | ... |
WebRoot/WEB-INF/jsp/sunvote/homework/homework_student_report.jsp
... | ... | @@ -116,8 +116,9 @@ li { |
116 | 116 | </div> |
117 | 117 | <script type=""> |
118 | 118 | var URL = '<%=basePath%>${URL}'; |
119 | + var data = ${data}; | |
119 | 120 | </script> |
120 | - <script src="../static/js/control1.js?a=1"></script> | |
121 | + <script src="../static/js/home_control1.js?a=1"></script> | |
121 | 122 | <!-- 日期框 --> |
122 | 123 | <script> |
123 | 124 | //lay('#version').html('-v'+ laydate.v); |
... | ... | @@ -127,7 +128,7 @@ li { |
127 | 128 | // ,range: true |
128 | 129 | // }); |
129 | 130 | |
130 | - var data = ${data}; | |
131 | + | |
131 | 132 | $(document).ready(function(){ |
132 | 133 | window.top.loading.remove(); |
133 | 134 | }); |
... | ... | @@ -136,6 +137,17 @@ li { |
136 | 137 | autoclose : true, |
137 | 138 | todayHighlight : true |
138 | 139 | }); |
140 | +function student(classid,studentid){ | |
141 | + | |
142 | + var url = "<%=basePath%>homework/student.do?STUDENT_ID=" + studentid + "&CLASS_ID=" + classid ; | |
143 | + var startDate = $("#starDate").val(); | |
144 | + var endDate = $("#endDate").val(); | |
145 | + url = url + "&START_DATE=" + startDate + "&END_DATE=" + endDate ; | |
146 | + | |
147 | + //console.log(url); | |
148 | + window.location.href = url; | |
149 | + window.top.loading.show(); | |
150 | + } | |
139 | 151 | </script> |
140 | 152 | |
141 | 153 | ... | ... |
WebRoot/static/js/home_control1.js
0 → 100644
1 | + | |
2 | + var data0=[],data1=[],data2=[],data3=[]; | |
3 | + var startDate,endDate; | |
4 | + var studentid; | |
5 | + var data_temp,_index=0; | |
6 | + var home_all_score=0,home_avg_score=0,home_get_score=0,home_max_score=0; | |
7 | + function getQueryString(name) { | |
8 | + var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); | |
9 | + var r = window.location.search.substr(1).match(reg); | |
10 | + if (r != null) return unescape(r[2]); return null; | |
11 | + } | |
12 | + function getData(){ | |
13 | + | |
14 | + data_temp=data; | |
15 | + console.log(data); | |
16 | + var _html=''; | |
17 | + for(var i=0;i<data.STUDENTS.length;i++){ | |
18 | + _html+='<li style="cursor:pointer"><p>'+data.STUDENTS[i].NAME+'</p></li>'; | |
19 | + if(data.STUDENT_ID==data.STUDENTS[i].ID) | |
20 | + _index=i; | |
21 | + } | |
22 | + console.log(data.DATA.length); | |
23 | + for(var j=0;j<data.DATA.length;j++){ | |
24 | + home_all_score+=parseInt(data.DATA[j].PAPER_SCORE); | |
25 | + home_avg_score+=parseInt(data.DATA[j].AVG_SCORE); | |
26 | + home_max_score+=parseInt(data.DATA[j].GET_MAX_SCORE); | |
27 | + home_get_score+=parseInt(data.DATA[j].STUDENT_SCORE); | |
28 | + | |
29 | + } | |
30 | + | |
31 | + $(".content_l ul").html(_html); | |
32 | + | |
33 | + dataMethod(_index,data_temp); | |
34 | + $(".content_l li").eq(_index).siblings().removeClass("on"); | |
35 | + $(".content_l li").eq(_index).addClass("on"); | |
36 | + window.top.loading.remove(); | |
37 | + | |
38 | + | |
39 | + } | |
40 | + | |
41 | + $( document ).ready(function() { | |
42 | + $("#starDate").val(data.START_DATE); | |
43 | + $("#endDate").val(data.END_DATE); | |
44 | + | |
45 | + getData(); | |
46 | + | |
47 | + $(document).on("click",".content_l li",function(){ | |
48 | + | |
49 | + $(this).siblings().removeClass("on"); | |
50 | + $(this).addClass("on"); | |
51 | + _index=$(this).index(); | |
52 | + student(data.STUDENTS[_index].CLASS_ID,data.STUDENTS[_index].ID); | |
53 | + | |
54 | + }) | |
55 | + $("input[type=radio]").change(function(){ | |
56 | + | |
57 | + dataMethod(_index,data_temp); | |
58 | + }) | |
59 | + | |
60 | + $("#search").click(function(){ | |
61 | + | |
62 | + window.top.loading.show(); | |
63 | + startDate = $("#starDate").val(); | |
64 | + endDate = $("#endDate").val(); | |
65 | + getData(startDate,endDate); | |
66 | + | |
67 | + }) | |
68 | + | |
69 | + $(".prev").click(function(){ | |
70 | + _index-=1; | |
71 | + if(_index<0){ | |
72 | + _index=data_temp.data.studentList.length-1; | |
73 | + } | |
74 | + student(data.STUDENTS[_index].CLASS_ID,data.STUDENTS[_index].ID); | |
75 | + }) | |
76 | + $(".next").click(function(){ | |
77 | + _index+=1; | |
78 | + if(_index>(data_temp.STUDENTS.length-1)){ | |
79 | + _index=0; | |
80 | + } | |
81 | + student(data.STUDENTS[_index].CLASS_ID,data.STUDENTS[_index].ID); | |
82 | + }) | |
83 | + }); | |
84 | + | |
85 | + | |
86 | + function dataMethod(index,data){ | |
87 | + | |
88 | + if(data.DATA.length==0){ | |
89 | + return false; | |
90 | + } | |
91 | + | |
92 | + var GETSCORE = parseFloat(home_get_score); | |
93 | + var TOTALSCORE = parseFloat(home_all_score); | |
94 | + var ratio=(GETSCORE/TOTALSCORE*100).toFixed(2); | |
95 | + var class_avg= (home_avg_score/ home_all_score*100).toFixed(2); | |
96 | + var class_max=(home_max_score/ home_all_score*100).toFixed(2); | |
97 | + | |
98 | + var test_num=data.DATA.length; | |
99 | + var part_num=test_num; | |
100 | + | |
101 | + data0=[]; | |
102 | + data1=[]; | |
103 | + data2=[]; | |
104 | + data3=[]; | |
105 | + | |
106 | + //console.log(data.data.studentList[index].testList[2].SCORE); | |
107 | + if($("input[type='radio']:checked").val()==1){ | |
108 | + for(var i=0;i<test_num;i++){ | |
109 | + if(1>0){ | |
110 | + data0[i]=data.DATA[i].NAME+"\n"+data.DATA[i].COMPLETE_DATE;//data.data.studentList[index].testList[i].NAME + "\n" + data.data.studentList[index].testList[i].CREATE_DATE; | |
111 | + data1[i]=(data.DATA[i].AVG_SCORE/data.DATA[i].PAPER_SCORE*100).toFixed(2);//(data.data.studentList[index].testList[i].AVG_SCORE/data.data.studentList[index].testList[i].TOTAL_SCORE*100).toFixed(2); | |
112 | + data2[i]=(data.DATA[i].STUDENT_SCORE/data.DATA[i].PAPER_SCORE*100).toFixed(2);//(data.data.studentList[index].testList[i].SCORE/data.data.studentList[index].testList[i].TOTAL_SCORE*100).toFixed(2); | |
113 | + data3[i]=(data.DATA[i].GET_MAX_SCORE/data.DATA[i].PAPER_SCORE*100).toFixed(2);//(data.data.studentList[index].testList[i].MAX_SCORE/data.data.studentList[index].testList[i].TOTAL_SCORE*100).toFixed(2); | |
114 | + }else{ | |
115 | + data1[i]=0; | |
116 | + data2[i]=0; | |
117 | + data3[i]=0; | |
118 | + } | |
119 | + | |
120 | + if(data.DATA[i].STUDENT_SCOREE=="0") | |
121 | + part_num--; | |
122 | + } | |
123 | + }else if($("input[type='radio']:checked").val()==2){ | |
124 | + for(var i=0;i<test_num;i++){ | |
125 | + data0[i]=data.DATA[i].NAME+"\n"+data.DATA[i].COMPLETE_DATE; | |
126 | + data1[i]=data.DATA[i].AVG_SCORE; | |
127 | + data2[i]=data.DATA[i].STUDENT_SCOREE; | |
128 | + data3[i]=data.DATA[i].GET_MAX_SCORE; | |
129 | + if(data.DATA[i].STUDENT_SCOREE=="0") | |
130 | + part_num--; | |
131 | + } | |
132 | + } | |
133 | + | |
134 | + console.log(data0); | |
135 | + console.log(data1); | |
136 | + console.log(data2); | |
137 | + console.log(data2); | |
138 | + var partake=(part_num/test_num*100).toFixed(2); | |
139 | + | |
140 | + | |
141 | + $("#class_avg").html(class_avg); | |
142 | + $("#class_max").html(class_max); | |
143 | + //console.log(data); | |
144 | + $(".name h1").html(data.DATA[0].STUDENT_NAME); | |
145 | + $(".circle .col-md-6").eq(1).html('<div id="myStathalf1" data-dimension="350" data-text="'+ratio+"%"+'" data-info="个人平均得分率" data-width="10" data-fontsize="38" data-percent="'+ratio+'" data-fgcolor="#8ad254" data-bgcolor="#a9f9ff" data-type="half" data-fill="#50b5c9"></div>'); | |
146 | + $(".circle .col-md-6").eq(0).html('<div id="myStathalf" data-dimension="350" data-text="'+part_num+'/'+test_num+'" data-info="参与测试" data-width="10" data-fontsize="38" data-percent="'+partake+'" data-fgcolor="#8ad254" data-bgcolor="#a9f9ff" data-type="half" data-fill="#50b5c9"></div>'); | |
147 | + $('#myStathalf1').circliful(); | |
148 | + $('#myStathalf').circliful(); | |
149 | + myChart.setOption({ | |
150 | + tooltip:{ | |
151 | + trigger: 'axis' | |
152 | + }, | |
153 | + xAxis: { | |
154 | + type: 'category', | |
155 | + data: data0 | |
156 | + /*, | |
157 | + axisLabel:{interval: 0}*/ | |
158 | + }, | |
159 | + yAxis: { | |
160 | + type: 'value', | |
161 | + splitArea: {show: true} | |
162 | + }, | |
163 | + series: [{ | |
164 | + name:"班级平均分", | |
165 | + data: data1, | |
166 | + type: 'line', | |
167 | + symbol: 'circle', | |
168 | + symbolSize: 5, | |
169 | + lineStyle: { | |
170 | + normal: { | |
171 | + color: '#93D150', | |
172 | + width: 2, | |
173 | + type: 'dashed' | |
174 | + } | |
175 | + }, | |
176 | + itemStyle: { | |
177 | + normal: { | |
178 | + borderWidth: 2, | |
179 | + borderColor: '#93D150', | |
180 | + color: '#93D150' | |
181 | + } | |
182 | + } | |
183 | + },{ | |
184 | + name:"班级最高分", | |
185 | + data: data3, | |
186 | + type: 'line', | |
187 | + symbol: 'circle', | |
188 | + symbolSize: 5, | |
189 | + lineStyle: { | |
190 | + normal: { | |
191 | + color: '#FFC004', | |
192 | + width: 2, | |
193 | + type: 'dashed', | |
194 | + } | |
195 | + }, | |
196 | + itemStyle: { | |
197 | + normal: { | |
198 | + borderWidth: 2, | |
199 | + borderColor: '#FFC004', | |
200 | + color: '#FFC004' | |
201 | + } | |
202 | + } | |
203 | + },{ | |
204 | + name:"个人成绩", | |
205 | + data: data2, | |
206 | + type: 'line', | |
207 | + symbol: 'circle', | |
208 | + symbolSize: 10, | |
209 | + lineStyle: { | |
210 | + normal: { | |
211 | + color: '#45a6f3', | |
212 | + width: 4, | |
213 | + type: 'solid' | |
214 | + } | |
215 | + }, | |
216 | + itemStyle: { | |
217 | + normal: { | |
218 | + borderWidth: 3, | |
219 | + borderColor: '#45a6f3', | |
220 | + color: '#45a6f3', | |
221 | + label : {show: true,color:'#000'} | |
222 | + } | |
223 | + } | |
224 | + }] | |
225 | + }); | |
226 | + } | |
227 | + | |
228 | + | |
229 | + var myChart = echarts.init(document.getElementById('main')); | ... | ... |
src/com/fh/controller/sunvote/homework/HomeworkController.java
... | ... | @@ -393,7 +393,7 @@ public class HomeworkController extends BaseController { |
393 | 393 | pd.put("END_DATE", getWeekEnd(current)); |
394 | 394 | } |
395 | 395 | String studentId = pd.getString("STUDENT_ID") ; |
396 | - pd.remove("STUDENT_ID"); | |
396 | + //pd.remove("STUDENT_ID"); | |
397 | 397 | List<PageData> dataList = homeworkService.report(pd); |
398 | 398 | pd.put("DATA", dataList); |
399 | 399 | if(pd.get("CLASS_ID") != null){ | ... | ... |