Commit 9f7ad69b41a3d94eee2cd686c9e5046c38c4e1cb

Authored by 孙向锦
1 parent 0aad4b6b

吴杰0827修改

WebRoot/WEB-INF/jsp/sunvote/teacher/paper_view.jsp
... ... @@ -102,7 +102,7 @@
102 102 <script src="../static/js/echars.js"></script>
103 103 <script src="../static/js/loading.js"></script>
104 104 <script>
105   - var url="http://127.0.0.1:8080/SunvoteEducation";
  105 + var url="";
106 106 var question_box=[];
107 107 function slide(obj){ //查看解析
108 108 obj.closest(".star_box").siblings(".resolve").slideToggle(function(){
... ... @@ -123,24 +123,36 @@ function getQueryString(name) {
123 123 var userid=getQueryString("userid");
124 124  
125 125 var _html="";
  126 + var question_id_arry="";
126 127 $(document).ready(function(){
127 128 window.top.loading.remove();
  129 + var data=JSON.parse(sessionStorage.getItem("data"));
  130 + console.log(data);
  131 + $("#paper_title").html(data.title);
  132 + $("#time").html(data.exam_time);
  133 + if(data.questions.length>0){
  134 + for(var i=0;i<data.questions.length;i++){
  135 + question_id_arry+=data.questions[i].question_id+',';
  136 + }
  137 + getQuestionInfo(question_id_arry);
  138 + }
  139 +
  140 + })
  141 + function getQuestionInfo(id){
128 142 $.ajax({
129   - url:url+"/api/v1/paperinfo",
130   - async:false,
  143 + url:url+"/SunvoteEducation/api/v1/question",
  144 + async:true,
131 145 type:"post",
132   - data:{PAPER_ID:PAPER_ID},
  146 + data:{ID:id},
133 147 success:function(data){
134 148 console.log(data);
135   - $("#paper_title").html(data.data.title);
136   - $("#time").html(data.data.exam_time);
137   - if(data.data.questions.length>0){
138   - for(var i=0;i<data.data.questions.length;i++){
139   - _html += '<li class="question_li" data-id="'+data.data.questions[i].question_id+'"><div class="stem"></div><div class="option"><ul></ul><div class="clearfix"></div></div><div class="resolve"><div class="resolve_box"><p>【答案】 '+data.data.questions[i].answer+'</p><p><span>【解析】</span>'+data.data.questions[i].analysis+'</p></div><div class="clearfix"></div></div><div class="star_box"><div class="col-md-6 move"><img src="../static/images/up_ico.png" class="up"/><img src="../static/images/down_ico.png" class="down"/></div><div class="col-md-6"><div class="star"><span style="float:left;">难度</span></div><div class="resolve_click"><a onclick="slide($(this))">查看解析</a></div></div><div class="clearfix"></div></div></li>';
  149 + if(data.data.length>0){
  150 + for(var i=0;i<data.data.length;i++){
  151 + _html += '<li class="question_li" data-id="'+data.data[i].QUESTION_ID+'"><div class="stem"></div><div class="option"><ul></ul><div class="clearfix"></div></div><div class="resolve"><div class="resolve_box"><p>【答案】 '+data.data[i].ANSWER+'</p><p><span>【解析】</span>'+data.data[i].ANALYSIS+'</p></div><div class="clearfix"></div></div><div class="star_box"><div class="col-md-6 move"><img src="../static/images/up_ico.png" class="up"/><img src="../static/images/down_ico.png" class="down"/></div><div class="col-md-6"><div class="star"><span style="float:left;">难度</span></div><div class="resolve_click"><a onclick="slide($(this))">查看解析</a></div></div><div class="clearfix"></div></div></li>';
140 152 }
141 153 console.log(_html);
142 154 $(".analysis ul").html(_html);
143   - for(var j=0;j<data.data.questions.length;j++){
  155 + for(var j=0;j<data.data.length;j++){
144 156 var option_html="";
145 157 var sum=0;
146 158 var right_num=0;
... ... @@ -148,22 +160,23 @@ function getQueryString(name) {
148 160 var data2=[];
149 161 var answer="";
150 162 var color=[];
151   - $(".analysis li .stem").eq(j).append('<span class="li_index">'+(j+1)+'</span>、'+data.data.questions[j].content);
152   - var arry_option=data.data.questions[j].option_content;
153   - arry_option=arry_option.replace("[","");
154   - arry_option=arry_option.replace("]","");
155   - arry_option=arry_option.split(",");
  163 + $(".analysis li .stem").eq(j).append('<span class="li_index">'+(j+1)+'</span>、'+data.data[j].CONTENT);
  164 + var arry_option=data.data[j].OPTION_CONTENT;
  165 + //arry_option=arry_option.replace("[","");
  166 + //arry_option=arry_option.replace("]","");
  167 + //arry_option=arry_option.split(",");
156 168  
157 169 for(var x=0;x<arry_option.length;x++){
158 170 option_html += '<li><span>'+String.fromCharCode(64 + parseInt(x+1))+'.</span>'+arry_option[x]+'</li>';
159 171 }
160 172 $(".option").eq(j).html(option_html);
161   - star(j,parseInt(data.data.questions[j].difficulty));
  173 + star(j,parseInt(data.data[j].DIFFICULTY));
162 174 }
163 175 }
164 176 }
165 177 })
166   - })
  178 +
  179 + }
167 180 function star(index,num){ //难度星级
168 181 $(".star").eq(index).append('<ul></ul>');
169 182 var li_html="";
... ... @@ -244,7 +257,7 @@ function getQueryString(name) {
244 257 };
245 258 //console.log(data);
246 259 $.ajax({
247   - url:url+"/api/v1/publishpaper",
  260 + url:url+"/SunvoteEducation/api/v1/publishpaper",
248 261 async:false,
249 262 type:"post",
250 263 dataType: "json",
... ...
WebRoot/WEB-INF/jsp/sunvote/teacher/paper_view1.jsp
... ... @@ -41,7 +41,7 @@
41 41  
42 42 <div class="col-md-12 analysis">
43 43 <ul>
44   - <li>
  44 + <!--<li>
45 45 <div class="stem">
46 46 <p>1.如图,检测4个足球,其中超过标准质量的克数记为正数,不足标准质量的克数记为负数.从轻重的角度看,最接近标准的是(  )</p>
47 47 </div>
... ... @@ -106,17 +106,46 @@
106 106 </div>
107 107 <div class="clearfix"></div>
108 108 </div>
109   - </li>
  109 + </li>-->
110 110 </ul>
111 111 </div>
112 112 </div>
113   -
  113 + <div class="modal fade" id="myModal" tabindex="-1" role="dialog">
  114 + <div class="modal-dialog" role="document">
  115 + <div class="modal-content">
  116 + <div class="modal-header">
  117 + <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">&times;</span></button>
  118 + <h4 class="modal-title">完成选题</h4>
  119 + </div>
  120 + <div class="modal-body">
  121 + <table class="table table-bordered">
  122 + <thead>
  123 + <tr>
  124 + <th>序号</th>
  125 + <th>学生姓名</th>
  126 + <th>选项</th>
  127 + <th>答题时间</th>
  128 + </tr>
  129 + </thead>
  130 + <tbody class="student_list">
  131 +
  132 + </tbody>
  133 + </table>
  134 + </div>
  135 + <div class="modal-footer">
  136 + <button type="button" class="btn btn-default" data-dismiss="modal">取消</button>
  137 + <button type="button" class="btn btn-primary" id="submit">确定</button>
  138 + </div>
  139 + </div><!-- /.modal-content -->
  140 + </div><!-- /.modal-dialog -->
  141 + </div><!-- /.modal -->
114 142 </div>
115 143 <script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
  144 + <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
116 145 <script src="../static/js/echars.js"></script>
117 146 <script src="../static/js/loading.js"></script>
118 147 <script>
119   - var url="http://127.0.0.1:8080/SunvoteEducation";
  148 + var url="";
120 149 function slide(obj){ //查看详情
121 150 obj.closest(".star_box").siblings(".resolve").slideToggle(function(){
122 151 if($(".resolve").css("display") == "none")
... ... @@ -171,7 +200,7 @@
171 200 ],
172 201 series : [
173 202 {
174   - name:'直接访问',
  203 + name:'选项人数',
175 204 type:'bar',
176 205 barWidth: '60%',
177 206 data:data1,
... ... @@ -202,7 +231,7 @@ function getQueryString(name) {
202 231 $(document).ready(function(){
203 232 window.top.loading.remove();
204 233 $.ajax({
205   - url:url+"/api/v1/testpaperinfo",
  234 + url:url+"/SunvoteEducation/api/v1/testpaperinfo",
206 235 async:false,
207 236 type:"post",
208 237 data:{ID:testpaperId},
... ... @@ -212,7 +241,7 @@ function getQueryString(name) {
212 241 $("#time").html(data.data.CREATE_DATE);
213 242 if(data.data.QUESTIONS.length>0){
214 243 for(var i=0;i<data.data.QUESTIONS.length;i++){
215   - _html += '<li class="question_li"><div class="stem"></div><div class="option"><ul></ul><div class="clearfix"></div></div><div class="resolve"><div class="resolve_box"><p>【答案】 '+data.data.QUESTIONS[i].ANSWER+'</p><p><span>【解析】</span>'+data.data.QUESTIONS[i].ANALYSIS+'</p></div><div class="clearfix"></div><div class="tab_report_box"><div class="col-md-3"><p>答错人数</p><div class="round_w_orange"><div class="round_n_orange"><span>0/0</span></div></div></div><div class="col-md-3"><p>错误率</p><div class="round_w_red"><div class="round_n_red"><span>100%</span></div></div></div><div class="col-md-6"><div id="main'+i+'" style="width:250px;height:140px;"></div></div><div class="clearfix"></div></div></div><div class="star_box"><div class="col-md-6">错误学生:0/0</div><div class="col-md-6"><div class="star"><span style="float:left;">难度</span></div><div class="resolve_click"><a onclick="slide($(this))">查看详情</a></div></div><div class="clearfix"></div></div></li>';
  244 + _html += '<li class="question_li" data-id="'+data.data.QUESTIONS[i].QUESTION_ID+'"><div class="stem"></div><div class="option"><ul></ul><div class="clearfix"></div></div><div class="resolve"><div class="resolve_box"><p>【答案】 '+data.data.QUESTIONS[i].ANSWER+'</p><p><span>【解析】</span>'+data.data.QUESTIONS[i].ANALYSIS+'</p></div><div class="clearfix"></div><div class="tab_report_box"><div class="col-md-3"><p>答错人数</p><div class="round_w_orange"><div class="round_n_orange"><span>0/0</span></div></div></div><div class="col-md-3"><p>错误率</p><div class="round_w_red"><div class="round_n_red"><span>100%</span></div></div></div><div class="col-md-6"><div id="main'+i+'" style="width:250px;height:140px;"></div></div><div class="clearfix"></div></div></div><div class="star_box"><div class="col-md-6">错误学生:<span class="erro_num">0/0</span></div><div class="col-md-6"><div class="star"><span style="float:left;">难度</span></div><div class="resolve_click"><a onclick="slide($(this))">查看详情</a></div></div><div class="clearfix"></div></div></li>';
216 245 }
217 246 console.log(_html);
218 247 $(".analysis ul").html(_html);
... ... @@ -243,6 +272,7 @@ function getQueryString(name) {
243 272 sum += parseInt(answerinfo[k].COUNT);
244 273 }
245 274 $(".round_n_orange span").eq(j).text((sum-right_num)+"/"+sum);
  275 + $(".erro_num").eq(j).text((sum-right_num)+"/"+sum);
246 276 $(".round_n_red span").eq(j).text(((sum-right_num)/sum).toFixed(2)*100+"%");
247 277 $(".option").eq(j).find("ul").html(option_html);
248 278  
... ... @@ -268,9 +298,26 @@ function getQueryString(name) {
268 298  
269 299 $(".star").eq(index).find("ul").html(li_html);
270 300 }
  301 + $(document).on("click",".round_n_orange",function(){
  302 + var question_id = $(this).closest("li").attr("data-id");
  303 + var student_html="";
  304 + $.ajax({
  305 + url:url+"/SunvoteEducation/api/v1/qstudentinfo",
  306 + async:false,
  307 + type:"post",
  308 + data:{question_id:question_id,test_id:testpaperId},
  309 + success:function(data){
  310 + console.log(data);
  311 + for(var i=0;i<data.data.length;i++){
  312 + student_html+='<tr><td>'+(i+1)+'</td><td>'+data.data[i].NAME+'</td><td>'+data.data[i].ANSWER+'</td><td>'+data.data[i].PRESS_TIME+'秒</td></tr>';
  313 + }
  314 + $(".student_list").html(student_html);
  315 + }
  316 + });
  317 + $('#myModal').modal('show');
  318 + })
271 319  
272   -
273   - console.log(${pd.A});
  320 +
274 321 </script>
275 322  
276 323 </html>
... ...
WebRoot/WEB-INF/jsp/sunvote/teacher/set_question.jsp
... ... @@ -9,7 +9,7 @@
9 9 <!-- Bootstrap -->
10 10 <link href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
11 11 <link href="../static/css/teach.css" rel="stylesheet">
12   - <link href="../static/css/set_quetion.css?t=11" rel="stylesheet">
  12 + <link href="../static/css/set_quetion.css?t=12" rel="stylesheet">
13 13  
14 14 <!-- HTML5 shim 和 Respond.js 是为了让 IE8 支持 HTML5 元素和媒体查询(media queries)功能 -->
15 15 <!-- 警告:通过 file:// 协议(就是直接将 html 页面拖拽到浏览器中)访问页面时 Respond.js 不起作用 -->
... ... @@ -140,6 +140,9 @@
140 140 </li> -->
141 141  
142 142 </ul>
  143 + <div class="view_more">
  144 + <p>点击查看更多<span>︾</span></p>
  145 + </div>
143 146 </div>
144 147 </div>
145 148 </div>
... ... @@ -191,6 +194,8 @@
191 194 var TEXTBOOK_ID="";
192 195 var question_box=[];
193 196 var question_num=0;
  197 + var pageNum=0;
  198 + var end=0;
194 199  
195 200  
196 201 $(document).ready(function(){
... ... @@ -208,6 +213,7 @@
208 213  
209 214 var subject_id=getQueryString("subject_id");
210 215 var class_id=getQueryString("class_id");
  216 + var user_id=getQueryString("user_id");
211 217  
212 218 //alert(subject_id+";"+class_id);
213 219  
... ... @@ -256,7 +262,7 @@
256 262 url:url+"/SunvoteEducation/api/v1/point",
257 263 async:false,
258 264 type:"post",
259   - data:{depth:"",subject_id:20,p_id:id,knowledge_from:101},
  265 + data:{depth:"",subject_id:subject_id,p_id:id,knowledge_from:101},
260 266 success:function(data){
261 267 console.log(data);
262 268 obj.append('<ul></ul>');
... ... @@ -295,19 +301,22 @@
295 301 url:url+"/SunvoteEducation/api/v1/questions",
296 302 async:true,
297 303 type:"post",
298   - data:{chapter_id:chapter_id,teachingmaterial_id:"",knowledge_id:knowledge_id,question_from:101,user_id:"",problem_type:"",subject_id:"",count:"5"},
  304 + data:{chapter_id:chapter_id,teachingmaterial_id:"",knowledge_id:knowledge_id,question_from:101,user_id:"",problem_type:"",subject_id:subject_id,count:"5",pageNum:pageNum},
299 305 success:function(data){
300 306 window.top.loading.remove();
  307 + console.log(data);
301 308 if(data.data.length>0){
302 309 for(var i=0;i<data.data.length;i++){
303 310 _html += '<li data-id="'+data.data[i].QUESTION_ID+'"><div class="content"></div><div class="option"><ul></ul></div><div class="resolve"><div class="resolve_box"><p><span>【答案】</span> '+data.data[i].ANSWER+'</p><p><span>【解析】</span>'+data.data[i].ANALYSIS+'</p></div></div><div class="star_box"><div class="col-md-6"><div class="star"><span style="float:left;">难度</span></div><div class="resolve_click"><a onclick="slide($(this))">查看解析</a><div class="check_box"></div></div></div><div class="clearfix"></div></div></li>';
304 311 }
305   - $(".question_box ul").html(_html);
306   - for(var j=0;j<data.data.length;j++){
  312 + $(".question_box").children("ul").append(_html);
  313 + console.log(5*pageNum);
  314 + for(var j=5*pageNum;j<(data.data.length+5*pageNum);j++){
307 315 var option_html="";
308   - $(".question_box li .content").eq(j).append('<span>'+(j+1)+'、</span>'+data.data[j].CONTENT);
309   - var arry_option=data.data[j].OPTION_CONTENT;
310   - if(question_box.indexOf(data.data[j].QUESTION_ID)>=0){
  316 + //console.log(data.data[j-5*pageNum].CONTENT);
  317 + $(".question_box li .content").eq(j).append('<span>'+(j+1)+'、</span>'+data.data[j-5*pageNum].CONTENT);
  318 + var arry_option=data.data[j-5*pageNum].OPTION_CONTENT;
  319 + if(question_box.indexOf(data.data[j-5*pageNum].QUESTION_ID)>=0){
311 320 $(".check_box").eq(j).addClass("checked");
312 321 }
313 322 //arry_option=arry_option.replace("[","");
... ... @@ -318,11 +327,13 @@
318 327 }
319 328 $(".option").eq(j).find("ul").html(option_html);
320 329  
321   - star(j,parseInt(data.data[j].DIFFICULTY));
  330 + star(j,parseInt(data.data[j-5*pageNum].DIFFICULTY));
322 331  
323 332 }
324 333 }else{
325   - $(".question_box ul").html("");
  334 + $(".question_box").children("ul").html("");
  335 + pageNum-=1;
  336 + end=1;
326 337 }
327 338  
328 339 }
... ... @@ -448,12 +459,16 @@
448 459 $(".section").on("click","span",function(event){ //点击菜单获取题目
449 460 window.top.loading.show();
450 461 event.stopPropagation();
451   -
  462 + $(".question_box ul").html("");
452 463 var that=$(this).closest("li");
453 464 if($(".tab .active").attr("data-index")==1){
454 465 getQuestion(that);
  466 + $(".menu_active").removeClass();
  467 + that.addClass("menu_active");
455 468 }else{
456 469 getQuestion(that);
  470 + $(".menu_active").removeClass();
  471 + that.addClass("menu_active");
457 472 }
458 473  
459 474 });
... ... @@ -524,6 +539,14 @@
524 539 else
525 540 alert("请先选择题目")
526 541 });
  542 + $(".view_more").click(function(){
  543 + pageNum++;
  544 + if(end>0){
  545 + $(".view_more p").html("没有更多了");
  546 + return;
  547 + }
  548 + getQuestion($(".menu_active"));
  549 + })
527 550 $("#submit").click(function(){
528 551 var question_arry=[];
529 552 for(var i=0;i<question_num;i++){
... ... @@ -540,27 +563,29 @@
540 563 title: $("#title").val(),
541 564 exam_time: $("#time").val(),
542 565 paper_type: "101",
543   - subject_id: "20",
  566 + subject_id: subject_id,
544 567 grade_id: "",
545 568 class_id: class_id,
546   - user_id: "8dbef15bb6d043ec94b719ede583b033",
  569 + user_id: user_id,
547 570 score: "100",
548 571 questions: question_arry
549 572 };
550 573 //console.log(data);
551   - $.ajax({
552   - url:url+"/SunvoteEducation/api/v1/publishpaper",
553   - async:false,
554   - type:"post",
555   - dataType: "json",
556   - headers: {'Content-Type': 'application/json'},
557   - data:JSON.stringify(data),
558   - success:function(data){
559   - alert("上传成功");
560   - $('#myModal').modal('hide');
561   - window.history.go(-1);
562   - }
563   - })
  574 + sessionStorage.setItem("data",JSON.stringify(data));
  575 + location.href="paper_view.do?classID="+class_id+"&userid="+user_id;
  576 + /* $.ajax({
  577 + url:url+"/SunvoteEducation/api/v1/publishpaper",
  578 + async:false,
  579 + type:"post",
  580 + dataType: "json",
  581 + headers: {'Content-Type': 'application/json'},
  582 + data:JSON.stringify(data),
  583 + success:function(data){
  584 + alert("上传成功");
  585 + $('#myModal').modal('hide');
  586 + window.history.go(-1);
  587 + }
  588 + }) */
564 589  
565 590 })
566 591 </script>
... ...
WebRoot/WEB-INF/jsp/sunvote/teacher/teach_paper.jsp
... ... @@ -217,7 +217,7 @@
217 217 });
218 218 function setQUestion(){
219 219 if($(".classList .active").length>0){
220   - location.href="set_question.do?subject_id="+subject_id+"&class_id="+class_id;
  220 + location.href="set_question.do?subject_id="+subject_id+"&class_id="+class_id+"&user_id="+user_id;
221 221 }else{
222 222 alert("请先选择班级");
223 223 }
... ...
WebRoot/WEB-INF/jsp/sunvote/teacher/test_list.jsp
... ... @@ -227,7 +227,7 @@
227 227 }
228 228 function jump(obj){
229 229 var id=obj.attr("data-id");
230   - location.href="paper_view1.do?testpaperId="+id + "&a={a:b}";
  230 + location.href="paper_view1.do?testpaperId="+id;
231 231 }
232 232 $(".classList").on("click","li",function(){
233 233 $(this).siblings().removeClass("active");
... ...
WebRoot/static/css/set_quetion.css
... ... @@ -34,6 +34,10 @@ li{list-style:none;}
34 34 .screen{width:100%;height:150px;background:#fff;box-shadow: 0 0 10px #ccc;margin-top:10px;padding:10px;}
35 35 .tag dt,dd{display:inline-block;}
36 36  
  37 +.right_content{box-sizing:border-box;padding-bottom:80px;}
  38 +.view_more p{font-size: 18px;width: 100%;text-align: center;background: #ccc;color: #fff;line-height:40px;}
  39 +.view_more p span{vertical-align:sub;margin-left:8px;}
  40 +
37 41 .option{padding:10px 0;}
38 42 .option ul{padding:0;}
39 43 .option li{width:100%;padding:10px 0;}
... ...