Commit a764d28891dfae23690b8728890d7ed7a7aa8d11
1 parent
b3c44d84
修改课后练bug
Showing
9 changed files
with
102 additions
and
36 deletions
WebRoot/WEB-INF/jsp/sunvote/homework/homework_item_report.jsp
... | ... | @@ -64,8 +64,8 @@ |
64 | 64 | <th class="center"><div style="width:109px;">键盘</div></th> |
65 | 65 | <th class="center"><div style="width:80px;">正确率</div></th> |
66 | 66 | <th class="center"><div style="width:80px;">得分</div></th> |
67 | - <c:set value="${ fn:split(pd.DATA[0].ANSWER, ';') }" var="ANSWER" /> | |
68 | - <c:forEach items="${ANSWER}" var="var" varStatus="vs"> | |
67 | + <c:set value="${ fn:split(pd.HOMEWORKINFO.ANSWER_PERSENT, ',') }" var="AN" /> | |
68 | + <c:forEach items="${AN}" var="var" varStatus="vs"> | |
69 | 69 | <th class="center th_w"><div style="width:80px;margin:0 auto;">题目${vs.index+1}</div></th> |
70 | 70 | </c:forEach> |
71 | 71 | |
... | ... | @@ -84,9 +84,10 @@ |
84 | 84 | <td class="center"><div style="width:80px;">${var.KEYPAD_ID}</div></td> |
85 | 85 | <td class="center"><div style="width:109px;"><fmt:formatNumber type="number" value="${pd.DATA[vs.index].STUDENT_SCORE/pd.DATA[vs.index].PAPER_SCORE*100}" pattern="0.00"/>%</div></td> |
86 | 86 | <td class="center"><div style="width:80px;">${pd.DATA[vs.index].STUDENT_SCORE}</div></td> |
87 | - | |
88 | - <c:forEach items="${ANSWER}" var="var1" varStatus="vs1"> | |
89 | - <c:set value="${ fn:split(ANSWER[vs1.index], ',') }" var="ANSWER1" /> | |
87 | + <c:set value="${ fn:split(pd.DATA[vs.index].ANSWER, ';') }" var="ANSWER2" /> | |
88 | + <c:set value="${ fn:split(pd.HOMEWORKINFO.ANSWER_PERSENT, ',') }" var="AN" /> | |
89 | + <c:forEach items="${AN}" var="var1" varStatus="vs1"> | |
90 | + <c:set value="${ fn:split(ANSWER2[vs1.index], ',') }" var="ANSWER1" /> | |
90 | 91 | <td class="center td_w" <c:if test="${ANSWER1[1]== '1'}">style="background:#0bb8b9"</c:if>><div style="width:80px;margin:0 auto;">${ANSWER1[0]==""?"--":ANSWER1[0]}</div></td> |
91 | 92 | </c:forEach> |
92 | 93 | ... | ... |
WebRoot/WEB-INF/jsp/sunvote/homework/homework_list.jsp
... | ... | @@ -120,7 +120,7 @@ |
120 | 120 | </tbody> |
121 | 121 | </table> |
122 | 122 | <div class="footer"> |
123 | - <div class="creat"> | |
123 | + <div class="creat" <c:if test="${pd.SCHOOL_ID != '' and pd.SCHOOL_ID != null}">style="display:none;"</c:if>> | |
124 | 124 | <input type="button" onclick="add('${pd.TEACHER_ID}')" value="布置练习" /> |
125 | 125 | </div> |
126 | 126 | <div class="removeAll"> | ... | ... |
WebRoot/WEB-INF/jsp/sunvote/homework/homework_view.jsp
WebRoot/WEB-INF/jsp/sunvote/teacher/en_teacher_main.jsp
... | ... | @@ -48,11 +48,13 @@ |
48 | 48 | </div> |
49 | 49 | <div class="name"> |
50 | 50 | <p>Welcome!</p> |
51 | - <p id="name">${pd.TEACHER[0].TEACHER_NAME }</p> | |
52 | - <p id="school">${pd.TEACHER[0].SCHOOL_NAME }</p> | |
51 | + <p id="name">${pd.TEACHER.TNAME }</p> | |
52 | + <p id="school">${pd.TEACHER.SNAME }</p> | |
53 | 53 | </div> |
54 | 54 | </div> |
55 | - <div class="class tab1"> | |
55 | + <br /> <br /> <br /> | |
56 | + | |
57 | + <%-- <div class="class tab1"> | |
56 | 58 | <p> |
57 | 59 | Classes<span class="right jiao"></span> |
58 | 60 | </p> |
... | ... | @@ -61,49 +63,51 @@ |
61 | 63 | <li onclick="event.stopPropagation();chooseClass('${var.CLASS_ID}','${var.TERM_ID}')"><p>${var.CLASS_NAME} |
62 | 64 | <span>${var.SUBJECT_ENAME}</span></p> |
63 | 65 | </li> |
64 | - </c:forEach> | |
66 | + </c:forEach> | |
65 | 67 | |
66 | 68 | </ul> |
67 | - </div> | |
69 | + </div> --%> | |
68 | 70 | <div class="testpaper tab1"> |
69 | - <p>Test Papers<span class="right jiao"></span></p> | |
71 | + <p>E-Test<span class="right jiao"></span></p> | |
70 | 72 | <ul class="menu_1"> |
71 | 73 | <li > |
72 | - <p id="qingsongkao_paper">E-exam Papers</p> | |
74 | + <p id="qingsongkao_paper">Papers</p> | |
73 | 75 | <!-- <ul class="menu_2"> |
74 | 76 | <li><p>高一数学 202班</p></li> |
75 | 77 | <li><p>高一数学 203班</p></li> |
76 | 78 | </ul> --> |
77 | 79 | </li> |
78 | - <li> | |
79 | - <p id="jishice_paper">E-class Papers</p> | |
80 | - | |
81 | - <!-- <ul class="menu_2"> | |
82 | - <li><p>高一数学 202班</p></li> | |
83 | - <li><p>高一数学 203班</p></li> | |
84 | - </ul> --> | |
80 | + <li > | |
81 | + <p>Tests</p> | |
82 | + <ul class="menu_2"> | |
83 | + <c:forEach items="${pd.CLASSINFO}" var="var" varStatus="vs"> | |
84 | + <li onclick="event.stopPropagation();report('${var.CLASS_ID}')"><p>Result of ${var.CLASS_NAME} | |
85 | + </p></li> | |
86 | + </c:forEach> | |
87 | + </ul> | |
85 | 88 | </li> |
89 | + | |
86 | 90 | </ul> |
87 | 91 | |
88 | 92 | </div> |
89 | 93 | <div class="analyse tab1"> |
90 | 94 | <p> |
91 | - Result Analysis<span class="right jiao"></span> | |
95 | + E-class<span class="right jiao"></span> | |
92 | 96 | </p> |
93 | 97 | |
94 | 98 | <ul class="menu_1"> |
95 | - <li > | |
96 | - <p>E-exam Tests</p> | |
97 | - <ul class="menu_2"> | |
98 | - <c:forEach items="${pd.TEACHER}" var="var" varStatus="vs"> | |
99 | - <li onclick="event.stopPropagation();report('${var.CLASS_ID}')"><p>Result of ${var.CLASS_NAME}</p></li> | |
100 | - </c:forEach> | |
101 | - </ul> | |
99 | + <li> | |
100 | + <p id="jishice_paper">Papers</p> | |
101 | + | |
102 | + <!-- <ul class="menu_2"> | |
103 | + <li><p>高一数学 202班</p></li> | |
104 | + <li><p>高一数学 203班</p></li> | |
105 | + </ul> --> | |
102 | 106 | </li> |
103 | 107 | <li> |
104 | - <p>E-class Tests</p> | |
108 | + <p>Tests</p> | |
105 | 109 | <ul class="menu_2"> |
106 | - <c:forEach items="${pd.TEACHER}" var="var" varStatus="vs"> | |
110 | + <c:forEach items="${pd.CLASSINFO}" var="var" varStatus="vs"> | |
107 | 111 | <li onclick="event.stopPropagation();report2('${var.CLASS_ID}')"><p>Result of ${var.CLASS_NAME}</p></li> |
108 | 112 | </c:forEach> |
109 | 113 | </ul> | ... | ... |
resources/mybatis1/api/V1Mapper.xml
resources/mybatis1/sunvote/HomeworkMapper.xml
resources/mybatis1/sunvote/HomeworkReportMapper.xml
... | ... | @@ -12,6 +12,7 @@ |
12 | 12 | HOMEWORK_REPORT_ID, |
13 | 13 | RANK, |
14 | 14 | STUDENT_NAME, |
15 | + STUDENT_ID, | |
15 | 16 | STUDNET_NO, |
16 | 17 | KEYBOARD, |
17 | 18 | RIGHT_PERSENT, |
... | ... | @@ -26,6 +27,7 @@ |
26 | 27 | #{HOMEWORK_REPORT_ID}, |
27 | 28 | #{RANK}, |
28 | 29 | #{STUDENT_NAME}, |
30 | + #{STUDENT_ID}, | |
29 | 31 | #{STUDNET_NO}, |
30 | 32 | #{KEYBOARD}, |
31 | 33 | #{RIGHT_PERSENT}, |
... | ... | @@ -61,6 +63,7 @@ |
61 | 63 | set |
62 | 64 | RANK = #{RANK}, |
63 | 65 | STUDENT_NAME = #{STUDENT_NAME}, |
66 | + STUDENT_ID = #{STUDENT_ID}, | |
64 | 67 | STUDNET_NO = #{STUDNET_NO}, |
65 | 68 | KEYBOARD = #{KEYBOARD}, |
66 | 69 | RIGHT_PERSENT = #{RIGHT_PERSENT}, |
... | ... | @@ -78,6 +81,7 @@ |
78 | 81 | set |
79 | 82 | RANK = #{RANK}, |
80 | 83 | STUDENT_NAME = #{STUDENT_NAME}, |
84 | + STUDENT_ID = #{STUDENT_ID}, | |
81 | 85 | STUDNET_NO = #{STUDNET_NO}, |
82 | 86 | KEYBOARD = #{KEYBOARD}, |
83 | 87 | RIGHT_PERSENT = #{RIGHT_PERSENT}, |
... | ... | @@ -85,9 +89,9 @@ |
85 | 89 | ANSWER = #{ANSWER}, |
86 | 90 | HOMEWORK_ID = #{HOMEWORK_ID} |
87 | 91 | where |
92 | + STUDENT_ID = #{STUDENT_ID} | |
93 | + and | |
88 | 94 | HOMEWORK_ID = #{HOMEWORK_ID} |
89 | - and | |
90 | - STUDNET_NO = #{STUDNET_NO} | |
91 | 95 | </update> |
92 | 96 | |
93 | 97 | <!-- 通过ID获取数据 --> |
... | ... | @@ -164,13 +168,14 @@ |
164 | 168 | #{item.HOMEWORK_REPORT_ID}, |
165 | 169 | #{item.RANK}, |
166 | 170 | #{item.STUDENT_NAME}, |
171 | + #{item.STUDENT_ID}, | |
167 | 172 | #{item.STUDNET_NO}, |
168 | 173 | #{item.KEYBOARD}, |
169 | 174 | #{item.RIGHT_PERSENT}, |
170 | 175 | #{item.GET_SCORE}, |
171 | 176 | #{item.ANSWER}, |
177 | + #{item.COMPLETE_COUNT}, | |
172 | 178 | #{item.HOMEWORK_ID} |
173 | - #{item.COMPLETE_COUNT} | |
174 | 179 | ) |
175 | 180 | </foreach> |
176 | 181 | </insert> | ... | ... |
src/com/fh/controller/api/V1.java
... | ... | @@ -2908,9 +2908,10 @@ public class V1 extends BaseController { |
2908 | 2908 | // 1. 根据班级id 查询班级学生列表 |
2909 | 2909 | List<PageData> student = studentService.findByClassId(homePd); |
2910 | 2910 | for(PageData ptd : student){ |
2911 | + ptd.put("STUDENT_ID", ptd.get("ID")); | |
2911 | 2912 | ptd.put("STUDENT_NAME", ptd.get("NAME")); |
2912 | 2913 | ptd.put("HOMEWORK_REPORT_ID", this.get32UUID()); |
2913 | - ptd.put("STUDENT_NO", ptd.get("SNO")); | |
2914 | + ptd.put("STUDENT_NO", ptd.get("NUMBER")); | |
2914 | 2915 | ptd.put("RANK", student.size() + ""); |
2915 | 2916 | ptd.put("KEYBOARD", ptd.get("KEYPAD_ID")); |
2916 | 2917 | ptd.put("RIGHT_PERSENT", "0%"); | ... | ... |
src/com/fh/controller/sunvote/homework/HomeworkController.java
... | ... | @@ -5,6 +5,8 @@ import java.text.DateFormat; |
5 | 5 | import java.text.SimpleDateFormat; |
6 | 6 | import java.util.ArrayList; |
7 | 7 | import java.util.Calendar; |
8 | +import java.util.Collections; | |
9 | +import java.util.Comparator; | |
8 | 10 | import java.util.Date; |
9 | 11 | import java.util.HashMap; |
10 | 12 | import java.util.List; |
... | ... | @@ -369,6 +371,7 @@ public class HomeworkController extends BaseController { |
369 | 371 | stuPd.put("STUDENT_ID", stuPd.get("ID")); |
370 | 372 | stuPd.remove("ID"); |
371 | 373 | } |
374 | + | |
372 | 375 | for (PageData hpd : homeworkList) { |
373 | 376 | hpd.remove("QUESTION_COUNT"); |
374 | 377 | hpd.remove("COMPLETE_COUNT"); |
... | ... | @@ -504,6 +507,55 @@ public class HomeworkController extends BaseController { |
504 | 507 | } |
505 | 508 | if(pd.get("HOMEWORK_ID") != null){ |
506 | 509 | List<PageData> dataList = homeworkService.report(pd); |
510 | + Collections.sort(dataList,new Comparator<PageData>(){ | |
511 | + | |
512 | + @Override | |
513 | + public int compare(PageData o1, PageData o2) { | |
514 | + String o1GetScore = o1.getString("STUDENT_SCORE"); | |
515 | + String o2GetScore = o2.getString("STUDENT_SCORE"); | |
516 | + float o1score = 0 ; | |
517 | + float o2score = 0 ; | |
518 | + try{ | |
519 | + o1score = Float.parseFloat(o1GetScore); | |
520 | + }catch(Exception e){ | |
521 | + o1score = -1 ; | |
522 | + } | |
523 | + try{ | |
524 | + o2score = Float.parseFloat(o2GetScore); | |
525 | + }catch(Exception e){ | |
526 | + o2score = -1 ; | |
527 | + } | |
528 | + return o1score - o2score > 0 ? -1 : 1; | |
529 | + } | |
530 | + | |
531 | + }); | |
532 | + for(int i = 0 ; i < dataList.size(); i++){ | |
533 | + PageData tpd1 = dataList.get(i); | |
534 | + if(i == 0){ | |
535 | + tpd1.put("RANK", (i+1)); | |
536 | + }else{ | |
537 | + PageData tpd2 = dataList.get(i-1); | |
538 | + String o1GetScore = tpd1.getString("STUDENT_SCORE"); | |
539 | + String o2GetScore = tpd2.getString("STUDENT_SCORE"); | |
540 | + float o1score = 0 ; | |
541 | + float o2score = 0 ; | |
542 | + try{ | |
543 | + o1score = Float.parseFloat(o1GetScore); | |
544 | + }catch(Exception e){ | |
545 | + o1score = -1 ; | |
546 | + } | |
547 | + try{ | |
548 | + o2score = Float.parseFloat(o2GetScore); | |
549 | + }catch(Exception e){ | |
550 | + o2score = -1 ; | |
551 | + } | |
552 | + if(o2score - o1score == 0){ | |
553 | + tpd1.put("RANK",tpd2.get("RANK")); | |
554 | + }else{ | |
555 | + tpd1.put("RANK", (i+1)); | |
556 | + } | |
557 | + } | |
558 | + } | |
507 | 559 | pd.put("DATA", dataList); |
508 | 560 | } |
509 | 561 | if(pd.get("CLASS_ID") != null){ | ... | ... |