|
@@ -1,5 +1,6 @@
|
|
package cn.com.qmth.stmms.admin.exam;
|
|
package cn.com.qmth.stmms.admin.exam;
|
|
|
|
|
|
|
|
+import cn.com.qmth.stmms.admin.utils.PageUtil;
|
|
import cn.com.qmth.stmms.admin.vo.ScanInfoVO;
|
|
import cn.com.qmth.stmms.admin.vo.ScanInfoVO;
|
|
import cn.com.qmth.stmms.biz.exam.model.ExamPackage;
|
|
import cn.com.qmth.stmms.biz.exam.model.ExamPackage;
|
|
import cn.com.qmth.stmms.biz.exam.model.ExamSubject;
|
|
import cn.com.qmth.stmms.biz.exam.model.ExamSubject;
|
|
@@ -159,7 +160,7 @@ public class ScanController extends BaseExamController {
|
|
}
|
|
}
|
|
|
|
|
|
@Logging(menu = "扫描进度导出", type = LogType.EXPORT)
|
|
@Logging(menu = "扫描进度导出", type = LogType.EXPORT)
|
|
- @RequestMapping(value = "/export", method = RequestMethod.POST)
|
|
|
|
|
|
+ @RequestMapping(value = "/subject/export", method = RequestMethod.POST)
|
|
public String export(ExamSubjectSearchQuery query, HttpServletRequest request, HttpServletResponse response,
|
|
public String export(ExamSubjectSearchQuery query, HttpServletRequest request, HttpServletResponse response,
|
|
RedirectAttributes redirectAttributes) {
|
|
RedirectAttributes redirectAttributes) {
|
|
int examId = getSessionExamId(request);
|
|
int examId = getSessionExamId(request);
|
|
@@ -190,4 +191,45 @@ public class ScanController extends BaseExamController {
|
|
return "redirect:/admin/exam/scan/subject";
|
|
return "redirect:/admin/exam/scan/subject";
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ @Logging(menu = "扫描进度-按考点查询", type = LogType.QUERY)
|
|
|
|
+ @RequestMapping("/examSite")
|
|
|
|
+ public ModelAndView examSite(HttpServletRequest request, ExamStudentSearchQuery query) {
|
|
|
|
+ int examId = getSessionExamId(request);
|
|
|
|
+ List<ScanInfoVO> list = new LinkedList<ScanInfoVO>();
|
|
|
|
+ if (StringUtils.isBlank(query.getExamSite())) {
|
|
|
|
+ List<String> result = studentService.findDistinctExamSite(examId);
|
|
|
|
+ List<?> examSiteList = PageUtil.startPage(result, query.getPageNumber(), query.getPageSize());
|
|
|
|
+ for (Object e : examSiteList) {
|
|
|
|
+ ScanInfoVO vo = new ScanInfoVO();
|
|
|
|
+ String examSite = (String) e;
|
|
|
|
+ vo.setName(examSite);
|
|
|
|
+ vo.setTotalCount(studentService.countByExamIdAndExamSite(examId, examSite));
|
|
|
|
+ vo.setScanCount(studentService.countByExamIdAndExamSite(examId, examSite, true));
|
|
|
|
+ vo.setScanSheetCount(studentService.countSheetCountByExamIdAndExamSite(examId, examSite) / 2);
|
|
|
|
+ list.add(vo);
|
|
|
|
+ }
|
|
|
|
+ query.setTotalCount(result.size());
|
|
|
|
+ query.setTotalPage(PageUtil.pageCount(result, query.getPageNumber(), query.getPageSize()));
|
|
|
|
+ query.setCurrentCount(examSiteList.size());
|
|
|
|
+ } else {
|
|
|
|
+ ScanInfoVO vo = new ScanInfoVO();
|
|
|
|
+ vo.setName(query.getExamSite());
|
|
|
|
+ vo.setTotalCount(studentService.countByExamIdAndExamSite(examId, query.getCampusName()));
|
|
|
|
+ vo.setScanCount(studentService.countByExamIdAndExamSite(examId, query.getCampusName(), true));
|
|
|
|
+ vo.setScanSheetCount(studentService.countSheetCountByExamIdAndExamSite(examId, query.getExamSite()) / 2);
|
|
|
|
+ list.add(vo);
|
|
|
|
+
|
|
|
|
+ query.setTotalCount(1);
|
|
|
|
+ query.setTotalPage(1);
|
|
|
|
+ query.setCurrentCount(1);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ ModelAndView view = new ModelAndView("modules/exam/scanInfo");
|
|
|
|
+ view.addObject("examSiteList", studentService.findDistinctExamSite(examId));
|
|
|
|
+ view.addObject("infoList", list);
|
|
|
|
+ view.addObject("query", query);
|
|
|
|
+ view.addObject("type", "examSite");
|
|
|
|
+ return view;
|
|
|
|
+ }
|
|
}
|
|
}
|