Commit 107fa3a0cab6282c51a37c70e45440a3f5adf984
1 parent
10146a46
修改试卷单选多远混合出题
Showing
11 changed files
with
588 additions
and
289 deletions
WebRoot/WEB-INF/jsp/sunvote/paper/paper_list2.jsp
| ... | ... | @@ -146,7 +146,7 @@ |
| 146 | 146 | //var remove = new remove(); |
| 147 | 147 | window.top.remove.init({"title":"删除","func":function(success){ |
| 148 | 148 | if(success){ |
| 149 | - var url = "<%=basePath%>paper/delete.do?PAPER_ID="+Id+"&tm="+new Date().getTime(); | |
| 149 | + var url = "<%=basePath%>paper/delete.do?PAPER_ID="+Id+"&qingsongkao=true&tm="+new Date().getTime(); | |
| 150 | 150 | window.top.loading.show(); |
| 151 | 151 | $.get(url,function(data){ |
| 152 | 152 | tosearch(); | ... | ... |
WebRoot/WEB-INF/jsp/sunvote/teacher/creat_question.jsp
| ... | ... | @@ -26,6 +26,7 @@ |
| 26 | 26 | <h1 class="text-center"></h1> |
| 27 | 27 | <div class="btn_group"> |
| 28 | 28 | <div class="time text-center" data-toggle="modal" data-target=".test_time"><h3>测验时长:<span class="bg-primary" id="time">45</span><span class="bg-primary">分钟</span></h3></div> |
| 29 | + <div class="pull-left"><h3>总分:<span id='score_all'>0</span> 分</h3></div> | |
| 29 | 30 | <div class="btn_box pull-right"> |
| 30 | 31 | <input type="button" class="btn btn-success btn-lg" name="save" value="保存" id="save"/> |
| 31 | 32 | <button type="button" class="btn btn-success btn-lg" data-toggle="modal" data-target=".fast" id="fast">单选出题</button> | ... | ... |
WebRoot/static/js/control-604.js
| ... | ... | @@ -16,7 +16,7 @@ |
| 16 | 16 | } |
| 17 | 17 | } |
| 18 | 18 | q_num=str.length; |
| 19 | - $(".content").append('<div class="section section-' + answer_index_b +' single" data-fraction="'+fraction+'" data-score=""><div class="title"><h3>第' +answer_index_b +'大题总分: ' + (q_num * fraction)+'分<!--<span>请在试题选项上点击,亮色为该试题的正确答案 </span> --></h3> </div><div class="question_list"></div></div>'); | |
| 19 | + $(".content").append('<div class="section section-' + answer_index_b +' single" data-fraction="'+fraction+'" data-score="'+(q_num * fraction)+'"><div class="title"><h3>第' +answer_index_b +'大题总分: ' + (q_num * fraction)+'分<!--<span>请在试题选项上点击,亮色为该试题的正确答案 </span> --></h3> </div><div class="question_list"></div></div>'); | |
| 20 | 20 | for(var i=0;i<q_num;i++){ |
| 21 | 21 | str_temp=str[i]; |
| 22 | 22 | str_temp=str_temp.toUpperCase() |
| ... | ... | @@ -112,7 +112,7 @@ |
| 112 | 112 | }*/ |
| 113 | 113 | case 5: //多选题 |
| 114 | 114 | // $(".content").html(""); |
| 115 | - $(".content").append('<div class="section section-'+ answer_index_b +' check" data-fraction="'+fraction2+'" data-score=""> <div class="title"><h3>第' +answer_index_b +'大题总分: ' + ((index_e_2- index_s_2 + 1 )* fraction2)+'分<!--<span>请在试题选项上点击,亮色为该试题的正确答案 </span>--></h3> </div> <div class="question_list"></div></div>'); | |
| 115 | + $(".content").append('<div class="section section-'+ answer_index_b +' check" data-fraction="'+fraction2+'" data-score="' + ((index_e_2- index_s_2 + 1 )* fraction2)+ '"> <div class="title"><h3>第' +answer_index_b +'大题总分: ' + ((index_e_2- index_s_2 + 1 )* fraction2)+'分<!--<span>请在试题选项上点击,亮色为该试题的正确答案 </span>--></h3> </div> <div class="question_list"></div></div>'); | |
| 116 | 116 | for(var i=index_s_2;i<=index_e_2;i++){ |
| 117 | 117 | questionNUm++; |
| 118 | 118 | $(".section-" + answer_index_b +" .question_list").append('<div class="question question'+questionNUm+'"><span>'+questionNUm+'、</span><ul></ul></div>'); |
| ... | ... | @@ -221,9 +221,7 @@ |
| 221 | 221 | /*提交保存数据*/ |
| 222 | 222 | $("#save").click(function(){ |
| 223 | 223 | var url=URL; |
| 224 | - for(i=0;i<$(".section").length;i++){ | |
| 225 | - score+=parseFloat($(".section").eq(i).attr("data-score")); | |
| 226 | - } | |
| 224 | + | |
| 227 | 225 | var data={ |
| 228 | 226 | title: $(".header_box h1").text(), |
| 229 | 227 | exam_time: parseInt($("#time").text()), |
| ... | ... | @@ -231,32 +229,32 @@ |
| 231 | 229 | subject_id: testData.subject_id, |
| 232 | 230 | grade_id: testData.grade_id, |
| 233 | 231 | user_id: testData.user_id, |
| 234 | - score:score, | |
| 232 | + score:total_score, | |
| 235 | 233 | questions:[] |
| 236 | 234 | } |
| 237 | 235 | |
| 238 | 236 | if($(".section").length>0){ |
| 239 | 237 | var rank=0 |
| 240 | 238 | for(i=0;i<$(".section").length;i++){ |
| 241 | - /*rank++; | |
| 239 | + //rank++; | |
| 242 | 240 | data.questions[i]={ |
| 243 | 241 | chapter_id: "0", |
| 244 | 242 | problem_type_id: "0", |
| 245 | 243 | knowledge_id: "0", |
| 246 | - content: $(".section").eq(i).find(".que_name").text(), | |
| 244 | + // content: $(".section").eq(i).find(".que_name").text(), | |
| 247 | 245 | option_num: "", |
| 248 | 246 | option_content: "", |
| 249 | 247 | answer: "", |
| 250 | 248 | difficulty: "", |
| 251 | 249 | analysis: "", |
| 252 | 250 | question_from: "", |
| 253 | - score:parseInt($(".section").eq(i).attr("data-fraction")), | |
| 251 | + score:parseFloat($(".section").eq(i).attr("data-score")), | |
| 254 | 252 | part_score: "", |
| 255 | 253 | remark: "", |
| 256 | 254 | rank: rank, |
| 257 | 255 | no_name: $(".section").eq(i).find(".que_num").text(), |
| 258 | 256 | questions:[] |
| 259 | - }*/ | |
| 257 | + } | |
| 260 | 258 | for(j=0;j<$(".section").eq(i).find(".question_list").children(".question").length;j++){ |
| 261 | 259 | rank++; |
| 262 | 260 | var on_num=$(".section").eq(i).find(".question").eq(j).find(".on").length; |
| ... | ... | @@ -269,7 +267,7 @@ |
| 269 | 267 | alert("还有试题未编辑答案。"); |
| 270 | 268 | return; |
| 271 | 269 | } |
| 272 | - data.questions[rank-1]={ | |
| 270 | + data.questions[i].questions[j]={ | |
| 273 | 271 | chapter_id: "0", |
| 274 | 272 | problem_type_id: "0", |
| 275 | 273 | knowledge_id: "0", |
| ... | ... | @@ -370,6 +368,7 @@ function creatHtml(data){ |
| 370 | 368 | console.log(data); |
| 371 | 369 | $(".header_box h1").html(data.title); |
| 372 | 370 | $("#time").html(data.exam_time); |
| 371 | + $("#score_all").html(data.score); | |
| 373 | 372 | |
| 374 | 373 | if(data.questions.length>0){ |
| 375 | 374 | $(".time").removeAttr("data-target"); |
| ... | ... | @@ -379,7 +378,7 @@ function creatHtml(data){ |
| 379 | 378 | |
| 380 | 379 | for(var i=0;i<data.questions.length;i++){ |
| 381 | 380 | if(data.questions[i].questions){ |
| 382 | - $(".content").append('<div class="section section-'+i+'" data-fraction="'+data.questions[i].score+'"> <h3><span class="que_num">'+data.questions[i].no_name+'</span>'+'<span class="que_name">'+data.questions[i].content+'</span></h3> <input type="button" class="btn btn-danger pull-right remove" name="remove" value="删除" /> <div class="question_list"></div></div>'); | |
| 381 | + $(".content").append('<div class="section section-'+i+'" data-fraction="'+data.questions[i].score+'" style="margin-top:20px;"> <h3><span class="que_num">'+'第'+ (i+1) + '大题总分:'+ data.questions[i].sug_score +'</span>'+'<span class="que_name">'+data.questions[i].content+'</span></h3><!-- <input type="button" class="btn btn-danger pull-right remove" name="remove" value="删除" /> --> <div class="question_list"></div></div>'); | |
| 383 | 382 | }else{ |
| 384 | 383 | if(i == 0){ |
| 385 | 384 | $(".content").append('<div class="section section0"> <div class="question_list"></div></div>'); | ... | ... |
resources/dbconfig.properties
| 1 | 1 | #数据源 1 |
| 2 | -url:jdbc:mysql://120.78.57.84:3306/education?autoReconnect=true&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8 | |
| 2 | +url:jdbc:mysql://120.78.57.84:3306/education?autoReconnect=true&failOverReadOnly=false&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8 | |
| 3 | 3 | #url:jdbc:mysql://192.168.0.3:3306/education?autoReconnect=true&useUnicode=true&characterEncoding=utf8&characterSetResults=utf8 |
| 4 | 4 | driverClassName:com.mysql.jdbc.Driver |
| 5 | 5 | username:root | ... | ... |
resources/mybatis1/sunvote/PaperQuestionMapper.xml
| ... | ... | @@ -102,6 +102,10 @@ |
| 102 | 102 | <include refid="Field"></include> |
| 103 | 103 | from |
| 104 | 104 | <include refid="tableName"></include> |
| 105 | + where 1=1 | |
| 106 | + <if test="PAPER_ID != null and PAPER_ID != ''"> | |
| 107 | + and PAPER_ID = #{PAPER_ID} | |
| 108 | + </if> | |
| 105 | 109 | </select> |
| 106 | 110 | |
| 107 | 111 | <!-- 批量删除 --> |
| ... | ... | @@ -115,6 +119,8 @@ |
| 115 | 119 | </foreach> |
| 116 | 120 | </delete> |
| 117 | 121 | |
| 122 | + | |
| 123 | + | |
| 118 | 124 | <!-- 批量删除 --> |
| 119 | 125 | <delete id="deleteAllPaper" parameterType="String"> |
| 120 | 126 | delete from | ... | ... |
resources/mybatis1/sunvote/StudentMapper.xml
| ... | ... | @@ -84,6 +84,16 @@ |
| 84 | 84 | ID = #{ID} |
| 85 | 85 | </select> |
| 86 | 86 | |
| 87 | + <!-- 通过ID获取数据 --> | |
| 88 | + <select id="findByName" parameterType="pd" resultType="pd"> | |
| 89 | + select | |
| 90 | + <include refid="Field"></include> | |
| 91 | + from | |
| 92 | + <include refid="tableName"></include> | |
| 93 | + where | |
| 94 | + NAME = #{NAME} | |
| 95 | + </select> | |
| 96 | + | |
| 87 | 97 | <!-- 列表 --> |
| 88 | 98 | <select id="datalistPage" parameterType="page" resultType="pd"> |
| 89 | 99 | select | ... | ... |
src/com/fh/Main.java
| ... | ... | @@ -9,29 +9,25 @@ public class Main { |
| 9 | 9 | |
| 10 | 10 | public static void main(String[] args) { |
| 11 | 11 | |
| 12 | - String username = "pressure_test" ; | |
| 13 | - String password = "123456" ; | |
| 14 | - String trueName = "" ; | |
| 15 | - | |
| 16 | - String url = "http://127.0.0.1:8080/SunvoteEducation/api/v1/tempcreateUser" ; | |
| 17 | - for(int i = 2 ; i <= 100 ; i++){ | |
| 18 | - trueName = username + i ; | |
| 19 | - String keypadid = "0000" ; | |
| 20 | - if(i >= 100){ | |
| 21 | - keypadid = keypadid + i ; | |
| 22 | - }else if(i > 9){ | |
| 23 | - keypadid = keypadid + "0" + i ; | |
| 24 | - }else{ | |
| 25 | - keypadid = keypadid + "00" + i ; | |
| 26 | - } | |
| 27 | - post(url + "?ACCOUT=" + trueName + "&password=" + password + "&SCHOOL_ID=4" + "&SEX=1" + "&NAME=" + trueName + "&KEYPAD_ID=" + keypadid); | |
| 28 | - } | |
| 12 | + report(); | |
| 29 | 13 | |
| 30 | 14 | } |
| 15 | + | |
| 16 | + | |
| 17 | + static void report(){ | |
| 18 | + String url = "http://192.168.0.3:8668/sunvoteAPI/report/getReport?" ; | |
| 19 | +// String reportId = "62e7c27f-7f21-4e3c-8f86-5d9ba04cf4d6" ; | |
| 20 | + String reportId = "5a002abf-9d96-4307-9c35-3dd4230d2f0a" ; | |
| 21 | + url = url + "reportId="+reportId; | |
| 22 | + String message = post(url); | |
| 23 | + System.out.println(message); | |
| 24 | + } | |
| 31 | 25 | |
| 32 | 26 | |
| 33 | 27 | |
| 34 | - static void post(String url){ | |
| 28 | + | |
| 29 | + | |
| 30 | + static String post(String url){ | |
| 35 | 31 | try { |
| 36 | 32 | //请求地址 |
| 37 | 33 | URL urlHttp = new URL(url); |
| ... | ... | @@ -72,10 +68,34 @@ public class Main { |
| 72 | 68 | } |
| 73 | 69 | bf.close(); // 重要且易忽略步骤 (关闭流,切记!) |
| 74 | 70 | connection.disconnect(); // 销毁连接 |
| 71 | + return sb.toString(); | |
| 75 | 72 | |
| 76 | 73 | |
| 77 | 74 | } catch (Exception e) { |
| 78 | 75 | e.printStackTrace(); |
| 79 | 76 | } |
| 77 | + return null; | |
| 78 | + | |
| 79 | + } | |
| 80 | + | |
| 81 | + | |
| 82 | + static void createUser(){ | |
| 83 | + String username = "pressure_test" ; | |
| 84 | + String password = "123456" ; | |
| 85 | + String trueName = "" ; | |
| 86 | + | |
| 87 | + String url = "http://127.0.0.1:8080/SunvoteEducation/api/v1/tempcreateUser" ; | |
| 88 | + for(int i = 2 ; i <= 100 ; i++){ | |
| 89 | + trueName = username + i ; | |
| 90 | + String keypadid = "0000" ; | |
| 91 | + if(i >= 100){ | |
| 92 | + keypadid = keypadid + i ; | |
| 93 | + }else if(i > 9){ | |
| 94 | + keypadid = keypadid + "0" + i ; | |
| 95 | + }else{ | |
| 96 | + keypadid = keypadid + "00" + i ; | |
| 97 | + } | |
| 98 | + post(url + "?ACCOUT=" + trueName + "&password=" + password + "&SCHOOL_ID=4" + "&SEX=1" + "&NAME=" + trueName + "&KEYPAD_ID=" + keypadid); | |
| 99 | + } | |
| 80 | 100 | } |
| 81 | 101 | } | ... | ... |
src/com/fh/controller/api/V1.java
| 1 | 1 | package com.fh.controller.api; |
| 2 | 2 | |
| 3 | 3 | import java.io.File; |
| 4 | +import java.sql.Connection; | |
| 5 | +import java.sql.ResultSet; | |
| 6 | +import java.sql.Statement; | |
| 4 | 7 | import java.util.ArrayList; |
| 5 | 8 | import java.util.Collections; |
| 6 | 9 | import java.util.Comparator; |
| ... | ... | @@ -65,6 +68,7 @@ import com.fh.service.sunvote.testpaper.TestPaperManager; |
| 65 | 68 | import com.fh.service.sunvote.testpaperinfo.TestPaperInfoManager; |
| 66 | 69 | import com.fh.service.sunvote.textbook.TextbookManager; |
| 67 | 70 | import com.fh.service.system.user.UserManager; |
| 71 | +import com.fh.util.DbFH; | |
| 68 | 72 | import com.fh.util.PageData; |
| 69 | 73 | import com.fh.util.Tools; |
| 70 | 74 | |
| ... | ... | @@ -88,7 +92,7 @@ public class V1 extends BaseController { |
| 88 | 92 | private ClassRosterManager classrosterService; |
| 89 | 93 | |
| 90 | 94 | @Resource(name = "classtypeService") |
| 91 | - private ClassTypeManager classtypeService; | |
| 95 | + private ClassTypeManager classtypeService; | |
| 92 | 96 | |
| 93 | 97 | @Resource(name = "gradeService") |
| 94 | 98 | private GradeManager gradeService; |
| ... | ... | @@ -176,7 +180,7 @@ public class V1 extends BaseController { |
| 176 | 180 | |
| 177 | 181 | @Resource(name = "teachingmaterialService") |
| 178 | 182 | private TeachingMaterialManager teachingmaterialService; |
| 179 | - | |
| 183 | + | |
| 180 | 184 | @Resource(name = "textbookService") |
| 181 | 185 | private TextbookManager textbookService; |
| 182 | 186 | |
| ... | ... | @@ -184,9 +188,8 @@ public class V1 extends BaseController { |
| 184 | 188 | private CacheManager cacheService; |
| 185 | 189 | |
| 186 | 190 | /** |
| 187 | - * 登录 | |
| 188 | - * 可以通过账号密码登录、 | |
| 189 | - * 可以通过教师卡登录 | |
| 191 | + * 登录 可以通过账号密码登录、 可以通过教师卡登录 | |
| 192 | + * | |
| 190 | 193 | * @return |
| 191 | 194 | * @throws Exception |
| 192 | 195 | */ |
| ... | ... | @@ -245,11 +248,10 @@ public class V1 extends BaseController { |
| 245 | 248 | |
| 246 | 249 | return res.toJson(); |
| 247 | 250 | } |
| 248 | - | |
| 251 | + | |
| 249 | 252 | /** |
| 250 | - * 登录 | |
| 251 | - * 可以通过账号密码登录、 | |
| 252 | - * 可以通过教师卡登录 | |
| 253 | + * 登录 可以通过账号密码登录、 可以通过教师卡登录 | |
| 254 | + * | |
| 253 | 255 | * @return |
| 254 | 256 | * @throws Exception |
| 255 | 257 | */ |
| ... | ... | @@ -265,18 +267,16 @@ public class V1 extends BaseController { |
| 265 | 267 | PageData pt = new PageData(); |
| 266 | 268 | pt.put("TEACHER_ID", pageData.get("ID")); |
| 267 | 269 | // 在任课表中查找老师教哪些班级,然后查出班级信息 |
| 268 | - List<PageData> classInfoList = v1Service | |
| 269 | - .getTeacherClassInfo(pt); | |
| 270 | - | |
| 270 | + List<PageData> classInfoList = v1Service.getTeacherClassInfo(pt); | |
| 271 | + | |
| 271 | 272 | pageData.put("classInfoList", classInfoList); |
| 272 | 273 | // 在认可表中查找老师教哪些科目,然后查出科目信息 |
| 273 | - List<PageData> subjectList = v1Service | |
| 274 | - .getTeacherSubjectInfo(pt); | |
| 274 | + List<PageData> subjectList = v1Service.getTeacherSubjectInfo(pt); | |
| 275 | 275 | // 一个sql语句完成。 |
| 276 | 276 | pageData.put("subjectList", subjectList); |
| 277 | - | |
| 277 | + | |
| 278 | 278 | pageData.remove("SUBJECT_IDS"); |
| 279 | - | |
| 279 | + | |
| 280 | 280 | PageData eventPd = new PageData(); |
| 281 | 281 | eventPd.put("EVENT_ID", get32UUID()); |
| 282 | 282 | eventPd.put("EVENT_NAME", "login"); |
| ... | ... | @@ -290,19 +290,19 @@ public class V1 extends BaseController { |
| 290 | 290 | } |
| 291 | 291 | eventPd.put("EVENT_IP", getRemoteIp()); |
| 292 | 292 | eventService.save(eventPd); |
| 293 | - | |
| 293 | + | |
| 294 | 294 | res.setData(pageData); |
| 295 | 295 | // 填充数据到返回数据中 |
| 296 | 296 | } else { |
| 297 | 297 | res.set1Error(); |
| 298 | 298 | } |
| 299 | - | |
| 299 | + | |
| 300 | 300 | return res.toJson(); |
| 301 | 301 | } |
| 302 | 302 | |
| 303 | 303 | /** |
| 304 | - * 查询班级 | |
| 305 | - * 班级及班级学生详细信息 | |
| 304 | + * 查询班级 班级及班级学生详细信息 | |
| 305 | + * | |
| 306 | 306 | * @return |
| 307 | 307 | * @throws Exception |
| 308 | 308 | */ |
| ... | ... | @@ -343,6 +343,7 @@ public class V1 extends BaseController { |
| 343 | 343 | |
| 344 | 344 | /** |
| 345 | 345 | * 问题类型 |
| 346 | + * | |
| 346 | 347 | * @return |
| 347 | 348 | * @throws Exception |
| 348 | 349 | */ |
| ... | ... | @@ -362,6 +363,7 @@ public class V1 extends BaseController { |
| 362 | 363 | |
| 363 | 364 | /** |
| 364 | 365 | * 班级类型 |
| 366 | + * | |
| 365 | 367 | * @return |
| 366 | 368 | * @throws Exception |
| 367 | 369 | */ |
| ... | ... | @@ -380,8 +382,8 @@ public class V1 extends BaseController { |
| 380 | 382 | } |
| 381 | 383 | |
| 382 | 384 | /** |
| 383 | - * 年级 | |
| 384 | - * 年级类型 | |
| 385 | + * 年级 年级类型 | |
| 386 | + * | |
| 385 | 387 | * @return |
| 386 | 388 | * @throws Exception |
| 387 | 389 | */ |
| ... | ... | @@ -405,6 +407,7 @@ public class V1 extends BaseController { |
| 405 | 407 | |
| 406 | 408 | /** |
| 407 | 409 | * 科目 |
| 410 | + * | |
| 408 | 411 | * @return |
| 409 | 412 | * @throws Exception |
| 410 | 413 | */ |
| ... | ... | @@ -425,9 +428,10 @@ public class V1 extends BaseController { |
| 425 | 428 | logger.info("subject cost time : " + (System.currentTimeMillis() - cur)); |
| 426 | 429 | return res.toJson(); |
| 427 | 430 | } |
| 428 | - | |
| 431 | + | |
| 429 | 432 | /** |
| 430 | 433 | * 科目 |
| 434 | + * | |
| 431 | 435 | * @return |
| 432 | 436 | * @throws Exception |
| 433 | 437 | */ |
| ... | ... | @@ -451,6 +455,7 @@ public class V1 extends BaseController { |
| 451 | 455 | |
| 452 | 456 | /** |
| 453 | 457 | * 键盘扫描 |
| 458 | + * | |
| 454 | 459 | * @return |
| 455 | 460 | * @throws Exception |
| 456 | 461 | */ |
| ... | ... | @@ -492,10 +497,13 @@ public class V1 extends BaseController { |
| 492 | 497 | if (pd.containsKey("PAPER_TYPE") && pd.containsKey("USER_ID")) { |
| 493 | 498 | String CURRENTPAGE = pd.getString("CURRENTPAGE"); |
| 494 | 499 | String SHOWCOUNT = pd.getString("SHOWCOUNT"); |
| 495 | - if(CURRENTPAGE != null && SHOWCOUNT != null && !"".equals(CURRENTPAGE.trim()) && !"".equals(SHOWCOUNT.trim())){ | |
| 500 | + if (CURRENTPAGE != null && SHOWCOUNT != null | |
| 501 | + && !"".equals(CURRENTPAGE.trim()) | |
| 502 | + && !"".equals(SHOWCOUNT.trim())) { | |
| 496 | 503 | int currentPage = Integer.parseInt(CURRENTPAGE); |
| 497 | 504 | int showcount = Integer.parseInt(SHOWCOUNT); |
| 498 | - currentPage = (currentPage > 0 ? currentPage -1 : 0) * showcount; | |
| 505 | + currentPage = (currentPage > 0 ? currentPage - 1 : 0) | |
| 506 | + * showcount; | |
| 499 | 507 | pd.put("CURRENTPAGE", "" + currentPage); |
| 500 | 508 | } |
| 501 | 509 | List<PageData> pageList = paperService.listAllByType(pd); |
| ... | ... | @@ -509,6 +517,7 @@ public class V1 extends BaseController { |
| 509 | 517 | |
| 510 | 518 | /** |
| 511 | 519 | * 试卷详细信息 |
| 520 | + * | |
| 512 | 521 | * @return |
| 513 | 522 | * @throws Exception |
| 514 | 523 | */ |
| ... | ... | @@ -619,109 +628,62 @@ public class V1 extends BaseController { |
| 619 | 628 | + (System.currentTimeMillis() - cur)); |
| 620 | 629 | return res.toJson(); |
| 621 | 630 | } |
| 622 | - | |
| 623 | -/* *//** | |
| 631 | + | |
| 632 | + /* *//** | |
| 624 | 633 | * 试卷详细信息 |
| 634 | + * | |
| 625 | 635 | * @return |
| 626 | 636 | * @throws Exception |
| 627 | - *//* | |
| 628 | - @RequestMapping(value = "/paperinfo", produces = "application/json;charset=UTF-8") | |
| 629 | - @ResponseBody | |
| 630 | - public Object paperInfo() throws Exception { | |
| 631 | - event("paperInfo"); | |
| 632 | - long cur = System.currentTimeMillis(); | |
| 633 | - PageData pd = this.getPageData(); | |
| 634 | - ResponseGson<PageData> res = new ResponseGson<PageData>(); | |
| 635 | - if (pd.containsKey("PAPER_ID")) { | |
| 636 | - try { | |
| 637 | - try { | |
| 638 | - PageData ppd = paperService.findById(pd); | |
| 639 | - if (ppd != null) { | |
| 640 | - List<PageData> questList = v1Service | |
| 641 | - .getTestPaperInfo(pd); | |
| 642 | - ppd.put("QUESTIONS", questList); | |
| 643 | - for (PageData qpd : questList) { | |
| 644 | - | |
| 645 | - String optionContent = qpd | |
| 646 | - .getString("OPTION_CONTENT"); | |
| 647 | - if (optionContent != null | |
| 648 | - && optionContent.startsWith("[") | |
| 649 | - && optionContent.endsWith("]")) { | |
| 650 | - String[] options = optionContent.substring(1, | |
| 651 | - optionContent.length() - 1).split(","); | |
| 652 | - qpd.put("OPTION_CONTENT", options); | |
| 653 | - } else { | |
| 654 | - qpd.put("OPTION_CONTENT", | |
| 655 | - new String[] { optionContent }); | |
| 656 | - } | |
| 657 | - if ("-1".equals("" + qpd.getString("P_ID"))) { | |
| 658 | - PageData pidPd = new PageData(); | |
| 659 | - pidPd.put("PID", qpd.getString("QUESTION_ID")); | |
| 660 | - List<PageData> qs = v1Service | |
| 661 | - .getQuestionsByPID(pidPd); | |
| 662 | - for (PageData pcd : qs) { | |
| 663 | - String optionContent1 = pcd | |
| 664 | - .getString("OPTION_CONTENT"); | |
| 665 | - if (optionContent1 != null | |
| 666 | - && optionContent1.startsWith("[") | |
| 667 | - && optionContent1.endsWith("]")) { | |
| 668 | - String[] options = optionContent1 | |
| 669 | - .substring( | |
| 670 | - 1, | |
| 671 | - optionContent1.length() - 1) | |
| 672 | - .split(","); | |
| 673 | - pcd.put("OPTION_CONTENT", options); | |
| 674 | - } else { | |
| 675 | - pcd.put("OPTION_CONTENT", | |
| 676 | - new String[] { optionContent1 }); | |
| 677 | - } | |
| 678 | - String[] keys = new String[pcd.keySet().size()]; | |
| 679 | - pcd.keySet().toArray(keys); | |
| 680 | - Iterator map1it = pcd.entrySet().iterator(); | |
| 681 | - for (String key : keys) { | |
| 682 | - pcd.put(key.toLowerCase(),pcd.get(key)); | |
| 683 | - pcd.remove(key.toUpperCase()); | |
| 684 | - } | |
| 685 | - } | |
| 686 | - qpd.put("QUESTIONS", qs); | |
| 687 | - } | |
| 688 | - | |
| 689 | - String[] keys = new String[qpd.keySet().size()]; | |
| 690 | - qpd.keySet().toArray(keys); | |
| 691 | - for (String key : keys) { | |
| 692 | - qpd.put(key.toLowerCase(), qpd.get(key)); | |
| 693 | - qpd.remove(key.toUpperCase()); | |
| 694 | - } | |
| 695 | - | |
| 696 | - } | |
| 697 | - String[] keys = new String[ppd.keySet().size()]; | |
| 698 | - ppd.keySet().toArray(keys); | |
| 699 | - for (String key : keys) { | |
| 700 | - ppd.put(key.toLowerCase(), ppd.get(key)); | |
| 701 | - ppd.remove(key.toUpperCase()); | |
| 702 | - } | |
| 703 | - // pd.put("JSON", paper.toJson()); | |
| 704 | - res.setData(ppd); | |
| 705 | - logger.info(res.toJson()); | |
| 706 | - | |
| 707 | - } | |
| 708 | - } catch (Exception ex) { | |
| 709 | - ex.printStackTrace(); | |
| 710 | - } | |
| 711 | - } catch (Exception ex) { | |
| 712 | - ex.printStackTrace(); | |
| 713 | - res.setError(); | |
| 714 | - } | |
| 715 | - } else { | |
| 716 | - res.setOtherError(); | |
| 717 | - } | |
| 718 | - logger.info("paperInfo cost time : " | |
| 719 | - + (System.currentTimeMillis() - cur)); | |
| 720 | - return res.toJson(); | |
| 721 | - } | |
| 722 | - | |
| 723 | -*/ /** | |
| 637 | + */ | |
| 638 | + /* | |
| 639 | + * @RequestMapping(value = "/paperinfo", produces = | |
| 640 | + * "application/json;charset=UTF-8") | |
| 641 | + * | |
| 642 | + * @ResponseBody public Object paperInfo() throws Exception { | |
| 643 | + * event("paperInfo"); long cur = System.currentTimeMillis(); PageData pd = | |
| 644 | + * this.getPageData(); ResponseGson<PageData> res = new | |
| 645 | + * ResponseGson<PageData>(); if (pd.containsKey("PAPER_ID")) { try { try { | |
| 646 | + * PageData ppd = paperService.findById(pd); if (ppd != null) { | |
| 647 | + * List<PageData> questList = v1Service .getTestPaperInfo(pd); | |
| 648 | + * ppd.put("QUESTIONS", questList); for (PageData qpd : questList) { | |
| 649 | + * | |
| 650 | + * String optionContent = qpd .getString("OPTION_CONTENT"); if | |
| 651 | + * (optionContent != null && optionContent.startsWith("[") && | |
| 652 | + * optionContent.endsWith("]")) { String[] options = | |
| 653 | + * optionContent.substring(1, optionContent.length() - 1).split(","); | |
| 654 | + * qpd.put("OPTION_CONTENT", options); } else { qpd.put("OPTION_CONTENT", | |
| 655 | + * new String[] { optionContent }); } if ("-1".equals("" + | |
| 656 | + * qpd.getString("P_ID"))) { PageData pidPd = new PageData(); | |
| 657 | + * pidPd.put("PID", qpd.getString("QUESTION_ID")); List<PageData> qs = | |
| 658 | + * v1Service .getQuestionsByPID(pidPd); for (PageData pcd : qs) { String | |
| 659 | + * optionContent1 = pcd .getString("OPTION_CONTENT"); if (optionContent1 != | |
| 660 | + * null && optionContent1.startsWith("[") && optionContent1.endsWith("]")) { | |
| 661 | + * String[] options = optionContent1 .substring( 1, optionContent1.length() | |
| 662 | + * - 1) .split(","); pcd.put("OPTION_CONTENT", options); } else { | |
| 663 | + * pcd.put("OPTION_CONTENT", new String[] { optionContent1 }); } String[] | |
| 664 | + * keys = new String[pcd.keySet().size()]; pcd.keySet().toArray(keys); | |
| 665 | + * Iterator map1it = pcd.entrySet().iterator(); for (String key : keys) { | |
| 666 | + * pcd.put(key.toLowerCase(),pcd.get(key)); pcd.remove(key.toUpperCase()); } | |
| 667 | + * } qpd.put("QUESTIONS", qs); } | |
| 668 | + * | |
| 669 | + * String[] keys = new String[qpd.keySet().size()]; | |
| 670 | + * qpd.keySet().toArray(keys); for (String key : keys) { | |
| 671 | + * qpd.put(key.toLowerCase(), qpd.get(key)); qpd.remove(key.toUpperCase()); | |
| 672 | + * } | |
| 673 | + * | |
| 674 | + * } String[] keys = new String[ppd.keySet().size()]; | |
| 675 | + * ppd.keySet().toArray(keys); for (String key : keys) { | |
| 676 | + * ppd.put(key.toLowerCase(), ppd.get(key)); ppd.remove(key.toUpperCase()); | |
| 677 | + * } // pd.put("JSON", paper.toJson()); res.setData(ppd); | |
| 678 | + * logger.info(res.toJson()); | |
| 679 | + * | |
| 680 | + * } } catch (Exception ex) { ex.printStackTrace(); } } catch (Exception ex) | |
| 681 | + * { ex.printStackTrace(); res.setError(); } } else { res.setOtherError(); } | |
| 682 | + * logger.info("paperInfo cost time : " + (System.currentTimeMillis() - | |
| 683 | + * cur)); return res.toJson(); } | |
| 684 | + *//** | |
| 724 | 685 | * 试卷详细信息 |
| 686 | + * | |
| 725 | 687 | * @return |
| 726 | 688 | * @throws Exception |
| 727 | 689 | */ |
| ... | ... | @@ -741,7 +703,7 @@ public class V1 extends BaseController { |
| 741 | 703 | .getTestPaperInfo(pd); |
| 742 | 704 | ppd.put("QUESTIONS", questList); |
| 743 | 705 | for (PageData qpd : questList) { |
| 744 | - | |
| 706 | + | |
| 745 | 707 | String optionContent = qpd |
| 746 | 708 | .getString("OPTION_CONTENT"); |
| 747 | 709 | if (optionContent != null |
| ... | ... | @@ -769,7 +731,7 @@ public class V1 extends BaseController { |
| 769 | 731 | .substring( |
| 770 | 732 | 1, |
| 771 | 733 | optionContent1.length() - 1) |
| 772 | - .split(","); | |
| 734 | + .split(","); | |
| 773 | 735 | pcd.put("OPTION_CONTENT", options); |
| 774 | 736 | } else { |
| 775 | 737 | pcd.put("OPTION_CONTENT", |
| ... | ... | @@ -778,13 +740,11 @@ public class V1 extends BaseController { |
| 778 | 740 | } |
| 779 | 741 | qpd.put("QUESTIONS", qs); |
| 780 | 742 | } |
| 781 | - | |
| 782 | - | |
| 783 | - | |
| 743 | + | |
| 784 | 744 | } |
| 785 | 745 | res.setData(ppd); |
| 786 | 746 | logger.info(res.toJson()); |
| 787 | - | |
| 747 | + | |
| 788 | 748 | } |
| 789 | 749 | } catch (Exception ex) { |
| 790 | 750 | ex.printStackTrace(); |
| ... | ... | @@ -800,9 +760,10 @@ public class V1 extends BaseController { |
| 800 | 760 | + (System.currentTimeMillis() - cur)); |
| 801 | 761 | return res.toJson(); |
| 802 | 762 | } |
| 803 | - | |
| 763 | + | |
| 804 | 764 | /** |
| 805 | 765 | * 试卷详细信息 |
| 766 | + * | |
| 806 | 767 | * @return |
| 807 | 768 | * @throws Exception |
| 808 | 769 | */ |
| ... | ... | @@ -822,8 +783,9 @@ public class V1 extends BaseController { |
| 822 | 783 | PageData testInfof = new PageData(); |
| 823 | 784 | testInfof.put("PAPER_ID", testPd.getString("PAPER_ID")); |
| 824 | 785 | testInfof.put("TEST_ID", paperId); |
| 825 | - List<PageData> list = testpaperinfoService.listTestPaperQuestionIDs(testInfof); | |
| 826 | - for(PageData pqd : list){ | |
| 786 | + List<PageData> list = testpaperinfoService | |
| 787 | + .listTestPaperQuestionIDs(testInfof); | |
| 788 | + for (PageData pqd : list) { | |
| 827 | 789 | PageData tpqd = questionService.findById(pqd); |
| 828 | 790 | pqd.putAll(tpqd); |
| 829 | 791 | pqd.remove("P_ID"); |
| ... | ... | @@ -839,22 +801,26 @@ public class V1 extends BaseController { |
| 839 | 801 | pqd.remove("QUESTION_FROM"); |
| 840 | 802 | pqd.remove("REMARK"); |
| 841 | 803 | pqd.put("TEST_ID", paperId); |
| 842 | - List<PageData> listinfo = testpaperinfoService.listTestPaperQuestionIDinfo(pqd); | |
| 804 | + List<PageData> listinfo = testpaperinfoService | |
| 805 | + .listTestPaperQuestionIDinfo(pqd); | |
| 843 | 806 | List<PageData> answerInfos = new ArrayList<PageData>(); |
| 844 | 807 | List<String> answerList = new ArrayList<String>(); |
| 845 | - for(PageData pid : listinfo){ | |
| 808 | + for (PageData pid : listinfo) { | |
| 846 | 809 | String answer = pid.getString("ANSWER"); |
| 847 | 810 | PageData answerPd = null; |
| 848 | - if(answerInfos.size() > 0){ | |
| 849 | - answerPd = answerInfos.get(answerInfos.size() -1); | |
| 850 | - if(!answer.equals(answerPd.getString("ANSWER"))){ | |
| 811 | + if (answerInfos.size() > 0) { | |
| 812 | + answerPd = answerInfos | |
| 813 | + .get(answerInfos.size() - 1); | |
| 814 | + if (!answer | |
| 815 | + .equals(answerPd.getString("ANSWER"))) { | |
| 851 | 816 | answerPd = new PageData(); |
| 852 | 817 | answerPd.put("ANSWER", answer); |
| 853 | - answerPd.put("ISRIGHT", pid.getString("RIGHT")); | |
| 818 | + answerPd.put("ISRIGHT", | |
| 819 | + pid.getString("RIGHT")); | |
| 854 | 820 | answerInfos.add(answerPd); |
| 855 | 821 | answerList.add(answer); |
| 856 | 822 | } |
| 857 | - }else{ | |
| 823 | + } else { | |
| 858 | 824 | answerPd = new PageData(); |
| 859 | 825 | answerPd.put("ANSWER", answer); |
| 860 | 826 | answerPd.put("ISRIGHT", pid.getString("RIGHT")); |
| ... | ... | @@ -862,48 +828,59 @@ public class V1 extends BaseController { |
| 862 | 828 | answerList.add(answer); |
| 863 | 829 | } |
| 864 | 830 | String strCount = answerPd.getString("COUNT"); |
| 865 | - int count = 0 ; | |
| 866 | - if(strCount != null){ | |
| 867 | - try{ | |
| 868 | - count = Integer.parseInt(strCount); | |
| 869 | - }catch(NumberFormatException ex){} | |
| 831 | + int count = 0; | |
| 832 | + if (strCount != null) { | |
| 833 | + try { | |
| 834 | + count = Integer.parseInt(strCount); | |
| 835 | + } catch (NumberFormatException ex) { | |
| 836 | + } | |
| 870 | 837 | } |
| 871 | - count ++ ; | |
| 838 | + count++; | |
| 872 | 839 | answerPd.put("COUNT", count); |
| 873 | 840 | } |
| 874 | 841 | String questionNumStr = pqd.getString("OPTION_NUM"); |
| 875 | 842 | int questionNum = Integer.parseInt(questionNumStr); |
| 876 | - for(int i = 0 ; i < questionNum ;i++){ | |
| 877 | - if((!answerList.contains("" + (char)('A' + i))) && !(answerList.contains("" + (char)('a' + i)))){ | |
| 843 | + for (int i = 0; i < questionNum; i++) { | |
| 844 | + if ((!answerList.contains("" + (char) ('A' + i))) | |
| 845 | + && !(answerList.contains("" | |
| 846 | + + (char) ('a' + i)))) { | |
| 878 | 847 | PageData answerPd = new PageData(); |
| 879 | - answerPd.put("ANSWER", "" + (char)('A' + i)); | |
| 880 | - answerPd.put("ISRIGHT", pqd.get("ANSWER").equals(('A' + i)) ? "1" : "0"); | |
| 848 | + answerPd.put("ANSWER", "" + (char) ('A' + i)); | |
| 849 | + answerPd.put("ISRIGHT", pqd.get("ANSWER") | |
| 850 | + .equals(('A' + i)) ? "1" : "0"); | |
| 881 | 851 | answerPd.put("COUNT", 0); |
| 882 | 852 | answerInfos.add(answerPd); |
| 883 | 853 | } |
| 884 | 854 | } |
| 885 | - Collections.sort(answerInfos, new Comparator<PageData>(){ | |
| 855 | + Collections.sort(answerInfos, | |
| 856 | + new Comparator<PageData>() { | |
| 857 | + | |
| 858 | + @Override | |
| 859 | + public int compare(PageData p1, PageData p2) { | |
| 860 | + return p1.getString("ANSWER") | |
| 861 | + .compareToIgnoreCase( | |
| 862 | + p2.getString("ANSWER")); | |
| 863 | + } | |
| 886 | 864 | |
| 887 | - @Override | |
| 888 | - public int compare(PageData p1, PageData p2) { | |
| 889 | - return p1.getString("ANSWER").compareToIgnoreCase(p2.getString("ANSWER")); | |
| 890 | - } | |
| 891 | - | |
| 892 | - }); | |
| 865 | + }); | |
| 893 | 866 | pqd.put("ANSWERINFO", answerInfos); |
| 894 | 867 | pqd.remove("TEST_ID"); |
| 895 | 868 | } |
| 896 | - for(PageData pad:list){ | |
| 869 | + for (PageData pad : list) { | |
| 897 | 870 | String optionContent = pad.getString("OPTION_CONTENT"); |
| 898 | - if(optionContent != null && optionContent.startsWith("[") && optionContent.endsWith("]")){ | |
| 899 | - String[] options = optionContent.substring(1, optionContent.length() -1).split(","); | |
| 871 | + if (optionContent != null | |
| 872 | + && optionContent.startsWith("[") | |
| 873 | + && optionContent.endsWith("]")) { | |
| 874 | + String[] options = optionContent.substring(1, | |
| 875 | + optionContent.length() - 1).split(","); | |
| 900 | 876 | pad.put("OPTION_CONTENT", options); |
| 901 | - }else{ | |
| 902 | - pad.put("OPTION_CONTENT", new String[]{optionContent}); | |
| 877 | + } else { | |
| 878 | + pad.put("OPTION_CONTENT", | |
| 879 | + new String[] { optionContent }); | |
| 903 | 880 | } |
| 904 | 881 | } |
| 905 | 882 | testPd.put("QUESTIONS", list); |
| 906 | - | |
| 883 | + | |
| 907 | 884 | } |
| 908 | 885 | |
| 909 | 886 | res.setData(testPd); |
| ... | ... | @@ -916,9 +893,10 @@ public class V1 extends BaseController { |
| 916 | 893 | + (System.currentTimeMillis() - cur)); |
| 917 | 894 | return res.toJson(); |
| 918 | 895 | } |
| 919 | - | |
| 896 | + | |
| 920 | 897 | /** |
| 921 | 898 | * 试卷详细信息 |
| 899 | + * | |
| 922 | 900 | * @return |
| 923 | 901 | * @throws Exception |
| 924 | 902 | */ |
| ... | ... | @@ -993,10 +971,10 @@ public class V1 extends BaseController { |
| 993 | 971 | } |
| 994 | 972 | pqd.put("ANSWERINFO", answerInfos); |
| 995 | 973 | res.setData(pqd); |
| 996 | - }else{ | |
| 974 | + } else { | |
| 997 | 975 | res.setDataError(); |
| 998 | 976 | } |
| 999 | - }else{ | |
| 977 | + } else { | |
| 1000 | 978 | res.setDataError(); |
| 1001 | 979 | } |
| 1002 | 980 | logger.info("questionInTestReportInfo cost time:" |
| ... | ... | @@ -1006,6 +984,7 @@ public class V1 extends BaseController { |
| 1006 | 984 | |
| 1007 | 985 | /** |
| 1008 | 986 | * 试卷简要信息 |
| 987 | + * | |
| 1009 | 988 | * @return |
| 1010 | 989 | * @throws Exception |
| 1011 | 990 | */ |
| ... | ... | @@ -1075,9 +1054,9 @@ public class V1 extends BaseController { |
| 1075 | 1054 | return res.toBrifJson(); |
| 1076 | 1055 | } |
| 1077 | 1056 | |
| 1078 | - | |
| 1079 | 1057 | /** |
| 1080 | 1058 | * 试卷问题 |
| 1059 | + * | |
| 1081 | 1060 | * @return |
| 1082 | 1061 | * @throws Exception |
| 1083 | 1062 | */ |
| ... | ... | @@ -1095,6 +1074,7 @@ public class V1 extends BaseController { |
| 1095 | 1074 | |
| 1096 | 1075 | /** |
| 1097 | 1076 | * 问题 |
| 1077 | + * | |
| 1098 | 1078 | * @return |
| 1099 | 1079 | * @throws Exception |
| 1100 | 1080 | */ |
| ... | ... | @@ -1113,11 +1093,13 @@ public class V1 extends BaseController { |
| 1113 | 1093 | pd.put("QUESTION_ID", i); |
| 1114 | 1094 | PageData data = questionService.findById(pd); |
| 1115 | 1095 | String optionContent = data.getString("OPTION_CONTENT"); |
| 1116 | - if(optionContent != null && optionContent.startsWith("[") && optionContent.endsWith("]")){ | |
| 1117 | - String[] options = optionContent.substring(1, optionContent.length() -1).split(","); | |
| 1096 | + if (optionContent != null && optionContent.startsWith("[") | |
| 1097 | + && optionContent.endsWith("]")) { | |
| 1098 | + String[] options = optionContent.substring(1, | |
| 1099 | + optionContent.length() - 1).split(","); | |
| 1118 | 1100 | data.put("OPTION_CONTENT", options); |
| 1119 | - }else{ | |
| 1120 | - data.put("OPTION_CONTENT", new String[]{optionContent}); | |
| 1101 | + } else { | |
| 1102 | + data.put("OPTION_CONTENT", new String[] { optionContent }); | |
| 1121 | 1103 | } |
| 1122 | 1104 | if (data != null) { |
| 1123 | 1105 | list.add(data); |
| ... | ... | @@ -1134,6 +1116,7 @@ public class V1 extends BaseController { |
| 1134 | 1116 | |
| 1135 | 1117 | /** |
| 1136 | 1118 | * 查询知识点名称 |
| 1119 | + * | |
| 1137 | 1120 | * @return |
| 1138 | 1121 | * @throws Exception |
| 1139 | 1122 | */ |
| ... | ... | @@ -1165,6 +1148,7 @@ public class V1 extends BaseController { |
| 1165 | 1148 | |
| 1166 | 1149 | /** |
| 1167 | 1150 | * 章节名称 |
| 1151 | + * | |
| 1168 | 1152 | * @return |
| 1169 | 1153 | * @throws Exception |
| 1170 | 1154 | */ |
| ... | ... | @@ -1196,6 +1180,7 @@ public class V1 extends BaseController { |
| 1196 | 1180 | |
| 1197 | 1181 | /** |
| 1198 | 1182 | * 试题添加 |
| 1183 | + * | |
| 1199 | 1184 | * @return |
| 1200 | 1185 | * @throws Exception |
| 1201 | 1186 | */ |
| ... | ... | @@ -1215,6 +1200,7 @@ public class V1 extends BaseController { |
| 1215 | 1200 | |
| 1216 | 1201 | /*** |
| 1217 | 1202 | * 上传试卷 |
| 1203 | + * | |
| 1218 | 1204 | * @return |
| 1219 | 1205 | * @throws Exception |
| 1220 | 1206 | */ |
| ... | ... | @@ -1352,6 +1338,7 @@ public class V1 extends BaseController { |
| 1352 | 1338 | |
| 1353 | 1339 | /** |
| 1354 | 1340 | * 上传试卷,不上传试题详细信息。试题从已有数据库中组卷 |
| 1341 | + * | |
| 1355 | 1342 | * @return |
| 1356 | 1343 | * @throws Exception |
| 1357 | 1344 | */ |
| ... | ... | @@ -1415,6 +1402,7 @@ public class V1 extends BaseController { |
| 1415 | 1402 | |
| 1416 | 1403 | /** |
| 1417 | 1404 | * 上传知识点 |
| 1405 | + * | |
| 1418 | 1406 | * @return |
| 1419 | 1407 | * @throws Exception |
| 1420 | 1408 | */ |
| ... | ... | @@ -1448,7 +1436,8 @@ public class V1 extends BaseController { |
| 1448 | 1436 | } |
| 1449 | 1437 | |
| 1450 | 1438 | /** |
| 1451 | - * 上传测验成绩 | |
| 1439 | + * 上传测验成绩 | |
| 1440 | + * | |
| 1452 | 1441 | * @return |
| 1453 | 1442 | */ |
| 1454 | 1443 | @RequestMapping(value = "/uploadtestpaper", produces = "application/json;charset=UTF-8") |
| ... | ... | @@ -1472,7 +1461,10 @@ public class V1 extends BaseController { |
| 1472 | 1461 | testPaper.getCreateDate() == null ? Tools |
| 1473 | 1462 | .date2Str(new Date()) : testPaper |
| 1474 | 1463 | .getCreateDate()); |
| 1475 | - testPd.put("TEST_TYPE", testPaper.getTest_type() != null ? testPaper.getTest_type() :"1"); | |
| 1464 | + testPd.put( | |
| 1465 | + "TEST_TYPE", | |
| 1466 | + testPaper.getTest_type() != null ? testPaper | |
| 1467 | + .getTest_type() : "1"); | |
| 1476 | 1468 | List<PageData> listData = testpaperService.listAll(testPd); |
| 1477 | 1469 | if (!(listData != null && listData.size() > 0)) { |
| 1478 | 1470 | testPd.put("START_DATE", testPaper.getStartDate()); |
| ... | ... | @@ -1564,10 +1556,11 @@ public class V1 extends BaseController { |
| 1564 | 1556 | |
| 1565 | 1557 | return res.toJson(); |
| 1566 | 1558 | |
| 1567 | - } | |
| 1559 | + } | |
| 1568 | 1560 | |
| 1569 | 1561 | /** |
| 1570 | - * 上传测验成绩 | |
| 1562 | + * 上传测验成绩 | |
| 1563 | + * | |
| 1571 | 1564 | * @return |
| 1572 | 1565 | */ |
| 1573 | 1566 | @RequestMapping(value = "/uploadupdatetestpaper", produces = "application/json;charset=UTF-8") |
| ... | ... | @@ -1591,7 +1584,10 @@ public class V1 extends BaseController { |
| 1591 | 1584 | testPaper.getCreateDate() == null ? Tools |
| 1592 | 1585 | .date2Str(new Date()) : testPaper |
| 1593 | 1586 | .getCreateDate()); |
| 1594 | - testPd.put("TEST_TYPE", testPaper.getTest_type() != null ? testPaper.getTest_type() :"1"); | |
| 1587 | + testPd.put( | |
| 1588 | + "TEST_TYPE", | |
| 1589 | + testPaper.getTest_type() != null ? testPaper | |
| 1590 | + .getTest_type() : "1"); | |
| 1595 | 1591 | List<PageData> listData = testpaperService.listAll(testPd); |
| 1596 | 1592 | if ((listData != null && listData.size() > 0)) { |
| 1597 | 1593 | testPaperId = listData.get(0).getString("TESTPAPER_ID"); |
| ... | ... | @@ -1682,9 +1678,10 @@ public class V1 extends BaseController { |
| 1682 | 1678 | return res.toJson(); |
| 1683 | 1679 | |
| 1684 | 1680 | } |
| 1685 | - | |
| 1681 | + | |
| 1686 | 1682 | /** |
| 1687 | - * 上传测验成绩 | |
| 1683 | + * 上传测验成绩 | |
| 1684 | + * | |
| 1688 | 1685 | * @return |
| 1689 | 1686 | */ |
| 1690 | 1687 | @RequestMapping(value = "/uploadupdatetestpaper2", produces = "application/json;charset=UTF-8") |
| ... | ... | @@ -1716,7 +1713,10 @@ public class V1 extends BaseController { |
| 1716 | 1713 | testpaperinfoService.delete(testPd); |
| 1717 | 1714 | studenttestService.delete(testPd); |
| 1718 | 1715 | } |
| 1719 | - testPd.put("TEST_TYPE", testPaper.getTest_type() != null ? testPaper.getTest_type() :"101"); | |
| 1716 | + testPd.put( | |
| 1717 | + "TEST_TYPE", | |
| 1718 | + testPaper.getTest_type() != null ? testPaper | |
| 1719 | + .getTest_type() : "101"); | |
| 1720 | 1720 | testPd.put("START_DATE", testPaper.getStartDate()); |
| 1721 | 1721 | testPd.put("END_DATE", testPaper.getEndDate()); |
| 1722 | 1722 | testPd.put("NAME", testPaper.getName()); |
| ... | ... | @@ -1745,7 +1745,7 @@ public class V1 extends BaseController { |
| 1745 | 1745 | testPaper.getClassId()); |
| 1746 | 1746 | studentPageData.put("STUDENTTEST_ID", get32UUID()); |
| 1747 | 1747 | studenttestService.save(studentPageData); |
| 1748 | - | |
| 1748 | + | |
| 1749 | 1749 | for (TestPaperInfo testPaperInfo : studentAnswer |
| 1750 | 1750 | .getQuestions()) { |
| 1751 | 1751 | testInfoPd = new PageData(); |
| ... | ... | @@ -1768,7 +1768,7 @@ public class V1 extends BaseController { |
| 1768 | 1768 | testPaperInfo.getLikes()); |
| 1769 | 1769 | testInfoPd.put("ANSWER_TYPE", testPaperInfo |
| 1770 | 1770 | .getAnswerType() == null ? "1" |
| 1771 | - : testPaperInfo.getAnswerType()); | |
| 1771 | + : testPaperInfo.getAnswerType()); | |
| 1772 | 1772 | testInfoPd.put("PRESS_TIME", |
| 1773 | 1773 | testPaperInfo.getPressTime()); |
| 1774 | 1774 | testInfoPd.put("RECEIVER_DATE", |
| ... | ... | @@ -1778,7 +1778,8 @@ public class V1 extends BaseController { |
| 1778 | 1778 | testInfoPd.put("NOTE", testPaperInfo.getNote()); |
| 1779 | 1779 | testInfoPd.put("MARK_NO", |
| 1780 | 1780 | testPaperInfo.getMarkNo()); |
| 1781 | - testInfoPd.put("RANDOM", testPaperInfo.getRandom()); | |
| 1781 | + testInfoPd.put("RANDOM", | |
| 1782 | + testPaperInfo.getRandom()); | |
| 1782 | 1783 | testInfoPd.put("RANK", testPaperInfo.getRank()); |
| 1783 | 1784 | testInfoPdList.add(testInfoPd); |
| 1784 | 1785 | } |
| ... | ... | @@ -1797,13 +1798,14 @@ public class V1 extends BaseController { |
| 1797 | 1798 | } |
| 1798 | 1799 | logger.info("uploadupdateTestpaper2 cost time:" |
| 1799 | 1800 | + (System.currentTimeMillis() - cur)); |
| 1800 | - | |
| 1801 | + | |
| 1801 | 1802 | return res.toJson(); |
| 1802 | - | |
| 1803 | + | |
| 1803 | 1804 | } |
| 1804 | 1805 | |
| 1805 | 1806 | /** |
| 1806 | 1807 | * 查询知识点 |
| 1808 | + * | |
| 1807 | 1809 | * @return |
| 1808 | 1810 | * @throws Exception |
| 1809 | 1811 | */ |
| ... | ... | @@ -1844,9 +1846,13 @@ public class V1 extends BaseController { |
| 1844 | 1846 | |
| 1845 | 1847 | /** |
| 1846 | 1848 | * 知识点递归查询 |
| 1847 | - * @param list 查询知识点及子知识点 | |
| 1848 | - * @param dept 深度 | |
| 1849 | - * @param end 层深 | |
| 1849 | + * | |
| 1850 | + * @param list | |
| 1851 | + * 查询知识点及子知识点 | |
| 1852 | + * @param dept | |
| 1853 | + * 深度 | |
| 1854 | + * @param end | |
| 1855 | + * 层深 | |
| 1850 | 1856 | * @throws Exception |
| 1851 | 1857 | */ |
| 1852 | 1858 | private void roundPointData(List<PageData> list, int dept, int end) |
| ... | ... | @@ -1869,9 +1875,13 @@ public class V1 extends BaseController { |
| 1869 | 1875 | |
| 1870 | 1876 | /** |
| 1871 | 1877 | * 章节递归查询 |
| 1872 | - * @param list 章节 | |
| 1873 | - * @param dept 深度 | |
| 1874 | - * @param end 递归深度 | |
| 1878 | + * | |
| 1879 | + * @param list | |
| 1880 | + * 章节 | |
| 1881 | + * @param dept | |
| 1882 | + * 深度 | |
| 1883 | + * @param end | |
| 1884 | + * 递归深度 | |
| 1875 | 1885 | * @throws Exception |
| 1876 | 1886 | */ |
| 1877 | 1887 | private void roundChapterData(List<PageData> list, int dept, int end) |
| ... | ... | @@ -1896,7 +1906,8 @@ public class V1 extends BaseController { |
| 1896 | 1906 | } |
| 1897 | 1907 | |
| 1898 | 1908 | /** |
| 1899 | - * 下载测验成绩 | |
| 1909 | + * 下载测验成绩 | |
| 1910 | + * | |
| 1900 | 1911 | * @return |
| 1901 | 1912 | */ |
| 1902 | 1913 | @RequestMapping(value = "/downloadtestpaper", produces = "application/json;charset=UTF-8") |
| ... | ... | @@ -1987,7 +1998,8 @@ public class V1 extends BaseController { |
| 1987 | 1998 | |
| 1988 | 1999 | /** |
| 1989 | 2000 | * |
| 1990 | - * 下载测验成绩 | |
| 2001 | + * 下载测验成绩 | |
| 2002 | + * | |
| 1991 | 2003 | * @return |
| 1992 | 2004 | */ |
| 1993 | 2005 | @RequestMapping(value = "/testpaper", produces = "application/json;charset=UTF-8") |
| ... | ... | @@ -2042,9 +2054,9 @@ public class V1 extends BaseController { |
| 2042 | 2054 | this.getUserID(); |
| 2043 | 2055 | } |
| 2044 | 2056 | |
| 2045 | - | |
| 2046 | 2057 | /*** |
| 2047 | 2058 | * 网络 |
| 2059 | + * | |
| 2048 | 2060 | * @return |
| 2049 | 2061 | * @throws Exception |
| 2050 | 2062 | */ |
| ... | ... | @@ -2098,6 +2110,7 @@ public class V1 extends BaseController { |
| 2098 | 2110 | |
| 2099 | 2111 | /** |
| 2100 | 2112 | * 获取远端ip地址 |
| 2113 | + * | |
| 2101 | 2114 | * @return |
| 2102 | 2115 | */ |
| 2103 | 2116 | public String getRemoteIp() { |
| ... | ... | @@ -2113,6 +2126,7 @@ public class V1 extends BaseController { |
| 2113 | 2126 | |
| 2114 | 2127 | /** |
| 2115 | 2128 | * 查询新版本信息 |
| 2129 | + * | |
| 2116 | 2130 | * @param request |
| 2117 | 2131 | * @return |
| 2118 | 2132 | * @throws Exception |
| ... | ... | @@ -2187,7 +2201,7 @@ public class V1 extends BaseController { |
| 2187 | 2201 | ret.setData(lpd); |
| 2188 | 2202 | return ret.toJson(); |
| 2189 | 2203 | } |
| 2190 | - | |
| 2204 | + | |
| 2191 | 2205 | @RequestMapping(value = "/textbook", produces = "application/json;charset=UTF-8") |
| 2192 | 2206 | @ResponseBody |
| 2193 | 2207 | public Object textbook() throws Exception { |
| ... | ... | @@ -2277,29 +2291,32 @@ public class V1 extends BaseController { |
| 2277 | 2291 | pd.put("KNOWLEDGE_IDS", ids); |
| 2278 | 2292 | pd.remove("KNOWLEDGE_ID"); |
| 2279 | 2293 | } |
| 2280 | - int pageNumI = 0 ; | |
| 2281 | - int count = 30 ; | |
| 2294 | + int pageNumI = 0; | |
| 2295 | + int count = 30; | |
| 2282 | 2296 | String pageNum = pd.getString("PAGENUM"); |
| 2283 | 2297 | String countStr = pd.getString("COUNT"); |
| 2284 | - if(pageNum != null && !"".equals(pageNum) && countStr != null && !"".equals(countStr)){ | |
| 2298 | + if (pageNum != null && !"".equals(pageNum) && countStr != null | |
| 2299 | + && !"".equals(countStr)) { | |
| 2285 | 2300 | pageNumI = Integer.parseInt(pageNum); |
| 2286 | 2301 | count = Integer.parseInt(countStr); |
| 2287 | - if(pageNumI >= 1){ | |
| 2288 | - pageNumI = (pageNumI -1 ) * count; | |
| 2289 | - }else{ | |
| 2290 | - pageNumI = 0 ; | |
| 2302 | + if (pageNumI >= 1) { | |
| 2303 | + pageNumI = (pageNumI - 1) * count; | |
| 2304 | + } else { | |
| 2305 | + pageNumI = 0; | |
| 2291 | 2306 | } |
| 2292 | 2307 | pd.put("PAGENUM", "" + pageNumI); |
| 2293 | 2308 | pd.put("COUNT", "" + count); |
| 2294 | 2309 | } |
| 2295 | 2310 | List<PageData> list = questionService.listAllquestion(pd); |
| 2296 | - for(PageData pad:list){ | |
| 2311 | + for (PageData pad : list) { | |
| 2297 | 2312 | String optionContent = pad.getString("OPTION_CONTENT"); |
| 2298 | - if(optionContent != null && optionContent.startsWith("[") && optionContent.endsWith("]")){ | |
| 2299 | - String[] options = optionContent.substring(1, optionContent.length() -1).split(","); | |
| 2313 | + if (optionContent != null && optionContent.startsWith("[") | |
| 2314 | + && optionContent.endsWith("]")) { | |
| 2315 | + String[] options = optionContent.substring(1, | |
| 2316 | + optionContent.length() - 1).split(","); | |
| 2300 | 2317 | pad.put("OPTION_CONTENT", options); |
| 2301 | - }else{ | |
| 2302 | - pad.put("OPTION_CONTENT", new String[]{optionContent}); | |
| 2318 | + } else { | |
| 2319 | + pad.put("OPTION_CONTENT", new String[] { optionContent }); | |
| 2303 | 2320 | } |
| 2304 | 2321 | } |
| 2305 | 2322 | res.setData(list); |
| ... | ... | @@ -2348,13 +2365,15 @@ public class V1 extends BaseController { |
| 2348 | 2365 | pd.remove("KNOWLEDGE_ID"); |
| 2349 | 2366 | } |
| 2350 | 2367 | List<PageData> list = questionService.listAllRandquestion(pd); |
| 2351 | - for(PageData pad:list){ | |
| 2368 | + for (PageData pad : list) { | |
| 2352 | 2369 | String optionContent = pad.getString("OPTION_CONTENT"); |
| 2353 | - if(optionContent != null && optionContent.startsWith("[") && optionContent.endsWith("]")){ | |
| 2354 | - String[] options = optionContent.substring(1, optionContent.length() -1).split(","); | |
| 2370 | + if (optionContent != null && optionContent.startsWith("[") | |
| 2371 | + && optionContent.endsWith("]")) { | |
| 2372 | + String[] options = optionContent.substring(1, | |
| 2373 | + optionContent.length() - 1).split(","); | |
| 2355 | 2374 | pad.put("OPTION_CONTENT", options); |
| 2356 | - }else{ | |
| 2357 | - pad.put("OPTION_CONTENT", new String[]{optionContent}); | |
| 2375 | + } else { | |
| 2376 | + pad.put("OPTION_CONTENT", new String[] { optionContent }); | |
| 2358 | 2377 | } |
| 2359 | 2378 | } |
| 2360 | 2379 | res.setData(list); |
| ... | ... | @@ -2391,7 +2410,6 @@ public class V1 extends BaseController { |
| 2391 | 2410 | |
| 2392 | 2411 | } |
| 2393 | 2412 | |
| 2394 | - | |
| 2395 | 2413 | /** |
| 2396 | 2414 | * |
| 2397 | 2415 | * @return |
| ... | ... | @@ -2688,42 +2706,43 @@ public class V1 extends BaseController { |
| 2688 | 2706 | |
| 2689 | 2707 | return key.toString(); |
| 2690 | 2708 | } |
| 2691 | - | |
| 2692 | - | |
| 2709 | + | |
| 2693 | 2710 | /** |
| 2694 | 2711 | * 根据ID,获取科目中文名称 |
| 2712 | + * | |
| 2695 | 2713 | * @param type |
| 2696 | 2714 | * @return |
| 2697 | 2715 | * @throws Exception |
| 2698 | 2716 | */ |
| 2699 | 2717 | @RequestMapping(value = "/subjectename", produces = "application/json;charset=UTF-8") |
| 2700 | 2718 | @ResponseBody |
| 2701 | - public String findSubjectEName() throws Exception{ | |
| 2719 | + public String findSubjectEName() throws Exception { | |
| 2702 | 2720 | PageData pageData = this.getPageData(); |
| 2703 | 2721 | ResponseGson<String> res = new ResponseGson<String>(); |
| 2704 | 2722 | pageData = subjectService.findById(pageData); |
| 2705 | - if(pageData != null){ | |
| 2723 | + if (pageData != null) { | |
| 2706 | 2724 | res.setData(pageData.getString("ENAME")); |
| 2707 | - }else{ | |
| 2725 | + } else { | |
| 2708 | 2726 | res.setDataError(); |
| 2709 | 2727 | } |
| 2710 | 2728 | return res.toJson(); |
| 2711 | 2729 | } |
| 2712 | - | |
| 2730 | + | |
| 2713 | 2731 | /** |
| 2714 | 2732 | * 根据ID或者科目英文名称 |
| 2733 | + * | |
| 2715 | 2734 | * @param type |
| 2716 | 2735 | * @return |
| 2717 | 2736 | * @throws Exception |
| 2718 | 2737 | */ |
| 2719 | 2738 | @RequestMapping(value = "/subjectcname", produces = "application/json;charset=UTF-8") |
| 2720 | 2739 | @ResponseBody |
| 2721 | - public String findSubjectCName() throws Exception{ | |
| 2740 | + public String findSubjectCName() throws Exception { | |
| 2722 | 2741 | ResponseGson<String> res = new ResponseGson<String>(); |
| 2723 | 2742 | PageData pageData = new PageData(); |
| 2724 | 2743 | StringBuilder sb = new StringBuilder(); |
| 2725 | - String type = this.getPageData().getString("ID"); | |
| 2726 | - if(type.contains(",")){ | |
| 2744 | + String type = this.getPageData().getString("ID"); | |
| 2745 | + if (type.contains(",")) { | |
| 2727 | 2746 | String[] types = type.split(","); |
| 2728 | 2747 | for (String t : types) { |
| 2729 | 2748 | pageData.put("ID", t); |
| ... | ... | @@ -2732,8 +2751,8 @@ public class V1 extends BaseController { |
| 2732 | 2751 | sb.append(pageData.getString("CNAME") + "; "); |
| 2733 | 2752 | } |
| 2734 | 2753 | } |
| 2735 | - sb.delete(sb.length() -3, sb.length()); | |
| 2736 | - }else{ | |
| 2754 | + sb.delete(sb.length() - 3, sb.length()); | |
| 2755 | + } else { | |
| 2737 | 2756 | pageData.put("ID", type); |
| 2738 | 2757 | pageData = subjectService.findById(pageData); |
| 2739 | 2758 | if (pageData != null) { |
| ... | ... | @@ -2743,126 +2762,339 @@ public class V1 extends BaseController { |
| 2743 | 2762 | res.setData(sb.toString()); |
| 2744 | 2763 | return res.toJson(); |
| 2745 | 2764 | } |
| 2746 | - | |
| 2765 | + | |
| 2747 | 2766 | /** |
| 2748 | 2767 | * 根据ID班级名称 |
| 2768 | + * | |
| 2749 | 2769 | * @param id |
| 2750 | 2770 | * @return |
| 2751 | 2771 | * @throws Exception |
| 2752 | 2772 | */ |
| 2753 | 2773 | @RequestMapping(value = "/classname", produces = "application/json;charset=UTF-8") |
| 2754 | 2774 | @ResponseBody |
| 2755 | - public String findClassName() throws Exception { | |
| 2775 | + public String findClassName() throws Exception { | |
| 2756 | 2776 | ResponseGson<String> res = new ResponseGson<String>(); |
| 2757 | 2777 | PageData pageData = this.getPageData(); |
| 2758 | 2778 | pageData = sclassService.findById(pageData); |
| 2759 | - String className = "" ; | |
| 2760 | - if(pageData != null){ | |
| 2779 | + String className = ""; | |
| 2780 | + if (pageData != null) { | |
| 2761 | 2781 | className = pageData.getString("CLASS_NAME"); |
| 2762 | - }else{ | |
| 2782 | + } else { | |
| 2763 | 2783 | res.setDataError(); |
| 2764 | 2784 | } |
| 2765 | 2785 | res.setData(className); |
| 2766 | 2786 | return res.toJson(); |
| 2767 | - | |
| 2787 | + | |
| 2768 | 2788 | } |
| 2769 | - | |
| 2789 | + | |
| 2770 | 2790 | /** |
| 2771 | 2791 | * 根据ID班级名称 |
| 2792 | + * | |
| 2772 | 2793 | * @param id |
| 2773 | 2794 | * @return |
| 2774 | 2795 | * @throws Exception |
| 2775 | 2796 | */ |
| 2776 | 2797 | @RequestMapping(value = "/qstudentinfo", produces = "application/json;charset=UTF-8") |
| 2777 | 2798 | @ResponseBody |
| 2778 | - public String qstudentinfo() throws Exception { | |
| 2799 | + public String qstudentinfo() throws Exception { | |
| 2779 | 2800 | ResponseGson<List<PageData>> res = new ResponseGson(); |
| 2780 | 2801 | PageData pageData = this.getPageData(); |
| 2781 | 2802 | if (pageData.containsKey("TEST_ID") |
| 2782 | 2803 | && pageData.containsKey("QUESTION_ID")) { |
| 2783 | 2804 | List<PageData> list = v1Service.getQuestionWrongInfo(pageData); |
| 2784 | 2805 | res.setData(list); |
| 2785 | - }else{ | |
| 2806 | + } else { | |
| 2786 | 2807 | res.setDataError(); |
| 2787 | 2808 | } |
| 2788 | 2809 | return res.toJson(); |
| 2789 | - | |
| 2810 | + | |
| 2790 | 2811 | } |
| 2791 | - | |
| 2812 | + | |
| 2792 | 2813 | /** |
| 2793 | 2814 | * 根据ID班级名称 |
| 2815 | + * | |
| 2794 | 2816 | * @param id |
| 2795 | 2817 | * @return |
| 2796 | 2818 | * @throws Exception |
| 2797 | 2819 | */ |
| 2798 | 2820 | @RequestMapping(value = "/wrongquestion", produces = "application/json;charset=UTF-8") |
| 2799 | 2821 | @ResponseBody |
| 2800 | - public String wrongquestion() throws Exception { | |
| 2822 | + public String wrongquestion() throws Exception { | |
| 2801 | 2823 | ResponseGson<List<PageData>> res = new ResponseGson(); |
| 2802 | 2824 | PageData pageData = this.getPageData(); |
| 2803 | 2825 | List<PageData> list = v1Service.getLastWrongQuestionInfo(pageData); |
| 2804 | 2826 | res.setData(list); |
| 2805 | 2827 | return res.toJson(); |
| 2806 | - | |
| 2828 | + | |
| 2807 | 2829 | } |
| 2808 | - | |
| 2830 | + | |
| 2809 | 2831 | /** |
| 2810 | 2832 | * 根据ID班级名称 |
| 2833 | + * | |
| 2811 | 2834 | * @param id |
| 2812 | 2835 | * @return |
| 2813 | 2836 | * @throws Exception |
| 2814 | 2837 | */ |
| 2815 | 2838 | @RequestMapping(value = "/printmsg", produces = "application/json;charset=UTF-8") |
| 2816 | 2839 | @ResponseBody |
| 2817 | - public String printmsg() throws Exception { | |
| 2840 | + public String printmsg() throws Exception { | |
| 2818 | 2841 | ResponseGson<Map> res = new ResponseGson(); |
| 2819 | 2842 | res.setData(FileUploadProgressListener.map); |
| 2820 | 2843 | return res.toJson(); |
| 2821 | - | |
| 2844 | + | |
| 2822 | 2845 | } |
| 2846 | + | |
| 2823 | 2847 | /** |
| 2824 | 2848 | * 根据ID班级名称 |
| 2849 | + * | |
| 2825 | 2850 | * @param id |
| 2826 | 2851 | * @return |
| 2827 | 2852 | * @throws Exception |
| 2828 | 2853 | */ |
| 2829 | 2854 | @RequestMapping(value = "/printresult", produces = "application/json;charset=UTF-8") |
| 2830 | 2855 | @ResponseBody |
| 2831 | - public String printresult() throws Exception { | |
| 2856 | + public String printresult() throws Exception { | |
| 2832 | 2857 | ResponseGson<Map> res = new ResponseGson(); |
| 2833 | 2858 | res.setData(FileUploadProgressListener.result); |
| 2834 | 2859 | return res.toJson(); |
| 2835 | - | |
| 2860 | + | |
| 2836 | 2861 | } |
| 2837 | - | |
| 2862 | + | |
| 2838 | 2863 | @RequestMapping(value = "/uploadfile", produces = "application/json;charset=UTF-8") |
| 2839 | 2864 | @ResponseBody |
| 2840 | - public String uploadFile(@RequestParam(value="file",required=false)MultipartFile file, HttpServletRequest request) throws Exception{ | |
| 2865 | + public String uploadFile( | |
| 2866 | + @RequestParam(value = "file", required = false) MultipartFile file, | |
| 2867 | + HttpServletRequest request) throws Exception { | |
| 2841 | 2868 | ResponseGson<String> res = new ResponseGson<String>(); |
| 2842 | 2869 | if (file != null) { |
| 2843 | 2870 | String path = request.getSession().getServletContext() |
| 2844 | 2871 | .getRealPath("/uploadFiles/uploadFile/"); |
| 2845 | - String name = System.currentTimeMillis() + file.getOriginalFilename(); | |
| 2872 | + String name = System.currentTimeMillis() | |
| 2873 | + + file.getOriginalFilename(); | |
| 2846 | 2874 | File pathFile = new File(path); |
| 2847 | 2875 | pathFile.mkdirs(); |
| 2848 | 2876 | File saveFile = new File(path + File.separator + name); |
| 2849 | - if(saveFile.exists()){ | |
| 2877 | + if (saveFile.exists()) { | |
| 2850 | 2878 | saveFile.delete(); |
| 2851 | 2879 | } |
| 2852 | 2880 | saveFile.createNewFile(); |
| 2853 | 2881 | file.transferTo(saveFile); |
| 2854 | 2882 | path = request.getContextPath(); |
| 2855 | - String basePath = request.getScheme() + "://" + request.getServerName() | |
| 2856 | - + ":" + request.getServerPort() + path + "/"; | |
| 2883 | + String basePath = request.getScheme() + "://" | |
| 2884 | + + request.getServerName() + ":" + request.getServerPort() | |
| 2885 | + + path + "/"; | |
| 2857 | 2886 | res.setData("/uploadFiles/uploadFile/" + name); |
| 2858 | - }else{ | |
| 2887 | + } else { | |
| 2859 | 2888 | res.setDataError(); |
| 2860 | 2889 | } |
| 2861 | 2890 | return res.toJson(); |
| 2862 | 2891 | } |
| 2863 | - | |
| 2864 | - | |
| 2865 | - | |
| 2866 | - | |
| 2867 | - | |
| 2892 | + | |
| 2893 | + @RequestMapping(value = "/liuqin", produces = "application/json;charset=UTF-8") | |
| 2894 | + @ResponseBody | |
| 2895 | + public String dosunvotedata() /*throws Exception*/ { | |
| 2896 | + | |
| 2897 | + PageData pd = new PageData(); | |
| 2898 | + pd.put("dbtype", "mysql"); | |
| 2899 | + pd.put("username", "root"); | |
| 2900 | + pd.put("password", "admin"); | |
| 2901 | + pd.put("dbAddress", "120.78.57.84"); | |
| 2902 | + pd.put("dbport", "3306"); | |
| 2903 | + pd.put("databaseName", "sunvote"); | |
| 2904 | + pd.put("dbport", "3306"); | |
| 2905 | + List<PageData> resultList = new ArrayList<PageData>(); | |
| 2906 | + | |
| 2907 | + try { | |
| 2908 | + Connection conn = DbFH.getFHCon(pd); | |
| 2909 | + | |
| 2910 | + Statement stmt = conn.createStatement(); | |
| 2911 | + ResultSet rs = stmt | |
| 2912 | + .executeQuery("select reportId,paperName,createTime,paperScore,classAverage,className from t_report where userId = '4000001' and className = 'G205' "); | |
| 2913 | + while (rs.next()) { | |
| 2914 | + PageData coloumData = new PageData(); | |
| 2915 | + String reportId = rs.getString("reportId"); | |
| 2916 | + coloumData.put("PAPER_ID", reportId); | |
| 2917 | + coloumData.put("TESTPAPER_ID", reportId); | |
| 2918 | + coloumData.put("NAME", rs.getString("paperName")); | |
| 2919 | + coloumData.put("START_DATE", rs.getString("createTime")); | |
| 2920 | + coloumData.put("END_DATE", rs.getString("createTime")); | |
| 2921 | + coloumData.put("CREATE_DATE", rs.getString("createTime")); | |
| 2922 | + coloumData.put("REMARK", rs.getString("paperScore")); | |
| 2923 | + coloumData.put("TOTAL_SCORE", rs.getString("paperScore")); | |
| 2924 | + coloumData.put("AVG_SCORE", rs.getString("classAverage")); | |
| 2925 | + String className = rs.getString("className"); | |
| 2926 | + if ("G201".equals(className)) { | |
| 2927 | + coloumData.put("SCLASS_ID", | |
| 2928 | + "2af1ca03c40c4acab7b7d0f8243c9849"); | |
| 2929 | + } | |
| 2930 | + if ("G202".equals(className)) { | |
| 2931 | + coloumData.put("SCLASS_ID", | |
| 2932 | + "49f1b14d10424bb6abc8aed56a4693cf"); | |
| 2933 | + } | |
| 2934 | + if ("G203".equals(className)) { | |
| 2935 | + coloumData.put("SCLASS_ID", | |
| 2936 | + "80b5dde0138b405bb2bcfc5f33bad649"); | |
| 2937 | + } | |
| 2938 | + if ("G204".equals(className)) { | |
| 2939 | + coloumData.put("SCLASS_ID", | |
| 2940 | + "f9de4a939ec54d7ba27d1248279a2f95"); | |
| 2941 | + } | |
| 2942 | + if ("G205".equals(className)) { | |
| 2943 | + coloumData.put("SCLASS_ID", | |
| 2944 | + "0f10ce0a3bf146769213c49825c35feb"); | |
| 2945 | + } | |
| 2946 | + if ("G206".equals(className)) { | |
| 2947 | + coloumData.put("SCLASS_ID", | |
| 2948 | + "d33edcd7a0f74ca9a0e92ebda9442869"); | |
| 2949 | + } | |
| 2950 | + if ("G207".equals(className)) { | |
| 2951 | + coloumData.put("SCLASS_ID", | |
| 2952 | + "ffef54ef21c64525831f266b6fae34fc"); | |
| 2953 | + } | |
| 2954 | + coloumData | |
| 2955 | + .put("TEACHER_ID", "dbf8b49c641d47a8a811bb6d7480be72"); | |
| 2956 | + coloumData.put("TEST_TYPE", "1"); | |
| 2957 | + | |
| 2958 | + List<PageData> detailList = new ArrayList<PageData>(); | |
| 2959 | + | |
| 2960 | + Statement stmt1 = conn.createStatement(); | |
| 2961 | + ResultSet rs1 = stmt1 | |
| 2962 | + .executeQuery("select studentName,answerStr,score,totalScore from t_reportdetail where reportId = '" | |
| 2963 | + + reportId + "'"); | |
| 2964 | + while (rs1.next()) { | |
| 2965 | + PageData detailPd = new PageData(); | |
| 2966 | + detailPd.put("NAME", rs1.getString("studentName")); | |
| 2967 | + detailPd.put("answerStr", rs1.getString("answerStr")); | |
| 2968 | + detailPd.put("SCORE", rs1.getString("totalScore")); | |
| 2969 | + detailPd.put("totalScore", rs.getString("paperScore")); | |
| 2970 | + detailList.add(detailPd); | |
| 2971 | + } | |
| 2972 | + rs1.close(); | |
| 2973 | + stmt1.close(); | |
| 2974 | + stmt1 = null; | |
| 2975 | + coloumData.put("STUDENT", detailList); | |
| 2976 | + | |
| 2977 | + resultList.add(coloumData); | |
| 2978 | + } | |
| 2979 | + rs.close(); | |
| 2980 | + stmt.close(); | |
| 2981 | + conn.close(); | |
| 2982 | + }catch(Exception e){ | |
| 2983 | + e.printStackTrace(); | |
| 2984 | + } | |
| 2985 | + for (PageData paper : resultList) { | |
| 2986 | + PageData testPd = new PageData(); | |
| 2987 | + testPd.put("TESTPAPER_ID", paper.get("TESTPAPER_ID")); | |
| 2988 | + testPd.put("PAPER_ID", paper.get("PAPER_ID")); | |
| 2989 | + List<PageData> listData = null; | |
| 2990 | + try { | |
| 2991 | + listData = testpaperService.listAll(testPd); | |
| 2992 | + } catch (Exception e) { | |
| 2993 | + e.printStackTrace(); | |
| 2994 | + } | |
| 2995 | + if ((listData != null && listData.size() > 0)) { | |
| 2996 | + String testPaperId = listData.get(0).getString("TESTPAPER_ID"); | |
| 2997 | + try { | |
| 2998 | + testpaperService.deleteList(testPd); | |
| 2999 | + } catch (Exception e) { | |
| 3000 | + e.printStackTrace(); | |
| 3001 | + } | |
| 3002 | + testPd.put("TEST_ID", testPaperId); | |
| 3003 | + try { | |
| 3004 | + testpaperinfoService.delete(testPd); | |
| 3005 | + } catch (Exception e) { | |
| 3006 | + e.printStackTrace(); | |
| 3007 | + } | |
| 3008 | + try { | |
| 3009 | + studenttestService.delete(testPd); | |
| 3010 | + } catch (Exception e) { | |
| 3011 | + e.printStackTrace(); | |
| 3012 | + } | |
| 3013 | + listData.clear(); | |
| 3014 | + } | |
| 3015 | + if (!(listData != null && listData.size() > 0)) { | |
| 3016 | + logger.info(paper); | |
| 3017 | + try { | |
| 3018 | + testpaperService.save(paper); | |
| 3019 | + } catch (Exception e) { | |
| 3020 | + e.printStackTrace(); | |
| 3021 | + } | |
| 3022 | + logger.info("添加测试名称成功:" + paper.get("TESTPAPER_ID")); | |
| 3023 | + List<PageData> detailList = (List<PageData>) paper.get("STUDENT"); | |
| 3024 | + int i = 0; | |
| 3025 | + List<PageData> testInfoPdList = new ArrayList(); | |
| 3026 | + for (PageData student : detailList) { | |
| 3027 | + i++; | |
| 3028 | + PageData studentDetail = null; | |
| 3029 | + try { | |
| 3030 | + studentDetail = studentService.findByName(student); | |
| 3031 | + } catch (Exception e) { | |
| 3032 | + e.printStackTrace(); | |
| 3033 | + } | |
| 3034 | + PageData studentPageData = new PageData(); | |
| 3035 | + studentPageData.put("STUDENTTEST_ID", get32UUID()); | |
| 3036 | + studentPageData.put("STUDENT_ID", studentDetail.get("ID")); | |
| 3037 | + studentPageData.put("TEST_ID", paper.get("TESTPAPER_ID")); | |
| 3038 | + studentPageData.put("PAPER_ID", paper.get("TESTPAPER_ID")); | |
| 3039 | + studentPageData.put("SCORE", student.get("SCORE")); | |
| 3040 | + studentPageData.put("CLASS_ID", paper.get("SCLASS_ID")); | |
| 3041 | + logger.info("学生测试数据"); | |
| 3042 | + logger.info(studentPageData); | |
| 3043 | + try { | |
| 3044 | + studenttestService.save(studentPageData); | |
| 3045 | + } catch (Exception e) { | |
| 3046 | + e.printStackTrace(); | |
| 3047 | + } | |
| 3048 | + logger.info("添加学生测试成功:" + studentDetail.get("NAME")); | |
| 3049 | + | |
| 3050 | + String answerStr = student.getString("answerStr"); | |
| 3051 | + String[] answerStrs = answerStr.split(";"); | |
| 3052 | + int j = 0; | |
| 3053 | + for (String answers : answerStrs) { | |
| 3054 | + j++; | |
| 3055 | + PageData testInfoPd = new PageData(); | |
| 3056 | + testInfoPd.put("TESTPAPERINFO_ID", this.get32UUID()); | |
| 3057 | + testInfoPd.put("PAPER_ID", paper.get("TESTPAPER_ID")); | |
| 3058 | + testInfoPd.put("STUDENT_ID", studentDetail.get("ID")); | |
| 3059 | + testInfoPd.put("TEST_ID", paper.get("TESTPAPER_ID")); | |
| 3060 | + testInfoPd.put("QUESTION_ID", paper.get("TESTPAPER_ID") + "" + i); | |
| 3061 | + String[] ans = answers.split(","); | |
| 3062 | + testInfoPd.put("ANSWER", ans[0]); | |
| 3063 | + testInfoPd.put("RIGHT", ans[1]); | |
| 3064 | + testInfoPd.put("SCORE", ""); | |
| 3065 | + testInfoPd.put("LIKES", ""); | |
| 3066 | + testInfoPd.put("ANSWER_TYPE", "1"); | |
| 3067 | + testInfoPd.put("PRESS_TIME", ""); | |
| 3068 | + testInfoPd.put("RECEIVER_DATE", ""); | |
| 3069 | + testInfoPd.put("SUBJECTIVE", ""); | |
| 3070 | + testInfoPd.put("MARK_NO", "" + j); | |
| 3071 | + testInfoPd.put("RANDOM", "" + j); | |
| 3072 | + testInfoPd.put("RANK", "" + j); | |
| 3073 | + try { | |
| 3074 | + logger.info("学生详细测试数据"); | |
| 3075 | + logger.info(testInfoPd); | |
| 3076 | + testpaperinfoService.save(testInfoPd); | |
| 3077 | + logger.info("添加学生详细情况成功:"); | |
| 3078 | + } catch (Exception e) { | |
| 3079 | + // TODO Auto-generated catch block | |
| 3080 | + e.printStackTrace(); | |
| 3081 | + } | |
| 3082 | +// testInfoPdList.add(testInfoPd); | |
| 3083 | + } | |
| 3084 | +// logger.info("学生详细测试数据"); | |
| 3085 | +// logger.info(testInfoPdList); | |
| 3086 | + try { | |
| 3087 | +// testpaperinfoService.batchSave(testInfoPdList); | |
| 3088 | + } catch (Exception e) { | |
| 3089 | + e.printStackTrace(); | |
| 3090 | + } | |
| 3091 | +// logger.info("添加学生详细情况成功:"); | |
| 3092 | + } | |
| 3093 | + } | |
| 3094 | + } | |
| 3095 | + | |
| 3096 | + ResponseGson<String> res = new ResponseGson<String>(); | |
| 3097 | + return res.toJson(); | |
| 3098 | + } | |
| 3099 | + | |
| 2868 | 3100 | } | ... | ... |
src/com/fh/controller/sunvote/paper/PaperController.java
| ... | ... | @@ -28,6 +28,7 @@ import com.fh.entity.system.User; |
| 28 | 28 | import com.fh.service.api.V1Manager; |
| 29 | 29 | import com.fh.service.sunvote.paper.PaperManager; |
| 30 | 30 | import com.fh.service.sunvote.paperquestion.PaperQuestionManager; |
| 31 | +import com.fh.service.sunvote.question.QuestionManager; | |
| 31 | 32 | import com.fh.util.AppUtil; |
| 32 | 33 | import com.fh.util.Const; |
| 33 | 34 | import com.fh.util.Jurisdiction; |
| ... | ... | @@ -49,6 +50,9 @@ public class PaperController extends BaseController { |
| 49 | 50 | @Resource(name="paperquestionService") |
| 50 | 51 | private PaperQuestionManager paperquestionService; |
| 51 | 52 | |
| 53 | + @Resource(name="questionService") | |
| 54 | + private QuestionManager questionService; | |
| 55 | + | |
| 52 | 56 | @Resource(name = "v1Service") |
| 53 | 57 | private V1Manager v1Service ; |
| 54 | 58 | |
| ... | ... | @@ -94,6 +98,17 @@ public class PaperController extends BaseController { |
| 94 | 98 | PageData pd = new PageData(); |
| 95 | 99 | pd = this.getPageData(); |
| 96 | 100 | String[] ArrayDATA_IDS = new String[]{pd.getString("PAPER_ID")}; |
| 101 | + if(pd.getString("QINGSONGKAO") != null){ | |
| 102 | + List<PageData> list = paperquestionService.listAll(pd); | |
| 103 | + String[] qids = new String[list.size()]; | |
| 104 | + int i = 0 ; | |
| 105 | + for(PageData ptd : list){ | |
| 106 | + qids[i++] = ptd.getString("QUESTION_ID"); | |
| 107 | + } | |
| 108 | + if(qids.length > 0){ | |
| 109 | + questionService.deleteAll(qids); | |
| 110 | + } | |
| 111 | + } | |
| 97 | 112 | paperquestionService.deleteAllPaper(ArrayDATA_IDS); |
| 98 | 113 | paperService.delete(pd); |
| 99 | 114 | out.write("success"); |
| ... | ... | @@ -178,8 +193,8 @@ public class PaperController extends BaseController { |
| 178 | 193 | question.setDifficulty(qpd.getString("DIFFICULTY")); |
| 179 | 194 | question.setAnalysis(qpd.getString("ANALYSIS")); |
| 180 | 195 | question.setQuestion_from(qpd.getString("QUESTION_FROM")); |
| 181 | - question.setSug_score(qpd.getString("SUG_SCORE")); | |
| 182 | - question.setSug_part_score(qpd.getString("SUG_PART_SCORE")); | |
| 196 | + question.setSug_score(qpd.getString("SCORE")); | |
| 197 | + question.setSug_part_score(qpd.getString("PART_SCORE")); | |
| 183 | 198 | question.setRank(qpd.getString("RANK")); |
| 184 | 199 | question.setNo_name(qpd.getString("NO_NAME")); |
| 185 | 200 | if("-1".equals("" + qpd.getString("P_ID"))){ |
| ... | ... | @@ -201,8 +216,8 @@ public class PaperController extends BaseController { |
| 201 | 216 | qq.setDifficulty(q.getString("DIFFICULTY")); |
| 202 | 217 | qq.setAnalysis(q.getString("ANALYSIS")); |
| 203 | 218 | qq.setQuestion_from(q.getString("QUESTION_FROM")); |
| 204 | - qq.setSug_score(q.getString("SUG_SCORE")); | |
| 205 | - qq.setSug_part_score(q.getString("SUG_PART_SCORE")); | |
| 219 | + qq.setSug_score(q.getString("SCORE")); | |
| 220 | + qq.setSug_part_score(q.getString("PART_SCORE")); | |
| 206 | 221 | qq.setRank(q.getString("RANK")); |
| 207 | 222 | qq.setNo_name(q.getString("NO_NAME")); |
| 208 | 223 | question.getQuestions().add(qq); | ... | ... |
src/com/fh/service/sunvote/student/StudentManager.java
| ... | ... | @@ -55,6 +55,14 @@ public interface StudentManager{ |
| 55 | 55 | */ |
| 56 | 56 | public PageData findById(PageData pd)throws Exception; |
| 57 | 57 | |
| 58 | + /** | |
| 59 | + * | |
| 60 | + * @param pd | |
| 61 | + * @return | |
| 62 | + * @throws Exception | |
| 63 | + */ | |
| 64 | + public PageData findByName(PageData pd)throws Exception; | |
| 65 | + | |
| 58 | 66 | /**批量删除 |
| 59 | 67 | * @param ArrayDATA_IDS |
| 60 | 68 | * @throws Exception | ... | ... |
src/com/fh/service/sunvote/student/impl/StudentService.java
| ... | ... | @@ -90,6 +90,14 @@ public class StudentService implements StudentManager{ |
| 90 | 90 | return (PageData)dao.findForObject("StudentMapper.findById", pd); |
| 91 | 91 | } |
| 92 | 92 | |
| 93 | + /**通过id获取数据 | |
| 94 | + * @param pd | |
| 95 | + * @throws Exception | |
| 96 | + */ | |
| 97 | + public PageData findByName(PageData pd)throws Exception{ | |
| 98 | + return (PageData)dao.findForObject("StudentMapper.findByName", pd); | |
| 99 | + } | |
| 100 | + | |
| 93 | 101 | /**批量删除 |
| 94 | 102 | * @param ArrayDATA_IDS |
| 95 | 103 | * @throws Exception | ... | ... |