Commit f143f5583809d0a14a39a5fbb0c4aac489de61d1

Authored by 孙向锦
1 parent 0deda53b

修改管理员登录白屏问题

教师首页登录,暂时不显示首页内容
WebRoot/WEB-INF/jsp/sunvote/teacher/paper_view.jsp
... ... @@ -55,9 +55,12 @@
55 55 <input type="button" value="保存" class="btn btn-primary btn-lg topic save" />
56 56 </div>
57 57 </div>
  58 + <script>
  59 + var subjectId = '${pd.subject_id}';
  60 + </script>
58 61 <script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
59 62 <script src="../static/js/echars.js"></script>
60   - <script src="../static/js/paper_view.js"></script>
  63 + <script src="../static/js/paper_view.js?a=2"></script>
61 64  
62 65 </html>
63 66  
... ...
WebRoot/WEB-INF/jsp/sunvote/teacher/paper_view1.jsp
... ... @@ -143,7 +143,7 @@
143 143 <script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
144 144 <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
145 145 <script src="../static/js/echars.js"></script>
146   - <script src="../static/js/paper_view1.js?a=2"></script>
  146 + <script src="../static/js/paper_view1.js?a=1"></script>
147 147  
148 148 </html>
149 149  
... ...
WebRoot/WEB-INF/jsp/sunvote/teacher/set_question.jsp
... ... @@ -97,6 +97,9 @@
97 97 </div><!-- /.modal-content -->
98 98 </div><!-- /.modal-dialog -->
99 99 </div><!-- /.modal -->
  100 + <script>
  101 + //var subject_id = '${subject_id}' ;
  102 + </script>
100 103 <script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
101 104 <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
102 105 <script src="../static/js/set_question.js?a=1"></script>
... ...
WebRoot/WEB-INF/jsp/sunvote/teacher/teacher_main.jsp
... ... @@ -118,7 +118,7 @@
118 118 </div>
119 119 </div>
120 120 <div class="content_r">
121   - <iframe name="mainFrame" id="mainFrame" frameborder="0" src="../teacher/index.do?" width="100%" height="100%"></iframe>
  121 + <iframe name="mainFrame" id="mainFrame" frameborder="0" width="100%" height="100%"></iframe>
122 122  
123 123 </div>
124 124  
... ...
WebRoot/WEB-INF/jsp/sunvote/teacher/test_list.jsp
... ... @@ -49,7 +49,7 @@
49 49 <th>测验名称</th>
50 50 <th>班级</th>
51 51 <th>创建时间</th>
52   - <th>查看</th>
  52 + <th>操作</th>
53 53 </tr>
54 54 </thead>
55 55 </table>
... ... @@ -82,5 +82,5 @@
82 82 <script type="text/javascript">
83 83 var user_id= "${pd.userId}";
84 84 </script>
85   - <script src="../static/js/test_list.js?a=2"></script>
  85 + <script src="../static/js/test_list.js"></script>
86 86 </html>
87 87 \ No newline at end of file
... ...
WebRoot/WEB-INF/jsp/system/index/left.jsp
... ... @@ -125,5 +125,7 @@
125 125 <!-- /section:basics/sidebar.layout.minimize -->
126 126 <script type="text/javascript">
127 127 try{ace.settings.check('sidebar' , 'collapsed')}catch(e){}
  128 +
  129 + console.log('${menuList}');
