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,6 +32,7 @@ | ||
32 | font-weight: initial;color:#000;} | 32 | font-weight: initial;color:#000;} |
33 | .search_btn{width:30px;} | 33 | .search_btn{width:30px;} |
34 | .btn{margin:0 5px;} | 34 | .btn{margin:0 5px;} |
35 | + .center{height:39px;} | ||
35 | </style> | 36 | </style> |
36 | </head> | 37 | </head> |
37 | 38 | ||
@@ -76,7 +77,7 @@ | @@ -76,7 +77,7 @@ | ||
76 | style="width:88px;" placeholder="结束日期" title="结束日期" /></td> | 77 | style="width:88px;" placeholder="结束日期" title="结束日期" /></td> |
77 | <td style="vertical-align:top;padding-left:2px"><a | 78 | <td style="vertical-align:top;padding-left:2px"><a |
78 | class="btn btn-light btn-xs" onclick="tosearch();" title="检索"><img src="static/images/search.png" alt="" class="search_btn" /></a></td> | 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 | <td><li class="btn btn-primary btn-sm" onclick="tosearch_week(0)">本周</li></td> | 81 | <td><li class="btn btn-primary btn-sm" onclick="tosearch_week(0)">本周</li></td> |
81 | <td><li class="btn btn-default btn-sm" onclick="tosearch_week(1)">下一周</li></td> | 82 | <td><li class="btn btn-default btn-sm" onclick="tosearch_week(1)">下一周</li></td> |
82 | </tr> | 83 | </tr> |
@@ -155,11 +156,10 @@ | @@ -155,11 +156,10 @@ | ||
155 | 156 | ||
156 | 157 | ||
157 | </div> | 158 | </div> |
159 | + | ||
158 | 160 | ||
161 | + | ||
159 | 162 | ||
160 | - <div id="scrollableTable"></div> | ||
161 | - </form> | ||
162 | - </div> | ||
163 | 163 | ||
164 | <%@ include file="../../system/index/foot.jsp"%> | 164 | <%@ include file="../../system/index/foot.jsp"%> |
165 | <script src="static/ace/js/bootbox.js"></script> | 165 | <script src="static/ace/js/bootbox.js"></script> |
@@ -310,11 +310,12 @@ | @@ -310,11 +310,12 @@ | ||
310 | $(document).ready(function(){ | 310 | $(document).ready(function(){ |
311 | window.top.loading.remove(); | 311 | window.top.loading.remove(); |
312 | 312 | ||
313 | - var sour = "${testpaperList}"; | 313 | + var sour = "${pd.DATA.HOMEWORKS}"; |
314 | + | ||
314 | 315 | ||
315 | if(sour != null && sour.length > 3){ | 316 | if(sour != null && sour.length > 3){ |
316 | var _width = $('#mainFrame', parent.document).width()-40; | 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 | var options = { | 319 | var options = { |
319 | width: _width, | 320 | width: _width, |
320 | height: _heigh, | 321 | height: _heigh, |
WebRoot/WEB-INF/jsp/sunvote/homework/homework_student_report.jsp
@@ -116,8 +116,9 @@ li { | @@ -116,8 +116,9 @@ li { | ||
116 | </div> | 116 | </div> |
117 | <script type=""> | 117 | <script type=""> |
118 | var URL = '<%=basePath%>${URL}'; | 118 | var URL = '<%=basePath%>${URL}'; |
119 | + var data = ${data}; | ||
119 | </script> | 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 | <script> | 123 | <script> |
123 | //lay('#version').html('-v'+ laydate.v); | 124 | //lay('#version').html('-v'+ laydate.v); |
@@ -127,7 +128,7 @@ li { | @@ -127,7 +128,7 @@ li { | ||
127 | // ,range: true | 128 | // ,range: true |
128 | // }); | 129 | // }); |
129 | 130 | ||
130 | - var data = ${data}; | 131 | + |
131 | $(document).ready(function(){ | 132 | $(document).ready(function(){ |
132 | window.top.loading.remove(); | 133 | window.top.loading.remove(); |
133 | }); | 134 | }); |
@@ -136,6 +137,17 @@ li { | @@ -136,6 +137,17 @@ li { | ||
136 | autoclose : true, | 137 | autoclose : true, |
137 | todayHighlight : true | 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 | </script> | 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,7 +393,7 @@ public class HomeworkController extends BaseController { | ||
393 | pd.put("END_DATE", getWeekEnd(current)); | 393 | pd.put("END_DATE", getWeekEnd(current)); |
394 | } | 394 | } |
395 | String studentId = pd.getString("STUDENT_ID") ; | 395 | String studentId = pd.getString("STUDENT_ID") ; |
396 | - pd.remove("STUDENT_ID"); | 396 | + //pd.remove("STUDENT_ID"); |
397 | List<PageData> dataList = homeworkService.report(pd); | 397 | List<PageData> dataList = homeworkService.report(pd); |
398 | pd.put("DATA", dataList); | 398 | pd.put("DATA", dataList); |
399 | if(pd.get("CLASS_ID") != null){ | 399 | if(pd.get("CLASS_ID") != null){ |