128 130 </script>
129 131 </div>
130 132 \ No newline at end of file
... ...
WebRoot/static/js/paper_view.js
... ... @@ -18,6 +18,8 @@ function getQueryString(name) {
18 18 var classId=getQueryString("classId");
19 19 var userid=getQueryString("userid");
20 20  
  21 + var gradleId = getQueryString("gradleid");
  22 +
21 23 var _html="";
22 24 var question_id_arry="";
23 25 $(document).ready(function(){
... ... @@ -155,8 +157,8 @@ function getQueryString(name) {
155 157 title: $("#paper_title").html(),
156 158 exam_time: $("#time").html(),
157 159 paper_type: "101",
158   - subject_id: "20",
159   - grade_id: "",
  160 + subject_id: subjectId,
  161 + grade_id: gradleId,
160 162 class_id: classId,
161 163 user_id: userid,
162 164 score: "100",
... ...
WebRoot/static/js/test_list.js
... ... @@ -77,7 +77,8 @@ function getList(start_date, end_date, class_id) { // 获取测验列表
77 77 + data.data[i].createDate
78 78 + '</td><td><a onclick="window.top.loading.show();jump($(this));" data-id="'
79 79 + data.data[i].testpaperId
80   - + '" >查看</a></td></tr>'
  80 + + '" >查看详情</a> &nbsp;&nbsp;&nbsp;&nbsp; <a onclick="window.top.loading.show();ansync($(this)); " data-id="'
  81 + + data.data[i].testpaperId + '" >班级分析</a></td></tr>'
81 82 }
82 83 $("#tab_body").html(tab_html);
83 84 },
... ... @@ -92,6 +93,13 @@ function jump(obj) { // 预览测验详情
92 93 var id = obj.attr("data-id");
93 94 location.href = "paper_view1.do?testpaperId=" + id;
94 95 }
  96 +
  97 +function ansync(obj){
  98 + // 班级分析
  99 + var id = obj.attr("data-id");
  100 + location.href = "classansync.do?testpaperId=" + id;
  101 +}
  102 +
95 103 function getSubjectName(id) { // 获取科目中文名
96 104 var subjectName = "";
97 105 $.ajax({
... ...
resources/mybatis1/api/V1Mapper.xml
... ... @@ -100,7 +100,7 @@
100 100 FROM
101 101 sv_paperquestion
102 102 LEFT JOIN sv_question ON sv_paperquestion.QUESTION_ID = sv_question.QUESTION_ID
103   - where 1 = 1 and (sv_question.P_ID = '-1' or sv_question.P_ID = '0')
  103 + where 1 = 1 and (sv_question.P_ID = '-1' or sv_question.P_ID = '0' or sv_question.P_ID IS NULL)
104 104 <if test="PAPER_ID != null and PAPER_ID != ''">
105 105 and sv_paperquestion.PAPER_ID = #{PAPER_ID}
106 106 </if>
... ...
resources/mybatis1/sunvote/TeacherMapper.xml
... ... @@ -117,7 +117,7 @@
117 117 and ACCOUT = #{ACCOUT} and PASSWORD=#{PASSWORD}
118 118 </if>
119 119 <if test="KEYPAD_ID !=null">
120   - and KEYPAD_ID = #{KEYPAD_ID}
  120 + and KEYPAD_ID = #{KEYPAD_ID}
121 121 </if>
122 122 limit 1
123 123 </select>
... ... @@ -159,6 +159,91 @@
159 159 </if>
160 160 </select>
161 161  
  162 + <!-- 根据难度统计班级掌握情况 -->
  163 + <select id="diffcultClassReport" parameterType="pd" resultType="pd">
  164 + SELECT
  165 + sv_question.DIFFICULTY,
  166 + sv_testpaperinfo.`RIGHT`,
  167 + count(sv_testpaperinfo.`RIGHT`) AS ANSWER_NUM
  168 + FROM
  169 + sv_testpaperinfo
  170 + LEFT JOIN sv_question ON sv_testpaperinfo.QUESTION_ID = sv_question.QUESTION_ID
  171 + WHERE
  172 + sv_testpaperinfo.TEST_ID = #{TEST_ID}
  173 + GROUP BY
  174 + sv_question.DIFFICULTY,
  175 + sv_testpaperinfo.`RIGHT`
  176 + ORDER BY
  177 + sv_question.DIFFICULTY,
  178 + sv_testpaperinfo.`RIGHT`
  179 + </select>
  180 +
  181 + <!-- 根据难度统计学生掌握掌握情况 -->
  182 + <select id="diffcultStudentReport" parameterType="pd" resultType="pd">
  183 + SELECT
  184 + sv_student.`NAME`,
  185 + sv_testpaperinfo.STUDENT_ID,
  186 + sv_question.DIFFICULTY,
  187 + sv_testpaperinfo.`RIGHT`,
  188 + count(sv_testpaperinfo.`RIGHT`) AS ANSWER_NUM
  189 + FROM
  190 + sv_testpaperinfo
  191 + LEFT JOIN sv_student ON sv_testpaperinfo.STUDENT_ID = sv_student.ID
  192 + LEFT JOIN sv_question ON sv_testpaperinfo.QUESTION_ID = sv_question.QUESTION_ID
  193 + WHERE
  194 + sv_testpaperinfo.TEST_ID = #{TEST_ID}
  195 + GROUP BY
  196 + sv_testpaperinfo.STUDENT_ID,
  197 + sv_question.DIFFICULTY,
  198 + sv_testpaperinfo.`RIGHT`
  199 + ORDER BY
  200 + sv_student.NUMBER,
  201 + sv_question.DIFFICULTY,
  202 + sv_testpaperinfo.`RIGHT`
  203 + </select>
  204 +
  205 + <!-- 根据难度统计学生掌握掌握情况 -->
  206 + <select id="knowadgeClassReport" parameterType="pd" resultType="pd">
  207 + SELECT
  208 + sv_knowledge.`NAME`,
  209 + sv_testpaperinfo.`RIGHT`,
  210 + count(sv_testpaperinfo.`RIGHT`) AS ANSWER_NUM
  211 + FROM
  212 + sv_testpaperinfo
  213 + LEFT JOIN sv_knowledge ON sv_testpaperinfo.KNOWLEDGE_ID = sv_knowledge.KNOWLEDGE_ID
  214 + WHERE
  215 + sv_testpaperinfo.TEST_ID = #{TEST_ID}
  216 + GROUP BY
  217 + sv_knowledge.`NAME`,
  218 + sv_testpaperinfo.`RIGHT`
  219 + ORDER BY
  220 + sv_knowledge.KNOWLEDGE_ID,
  221 + sv_testpaperinfo.`RIGHT`
  222 + </select>
  223 +
  224 + <!-- 根据难度统计学生掌握掌握情况 -->
  225 + <select id="knowadgeStudentReport" parameterType="pd" resultType="pd">
  226 + SELECT
  227 + sv_student.`NAME` as STUDENT_NAME,
  228 + sv_testpaperinfo.STUDENT_ID,
  229 + sv_knowledge.`NAME` as KNOWLEDGE_NAME,
  230 + sv_knowledge.KNOWLEDGE_ID,
  231 + sv_testpaperinfo.`RIGHT`,
  232 + count(sv_testpaperinfo.`RIGHT`) AS ANSWER_NUM
  233 + FROM
  234 + sv_testpaperinfo
  235 + LEFT JOIN sv_knowledge ON sv_testpaperinfo.KNOWLEDGE_ID = sv_knowledge.KNOWLEDGE_ID
  236 + LEFT JOIN sv_student ON sv_testpaperinfo.STUDENT_ID = sv_student.ID
  237 + WHERE
  238 + sv_testpaperinfo.TEST_ID = #{TEST_ID}
  239 + GROUP BY
  240 + sv_testpaperinfo.STUDENT_ID,
  241 + sv_knowledge.`NAME`,
  242 + sv_testpaperinfo.`RIGHT`
  243 + ORDER BY
  244 + sv_student.NUMBER,sv_knowledge.KNOWLEDGE_ID,sv_testpaperinfo.`RIGHT`
  245 + </select>
  246 +
162 247 <!-- 批量删除 -->
163 248 <delete id="deleteAll" parameterType="String">
164 249 delete from
... ...
src/com/fh/controller/sunvote/teacher/TeacherController.java
... ... @@ -204,11 +204,24 @@ public class TeacherController extends BaseController {
204 204 PageData pd = new PageData();
205 205 pd = this.getPageData();
206 206 pd.put("userId", userId);
  207 + pd.put("subject_id", getSubjectID(userId));
207 208 mv.setViewName("sunvote/teacher/paper_view");
208 209 mv.addObject("pd", pd);
209 210 return mv;
210 211 }
211 212  
  213 + private String getSubjectID(String userId) {
  214 + PageData pt = new PageData();
  215 + pt.put("TEACHER_ID", userId);
  216 + try {
  217 + List<PageData> subjectList = v1Service.getTeacherSubjectInfo(pt);
  218 + if (subjectList != null && subjectList.size() > 0) {
  219 + return subjectList.get(0).getString("SUBJECT_ID");
  220 + }
  221 + }catch(Exception ex){}
  222 + return null;
  223 + }
  224 +
212 225 /**
213 226 * 列表
214 227 *
... ... @@ -246,6 +259,63 @@ public class TeacherController extends BaseController {
246 259 mv.addObject("pd", pd);
247 260 return mv;
248 261 }
  262 +
  263 + /**
  264 + * 列表
  265 + *
  266 + * @param page
  267 + * @throws Exception
  268 + */
  269 + @RequestMapping(value = "/classansync")
  270 + public ModelAndView classansync(Page page) throws Exception {
  271 + logBefore(logger, Jurisdiction.getUsername() + "列表Paper");
  272 + String userId = this.getUserID();
  273 + ModelAndView mv = this.getModelAndView();
  274 + PageData pd = new PageData();
  275 + pd = this.getPageData();
  276 + pd.put("userId", userId);
  277 + if(pd.get("TEST_ID") == null){
  278 + pd.put("TEST_ID", pd.get("TESTPAPERID"));
  279 + }
  280 + List<PageData> diffcultClassList = teacherService.diffcultClassReport(pd);
  281 + List<PageData> diffcultClass = new ArrayList<PageData>();
  282 + for(int i = 0 ; i < diffcultClassList.size() ; ){
  283 + PageData tpd0 = diffcultClassList.get(i);
  284 + PageData tpd1 = new PageData();
  285 + PageData data = new PageData();
  286 + if(i + 1 < diffcultClassList.size()){
  287 + tpd1 = diffcultClassList.get(i+1);
  288 + }
  289 + if(tpd0.get("DIFFICULTY").equals(tpd1.get("DIFFICULTY"))){
  290 +
  291 + i= i+2 ;
  292 + }else{
  293 + i ++ ;
  294 + }
  295 + }
  296 +
  297 +
  298 + mv.setViewName("sunvote/teacher/paper_view1");
  299 + mv.addObject("pd", pd);
  300 + return mv;
  301 + }
  302 +
  303 +
  304 + private String getPensent(PageData p1 , PageData p2){
  305 + double pencent = 0.0;
  306 + if(p2 != null){
  307 + String p1AnswerNum = p1.getString("ANSWER_NUM");
  308 + String p2AnswerNum = p2.getString("ANSWER_NUM");
  309 + double d1 = Double.parseDouble(p1AnswerNum);
  310 + double d2 = Double.parseDouble(p2AnswerNum);
  311 + pencent = d2 / (d1 + d2) ;
  312 + }else{
  313 + if("1".equals(p1.get("RIGHT"))){
  314 + pencent = 1.0 ;
  315 + }
  316 + }
  317 + return String.format("%.4f", pencent);
  318 + }
249 319  
250 320 /**
251 321 * 列表
... ... @@ -385,9 +455,6 @@ public class TeacherController extends BaseController {
385 455 @ResponseBody
386 456 public Object deleteAll() throws Exception {
387 457 logBefore(logger, Jurisdiction.getUsername() + "批量删除Teacher");
388   - if (!Jurisdiction.buttonJurisdiction(menuUrl, "del")) {
389   - return null;
390   - } // 校验权限
391 458 PageData pd = new PageData();
392 459 Map<String, Object> map = new HashMap<String, Object>();
393 460 pd = this.getPageData();
... ... @@ -414,9 +481,6 @@ public class TeacherController extends BaseController {
414 481 @RequestMapping(value = "/excel")
415 482 public ModelAndView exportExcel() throws Exception {
416 483 logBefore(logger, Jurisdiction.getUsername() + "导出Teacher到excel");
417   - if (!Jurisdiction.buttonJurisdiction(menuUrl, "cha")) {
418   - return null;
419   - }
420 484 ModelAndView mv = new ModelAndView();
421 485 PageData pd = new PageData();
422 486 pd = this.getPageData();
... ... @@ -511,5 +575,7 @@ public class TeacherController extends BaseController {
511 575  
512 576 return res.toJson();
513 577 }
  578 +
  579 +
514 580  
515 581 }
... ...
src/com/fh/controller/system/login/LoginController.java
... ... @@ -226,15 +226,15 @@ public class LoginController extends BaseController {
226 226 try {
227 227 Session session = Jurisdiction.getSession();
228 228  
229   - User user = (User) session.getAttribute(Const.SESSION_USER); // 读取session中的用户信息(单独用户信息)
  229 + User user = (User)session.getAttribute(Const.SESSION_USER); //读取session中的用户信息(单独用户信息)
230 230 if (user != null) {
231   - User userr = (User) session.getAttribute(Const.SESSION_USERROL); // 读取session中的用户信息(含角色信息)
232   -// if (null == userr) {
233   -// userr = userService.getUserAndRoleById(user.getUSER_ID()); // 通过用户ID读取用户信息和角色信息
234   -// session.setAttribute(Const.SESSION_USERROL, user); // 存入session
235   -// } else {
236   -// user = userr;
237   -// }
  231 + User userr = (User)session.getAttribute(Const.SESSION_USERROL); //读取session中的用户信息(含角色信息)
  232 + if(null == userr){
  233 + user = userService.getUserAndRoleById(user.getUSER_ID()); //通过用户ID读取用户信息和角色信息
  234 + session.setAttribute(Const.SESSION_USERROL, user); //存入session
  235 + }else{
  236 + user = userr;
  237 + }
238 238 String USERNAME = user.getUSERNAME();
239 239 if ("teacher".equals(changeMenu)) {
240 240 PageData tpd = new PageData();
... ... @@ -242,7 +242,7 @@ public class LoginController extends BaseController {
242 242 List<PageData> teacherInfos = v1Service.getTeacherInfo(tpd);
243 243 pd.put("TEACHER", teacherInfos);
244 244 if (teacherInfos != null && teacherInfos.size() > 0) {
245   - PageData sData = teacherInfos.get(0);
  245 + PageData sData = teacherInfos.get(0);
246 246 session.setAttribute(USERNAME + Const.SCHOOL_ID,
247 247 sData.get("SCHOOL_ID"));
248 248 session.setAttribute(USERNAME + Const.SCHOOL_NAME,
... ...
src/com/fh/service/sunvote/teacher/TeacherManager.java
... ... @@ -42,6 +42,34 @@ public interface TeacherManager{
42 42 */
43 43 public List<PageData> listAll(PageData pd)throws Exception;
44 44  
  45 + /**
  46 + * knowadgeClassReport
  47 + * @param pd
  48 + * @throws Exception
  49 + */
  50 + public List<PageData> diffcultClassReport(PageData pd)throws Exception;
  51 +
  52 + /**
  53 + * diffcultStudentReport
  54 + * @param pd
  55 + * @throws Exception
  56 + */
  57 + public List<PageData> diffcultStudentReport(PageData pd)throws Exception;
  58 +
  59 + /**
  60 + * knowadgeClassReport
  61 + * @param pd
  62 + * @throws Exception
  63 + */
  64 + public List<PageData> knowadgeClassReport(PageData pd)throws Exception;
  65 +
  66 + /**
  67 + * 根据难度统计学生掌握掌握情况
  68 + * @param pd
  69 + * @throws Exception
  70 + */
  71 + public List<PageData> knowadgeStudentReport(PageData pd)throws Exception;
  72 +
45 73 /**通过id获取数据
46 74 * @param pd
47 75 * @throws Exception
... ...
src/com/fh/service/sunvote/teacher/impl/TeacherService.java
... ... @@ -88,6 +88,26 @@ public class TeacherService implements TeacherManager{
88 88 public void deleteAll(String[] ArrayDATA_IDS)throws Exception{
89 89 dao.delete("TeacherMapper.deleteAll", ArrayDATA_IDS);
90 90 }
  91 +
  92 + @Override
  93 + public List<PageData> diffcultClassReport(PageData pd) throws Exception {
  94 + return (List<PageData>)dao.findForList("TeacherMapper.diffcultClassReport", pd);
  95 + }
  96 +
  97 + @Override
  98 + public List<PageData> diffcultStudentReport(PageData pd) throws Exception {
  99 + return (List<PageData>)dao.findForList("TeacherMapper.diffcultStudentReport", pd);
  100 + }
  101 +
  102 + @Override
  103 + public List<PageData> knowadgeClassReport(PageData pd) throws Exception {
  104 + return (List<PageData>)dao.findForList("TeacherMapper.knowadgeClassReport", pd);
  105 + }
  106 +
  107 + @Override
  108 + public List<PageData> knowadgeStudentReport(PageData pd) throws Exception {
  109 + return (List<PageData>)dao.findForList("TeacherMapper.knowadgeStudentReport", pd);
  110 + }
91 111  
92 112 }
93 113  
... ...