|
@@ -70,7 +70,7 @@ public class InspectedController extends BaseExamController {
|
|
|
|
|
|
@Autowired
|
|
@Autowired
|
|
private InspectedService inspectedService;
|
|
private InspectedService inspectedService;
|
|
-
|
|
|
|
|
|
+
|
|
@Autowired
|
|
@Autowired
|
|
private InspectHistoryService inspectHistoryService;
|
|
private InspectHistoryService inspectHistoryService;
|
|
|
|
|
|
@@ -119,25 +119,25 @@ public class InspectedController extends BaseExamController {
|
|
subjectList.forEach(e -> subjectCodeIn.add(e.getCode()));
|
|
subjectList.forEach(e -> subjectCodeIn.add(e.getCode()));
|
|
query.setSubjectCodeIn(StringUtils.join(subjectCodeIn, ","));
|
|
query.setSubjectCodeIn(StringUtils.join(subjectCodeIn, ","));
|
|
}
|
|
}
|
|
- List<ExamStudentVo> list = inspectedService
|
|
|
|
- .findByQuery(query, status, mainNumber, mainStartScore, mainEndScore, selectiveStatus);
|
|
|
|
|
|
+ List<ExamStudentVo> list = inspectedService.findByQuery(query, status, mainNumber, mainStartScore,
|
|
|
|
+ mainEndScore, selectiveStatus);
|
|
for (ExamStudentVo e : list) {
|
|
for (ExamStudentVo e : list) {
|
|
e.setSubjectiveScoreList(e.getSubjectiveScoreList().replace(UN_SELECTIVE_SCORE, "/"));
|
|
e.setSubjectiveScoreList(e.getSubjectiveScoreList().replace(UN_SELECTIVE_SCORE, "/"));
|
|
-// e.setInspectHistoryList(inspectHistoryService.findByStudentIdLimit3(e.getId()));
|
|
|
|
|
|
+ // e.setInspectHistoryList(inspectHistoryService.findByStudentIdLimit3(e.getId()));
|
|
}
|
|
}
|
|
- int maxInspectRound=1;
|
|
|
|
- if(list!=null&&list.size()>0) {
|
|
|
|
- Set<String> subjectCodes=list.stream().map(e->e.getSubjectCode()).collect(Collectors.toSet());
|
|
|
|
- maxInspectRound=subjectService.findMaxInspectRound(examId,subjectCodes);
|
|
|
|
- inspectedService.fillInspectHistoryMap(list,maxInspectRound);
|
|
|
|
|
|
+ int maxInspectRound = 1;
|
|
|
|
+ if (list != null && list.size() > 0) {
|
|
|
|
+ Set<String> subjectCodes = list.stream().map(e -> e.getSubjectCode()).collect(Collectors.toSet());
|
|
|
|
+ maxInspectRound = subjectService.findMaxInspectRound(examId, subjectCodes);
|
|
|
|
+ inspectedService.fillInspectHistoryMap(list, maxInspectRound);
|
|
}
|
|
}
|
|
- Boolean inspected=query.getInspected();
|
|
|
|
|
|
+ Boolean inspected = query.getInspected();
|
|
query.setInspected(null);
|
|
query.setInspected(null);
|
|
- Integer totalCount = inspectedService
|
|
|
|
- .countByQuery(query, status, mainNumber, mainStartScore, mainEndScore, selectiveStatus);
|
|
|
|
|
|
+ Integer totalCount = inspectedService.countByQuery(query, status, mainNumber, mainStartScore, mainEndScore,
|
|
|
|
+ selectiveStatus);
|
|
query.setInspected(false);
|
|
query.setInspected(false);
|
|
- Integer inspectCount = inspectedService
|
|
|
|
- .needInspectCount(query,mainNumber, mainStartScore, mainEndScore, selectiveStatus);
|
|
|
|
|
|
+ Integer inspectCount = inspectedService.needInspectCount(query, mainNumber, mainStartScore, mainEndScore,
|
|
|
|
+ selectiveStatus);
|
|
query.setResult(list);
|
|
query.setResult(list);
|
|
query.setTotalCount(totalCount);
|
|
query.setTotalCount(totalCount);
|
|
model.addAttribute("query", query);
|
|
model.addAttribute("query", query);
|
|
@@ -154,11 +154,11 @@ public class InspectedController extends BaseExamController {
|
|
model.addAttribute("status", status);
|
|
model.addAttribute("status", status);
|
|
model.addAttribute("selectiveStatus", selectiveStatus);
|
|
model.addAttribute("selectiveStatus", selectiveStatus);
|
|
model.addAttribute("exam", exam);
|
|
model.addAttribute("exam", exam);
|
|
- if(StringUtils.isNotBlank(query.getSubjectCode())) {
|
|
|
|
- ExamSubject es=subjectService.find(examId, query.getSubjectCode());
|
|
|
|
- if(inspectedService.inspectFinish(examId, query.getSubjectCode(),es.getInspectRound())) {
|
|
|
|
- model.addAttribute("showNextInspect", true);
|
|
|
|
- }
|
|
|
|
|
|
+ if (StringUtils.isNotBlank(query.getSubjectCode())) {
|
|
|
|
+ ExamSubject es = subjectService.find(examId, query.getSubjectCode());
|
|
|
|
+ if (inspectedService.inspectFinish(examId, query.getSubjectCode(), es.getInspectRound())) {
|
|
|
|
+ model.addAttribute("showNextInspect", true);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
query.setInspected(inspected);
|
|
query.setInspected(inspected);
|
|
return "modules/exam/inspectedList";
|
|
return "modules/exam/inspectedList";
|
|
@@ -167,7 +167,8 @@ public class InspectedController extends BaseExamController {
|
|
@Logging(menu = "开始考生复核", type = LogType.QUERY)
|
|
@Logging(menu = "开始考生复核", type = LogType.QUERY)
|
|
@RequestMapping(value = "/getTask", method = RequestMethod.POST)
|
|
@RequestMapping(value = "/getTask", method = RequestMethod.POST)
|
|
@ResponseBody
|
|
@ResponseBody
|
|
- public Task getTask(HttpServletRequest request,HttpServletResponse response, RedirectAttributes ra, InspectQuery query,
|
|
|
|
|
|
+ public Task getTask(HttpServletRequest request, HttpServletResponse response, RedirectAttributes ra,
|
|
|
|
+ InspectQuery query,
|
|
@RequestParam(required = false, defaultValue = "false") SelectiveStatus selectiveStatus,
|
|
@RequestParam(required = false, defaultValue = "false") SelectiveStatus selectiveStatus,
|
|
@RequestParam(required = false) Integer mainNumber, @RequestParam(required = false) Double mainStartScore,
|
|
@RequestParam(required = false) Integer mainNumber, @RequestParam(required = false) Double mainStartScore,
|
|
@RequestParam(required = false) Double mainEndScore, @RequestParam(required = false) Double questionScore,
|
|
@RequestParam(required = false) Double mainEndScore, @RequestParam(required = false) Double questionScore,
|
|
@@ -177,11 +178,11 @@ public class InspectedController extends BaseExamController {
|
|
Exam exam = examService.findById(examId);
|
|
Exam exam = examService.findById(examId);
|
|
Task task = null;
|
|
Task task = null;
|
|
if (studentId != null) {
|
|
if (studentId != null) {
|
|
- ExamStudent student = studentService.findById(studentId);
|
|
|
|
- if(exam.getInspectUnrepeated()&&inspectHistoryService.existByStudentIdAndUserId(studentId, wu.getId())) {
|
|
|
|
- errMessage("考试已设置为全卷多次复核时不能为同一账号",response);
|
|
|
|
- return null;
|
|
|
|
- }
|
|
|
|
|
|
+ ExamStudent student = studentService.findById(studentId);
|
|
|
|
+ if (exam.getInspectUnrepeated() && inspectHistoryService.existByStudentIdAndUserId(studentId, wu.getId())) {
|
|
|
|
+ errMessage("考试已设置为全卷多次复核时不能为同一账号", response);
|
|
|
|
+ return null;
|
|
|
|
+ }
|
|
releaseStudent(studentId);
|
|
releaseStudent(studentId);
|
|
if (inspectedService.applyStudent(ExamStudentVo.of(student), wu.getId())) {
|
|
if (inspectedService.applyStudent(ExamStudentVo.of(student), wu.getId())) {
|
|
task = taskService.build(student);
|
|
task = taskService.build(student);
|
|
@@ -192,9 +193,9 @@ public class InspectedController extends BaseExamController {
|
|
if (student == null) {
|
|
if (student == null) {
|
|
return null;
|
|
return null;
|
|
}
|
|
}
|
|
- if(exam.getInspectUnrepeated()&&inspectHistoryService.existByStudentIdAndUserId(studentId, wu.getId())) {
|
|
|
|
- errMessage("考试已设置为全卷多次复核时不能为同一账号",response);
|
|
|
|
- return null;
|
|
|
|
|
|
+ if (exam.getInspectUnrepeated() && inspectHistoryService.existByStudentIdAndUserId(studentId, wu.getId())) {
|
|
|
|
+ errMessage("考试已设置为全卷多次复核时不能为同一账号", response);
|
|
|
|
+ return null;
|
|
}
|
|
}
|
|
releaseStudent(student.getId());
|
|
releaseStudent(student.getId());
|
|
if (inspectedService.applyStudent(ExamStudentVo.of(student), wu.getId())) {
|
|
if (inspectedService.applyStudent(ExamStudentVo.of(student), wu.getId())) {
|
|
@@ -215,8 +216,8 @@ public class InspectedController extends BaseExamController {
|
|
query.setInspected(false);
|
|
query.setInspected(false);
|
|
query.setInspectUnrepeated(exam.getInspectUnrepeated());
|
|
query.setInspectUnrepeated(exam.getInspectUnrepeated());
|
|
query.setInspectorId(wu.getId());
|
|
query.setInspectorId(wu.getId());
|
|
- list = inspectedService
|
|
|
|
- .findByQuery(query, SubjectiveStatus.MARKED, mainNumber, mainStartScore, mainEndScore,selectiveStatus);
|
|
|
|
|
|
+ list = inspectedService.findByQuery(query, SubjectiveStatus.MARKED, mainNumber, mainStartScore,
|
|
|
|
+ mainEndScore, selectiveStatus);
|
|
if (list.isEmpty()) {
|
|
if (list.isEmpty()) {
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
@@ -241,7 +242,8 @@ public class InspectedController extends BaseExamController {
|
|
ExamStudent student = studentService.findById(studentId);
|
|
ExamStudent student = studentService.findById(studentId);
|
|
JSONObject obj = new JSONObject();
|
|
JSONObject obj = new JSONObject();
|
|
try {
|
|
try {
|
|
- if (student != null && lockService.trylock(LockType.STUDENT, studentId) && inspectedService.inspect(student, wu.getId())) {
|
|
|
|
|
|
+ if (student != null && lockService.trylock(LockType.STUDENT, studentId)
|
|
|
|
+ && inspectedService.inspect(student, wu.getId())) {
|
|
inspectedService.releaseByStudent(student);
|
|
inspectedService.releaseByStudent(student);
|
|
obj.accumulate("success", true);
|
|
obj.accumulate("success", true);
|
|
} else {
|
|
} else {
|
|
@@ -306,18 +308,18 @@ public class InspectedController extends BaseExamController {
|
|
}
|
|
}
|
|
return obj;
|
|
return obj;
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
@Logging(menu = "再次复核", type = LogType.UPDATE)
|
|
@Logging(menu = "再次复核", type = LogType.UPDATE)
|
|
@RequestMapping(value = "nextround", method = RequestMethod.POST)
|
|
@RequestMapping(value = "nextround", method = RequestMethod.POST)
|
|
@RoleRequire({ Role.SCHOOL_ADMIN, Role.SUBJECT_HEADER, Role.INSPECTOR, Role.COLLEGE_ADMIN })
|
|
@RoleRequire({ Role.SCHOOL_ADMIN, Role.SUBJECT_HEADER, Role.INSPECTOR, Role.COLLEGE_ADMIN })
|
|
- public String nextround(RedirectAttributes ra,HttpServletRequest request, @RequestParam String subjectCode) {
|
|
|
|
- int examId = getSessionExamId(request);
|
|
|
|
- ExamSubject es=subjectService.find(examId, subjectCode);
|
|
|
|
- if(!inspectedService.inspectFinish(examId, subjectCode,es.getInspectRound())) {
|
|
|
|
- ra.addFlashAttribute("errmsg", "该科目第"+es.getInspectRound()+"次复核还未完成");
|
|
|
|
- return "redirect:/admin/exam/inspected/list?subjectCode=" + subjectCode;
|
|
|
|
- }
|
|
|
|
- subjectService.nextInspectRound(examId, subjectCode);
|
|
|
|
|
|
+ public String nextround(RedirectAttributes ra, HttpServletRequest request, @RequestParam String subjectCode) {
|
|
|
|
+ int examId = getSessionExamId(request);
|
|
|
|
+ ExamSubject es = subjectService.find(examId, subjectCode);
|
|
|
|
+ if (!inspectedService.inspectFinish(examId, subjectCode, es.getInspectRound())) {
|
|
|
|
+ ra.addFlashAttribute("errmsg", "该科目第" + es.getInspectRound() + "次复核还未完成");
|
|
|
|
+ return "redirect:/admin/exam/inspected/list?subjectCode=" + subjectCode;
|
|
|
|
+ }
|
|
|
|
+ subjectService.nextInspectRound(examId, subjectCode);
|
|
return "redirect:/admin/exam/inspected/list?subjectCode=" + subjectCode;
|
|
return "redirect:/admin/exam/inspected/list?subjectCode=" + subjectCode;
|
|
}
|
|
}
|
|
|
|
|
|
@@ -334,8 +336,8 @@ public class InspectedController extends BaseExamController {
|
|
obj.accumulate("message", "无法打回");
|
|
obj.accumulate("message", "无法打回");
|
|
return obj;
|
|
return obj;
|
|
}
|
|
}
|
|
- if (inspectedService.hasApplied(student, wu.getId()) && (student.getSubjectiveStatus()
|
|
|
|
- .equals(SubjectiveStatus.MARKED))) {
|
|
|
|
|
|
+ if (inspectedService.hasApplied(student, wu.getId())
|
|
|
|
+ && (student.getSubjectiveStatus().equals(SubjectiveStatus.MARKED))) {
|
|
if (subjectCheck(student.getSubjectCode(), wu) && lockService.trylock(LockType.STUDENT, student.getId())) {
|
|
if (subjectCheck(student.getSubjectCode(), wu) && lockService.trylock(LockType.STUDENT, student.getId())) {
|
|
try {
|
|
try {
|
|
lockService.watch(LockType.EXAM_SUBJECT, student.getExamId(), student.getSubjectCode());
|
|
lockService.watch(LockType.EXAM_SUBJECT, student.getExamId(), student.getSubjectCode());
|
|
@@ -366,8 +368,8 @@ public class InspectedController extends BaseExamController {
|
|
@Logging(menu = "回看全卷复核任务", type = LogType.QUERY)
|
|
@Logging(menu = "回看全卷复核任务", type = LogType.QUERY)
|
|
@RequestMapping(value = "/getHistory", method = RequestMethod.POST)
|
|
@RequestMapping(value = "/getHistory", method = RequestMethod.POST)
|
|
@ResponseBody
|
|
@ResponseBody
|
|
- public Object getHistory(HttpServletRequest request, @RequestParam String subjectCode, @RequestParam int pageNumber,
|
|
|
|
- @RequestParam int pageSize) throws Exception {
|
|
|
|
|
|
+ public Object getHistory(HttpServletRequest request, @RequestParam String subjectCode,
|
|
|
|
+ @RequestParam int pageNumber, @RequestParam int pageSize) throws Exception {
|
|
int examId = getSessionExamId(request);
|
|
int examId = getSessionExamId(request);
|
|
WebUser wu = RequestUtils.getWebUser(request);
|
|
WebUser wu = RequestUtils.getWebUser(request);
|
|
List<Task> list = new ArrayList<>();
|
|
List<Task> list = new ArrayList<>();
|
|
@@ -397,8 +399,8 @@ public class InspectedController extends BaseExamController {
|
|
JSONObject status = new JSONObject();
|
|
JSONObject status = new JSONObject();
|
|
int examId = getSessionExamId(request);
|
|
int examId = getSessionExamId(request);
|
|
query.setExamId(examId);
|
|
query.setExamId(examId);
|
|
- Integer totalCount = inspectedService
|
|
|
|
- .countByQuery(query, SubjectiveStatus.MARKED, mainNumber, mainStartScore, mainEndScore, selectiveStatus);
|
|
|
|
|
|
+ Integer totalCount = inspectedService.countByQuery(query, SubjectiveStatus.MARKED, mainNumber, mainStartScore,
|
|
|
|
+ mainEndScore, selectiveStatus);
|
|
status.accumulate("totalCount", totalCount);
|
|
status.accumulate("totalCount", totalCount);
|
|
status.accumulate("valid", true);
|
|
status.accumulate("valid", true);
|
|
return status;
|
|
return status;
|
|
@@ -415,6 +417,8 @@ public class InspectedController extends BaseExamController {
|
|
setting.accumulate("fileServer", fileService.getFileServer());
|
|
setting.accumulate("fileServer", fileService.getFileServer());
|
|
setting.accumulate("userName", wu.getName());
|
|
setting.accumulate("userName", wu.getName());
|
|
setting.accumulate("splitConfig", getSplitConfig());
|
|
setting.accumulate("splitConfig", getSplitConfig());
|
|
|
|
+ setting.accumulate("inspectScroll", exam.getInspectScrollBottom());
|
|
|
|
+ setting.accumulate("doubleTrack", false);
|
|
|
|
|
|
ExamSubject examSubject = subjectService.find(examId, subjectCode);
|
|
ExamSubject examSubject = subjectService.find(examId, subjectCode);
|
|
JSONObject subject = new JSONObject();
|
|
JSONObject subject = new JSONObject();
|
|
@@ -527,18 +531,17 @@ public class InspectedController extends BaseExamController {
|
|
long totalCount = studentService.countByQuery(sQuery);
|
|
long totalCount = studentService.countByQuery(sQuery);
|
|
vo.setTotalCount(totalCount);
|
|
vo.setTotalCount(totalCount);
|
|
vo.setLeftCount(totalCount - inspectedCount);
|
|
vo.setLeftCount(totalCount - inspectedCount);
|
|
- String percent = totalCount > 0 ?
|
|
|
|
- (new DecimalFormat("####.###").format(inspectedCount * 100.0 / totalCount) + "%") :
|
|
|
|
- "100%";
|
|
|
|
|
|
+ String percent = totalCount > 0 ? (new DecimalFormat("####.###")
|
|
|
|
+ .format(inspectedCount * 100.0 / totalCount) + "%") : "100%";
|
|
vo.setPercent(percent);
|
|
vo.setPercent(percent);
|
|
- if(unFinishSet.contains(vo.getSubject().getCode())) {
|
|
|
|
- vo.setFinishCount(vo.getSubject().getInspectRound()-1);
|
|
|
|
- }else {
|
|
|
|
- if(totalCount==0) {
|
|
|
|
- vo.setFinishCount(vo.getSubject().getInspectRound()-1);
|
|
|
|
- }else {
|
|
|
|
- vo.setFinishCount(vo.getSubject().getInspectRound());
|
|
|
|
- }
|
|
|
|
|
|
+ if (unFinishSet.contains(vo.getSubject().getCode())) {
|
|
|
|
+ vo.setFinishCount(vo.getSubject().getInspectRound() - 1);
|
|
|
|
+ } else {
|
|
|
|
+ if (totalCount == 0) {
|
|
|
|
+ vo.setFinishCount(vo.getSubject().getInspectRound() - 1);
|
|
|
|
+ } else {
|
|
|
|
+ vo.setFinishCount(vo.getSubject().getInspectRound());
|
|
|
|
+ }
|
|
}
|
|
}
|
|
list.add(vo);
|
|
list.add(vo);
|
|
}
|
|
}
|
|
@@ -562,15 +565,15 @@ public class InspectedController extends BaseExamController {
|
|
model.addAttribute("subjectList", getExamSubject(examId, wu));
|
|
model.addAttribute("subjectList", getExamSubject(examId, wu));
|
|
return "modules/exam/inspectedInfo";
|
|
return "modules/exam/inspectedInfo";
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
@RequestMapping(value = "list/export", method = RequestMethod.POST)
|
|
@RequestMapping(value = "list/export", method = RequestMethod.POST)
|
|
public String exportListFile(HttpServletRequest request, HttpServletResponse response,
|
|
public String exportListFile(HttpServletRequest request, HttpServletResponse response,
|
|
- RedirectAttributes redirectAttributes,InspectQuery query,
|
|
|
|
|
|
+ RedirectAttributes redirectAttributes, InspectQuery query,
|
|
@RequestParam(required = false) SubjectiveStatus status,
|
|
@RequestParam(required = false) SubjectiveStatus status,
|
|
@RequestParam(required = false) SelectiveStatus selectiveStatus,
|
|
@RequestParam(required = false) SelectiveStatus selectiveStatus,
|
|
@RequestParam(required = false) Integer mainNumber, @RequestParam(required = false) Double mainStartScore,
|
|
@RequestParam(required = false) Integer mainNumber, @RequestParam(required = false) Double mainStartScore,
|
|
@RequestParam(required = false) Double mainEndScore) {
|
|
@RequestParam(required = false) Double mainEndScore) {
|
|
- int examId = getSessionExamId(request);
|
|
|
|
|
|
+ int examId = getSessionExamId(request);
|
|
Exam exam = examService.findById(examId);
|
|
Exam exam = examService.findById(examId);
|
|
if (ExamType.MULTI_MEDIA.equals(exam.getType())) {
|
|
if (ExamType.MULTI_MEDIA.equals(exam.getType())) {
|
|
return "modules/exam/permission";
|
|
return "modules/exam/permission";
|
|
@@ -584,54 +587,54 @@ public class InspectedController extends BaseExamController {
|
|
query.setSubjectCodeIn(StringUtils.join(subjectCodeIn, ","));
|
|
query.setSubjectCodeIn(StringUtils.join(subjectCodeIn, ","));
|
|
}
|
|
}
|
|
query.setExport(true);
|
|
query.setExport(true);
|
|
- List<ExamStudentVo> list = inspectedService
|
|
|
|
- .findByQuery(query, status, mainNumber, mainStartScore, mainEndScore, selectiveStatus);
|
|
|
|
|
|
+ List<ExamStudentVo> list = inspectedService.findByQuery(query, status, mainNumber, mainStartScore,
|
|
|
|
+ mainEndScore, selectiveStatus);
|
|
for (ExamStudentVo e : list) {
|
|
for (ExamStudentVo e : list) {
|
|
e.setSubjectiveScoreList(e.getSubjectiveScoreList().replace(UN_SELECTIVE_SCORE, "/"));
|
|
e.setSubjectiveScoreList(e.getSubjectiveScoreList().replace(UN_SELECTIVE_SCORE, "/"));
|
|
}
|
|
}
|
|
- int maxInspectRound=1;
|
|
|
|
- if(list!=null&&list.size()>0) {
|
|
|
|
- Set<String> subjectCodes=list.stream().map(e->e.getSubjectCode()).collect(Collectors.toSet());
|
|
|
|
- maxInspectRound=subjectService.findMaxInspectRound(examId,subjectCodes);
|
|
|
|
- inspectedService.fillInspectHistoryMap(list,maxInspectRound);
|
|
|
|
|
|
+ int maxInspectRound = 1;
|
|
|
|
+ if (list != null && list.size() > 0) {
|
|
|
|
+ Set<String> subjectCodes = list.stream().map(e -> e.getSubjectCode()).collect(Collectors.toSet());
|
|
|
|
+ maxInspectRound = subjectService.findMaxInspectRound(examId, subjectCodes);
|
|
|
|
+ inspectedService.fillInspectHistoryMap(list, maxInspectRound);
|
|
}
|
|
}
|
|
try {
|
|
try {
|
|
- String fileName = "复核列表.xlsx";
|
|
|
|
- List<String> headerList = getInspectHeader(maxInspectRound);
|
|
|
|
- ExportInspectExcel excel = new ExportInspectExcel("复核列表", headerList, ExamStudentVo.class);
|
|
|
|
|
|
+ String fileName = "复核列表.xlsx";
|
|
|
|
+ List<String> headerList = getInspectHeader(maxInspectRound);
|
|
|
|
+ ExportInspectExcel excel = new ExportInspectExcel("复核列表", headerList, ExamStudentVo.class);
|
|
excel.setDataList(list);
|
|
excel.setDataList(list);
|
|
excel.write(response, fileName).dispose();
|
|
excel.write(response, fileName).dispose();
|
|
return null;
|
|
return null;
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
- addErrMessage(redirectAttributes,e, "导出数据失败");
|
|
|
|
|
|
+ addErrMessage(redirectAttributes, e, "导出数据失败");
|
|
}
|
|
}
|
|
return "redirect:/admin/exam/inspected/list";
|
|
return "redirect:/admin/exam/inspected/list";
|
|
}
|
|
}
|
|
|
|
+
|
|
private List<String> getInspectHeader(int maxInspectRound) {
|
|
private List<String> getInspectHeader(int maxInspectRound) {
|
|
- List<String> ret=new ArrayList<>();
|
|
|
|
- for(int i=1;i<=maxInspectRound;i++) {
|
|
|
|
- ret.add("复核人"+i);
|
|
|
|
- ret.add("复核时间"+i);
|
|
|
|
- }
|
|
|
|
- return ret;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- @RequestMapping(value = "work/export", method = RequestMethod.POST)
|
|
|
|
|
|
+ List<String> ret = new ArrayList<>();
|
|
|
|
+ for (int i = 1; i <= maxInspectRound; i++) {
|
|
|
|
+ ret.add("复核人" + i);
|
|
|
|
+ ret.add("复核时间" + i);
|
|
|
|
+ }
|
|
|
|
+ return ret;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @RequestMapping(value = "work/export", method = RequestMethod.POST)
|
|
public String exportWorkFile(HttpServletRequest request, HttpServletResponse response,
|
|
public String exportWorkFile(HttpServletRequest request, HttpServletResponse response,
|
|
RedirectAttributes redirectAttributes) {
|
|
RedirectAttributes redirectAttributes) {
|
|
- Integer examId = getSessionExamId(request);
|
|
|
|
- Exam exam = examService.findById(examId);
|
|
|
|
- if (ExamType.MULTI_MEDIA.equals(exam.getType())) {
|
|
|
|
- return "modules/exam/permission";
|
|
|
|
- }
|
|
|
|
|
|
+ Integer examId = getSessionExamId(request);
|
|
|
|
+ Exam exam = examService.findById(examId);
|
|
|
|
+ if (ExamType.MULTI_MEDIA.equals(exam.getType())) {
|
|
|
|
+ return "modules/exam/permission";
|
|
|
|
+ }
|
|
try {
|
|
try {
|
|
- List<InspectWorkVo> list = inspectHistoryService.findInspectWork(examId);
|
|
|
|
|
|
+ List<InspectWorkVo> list = inspectHistoryService.findInspectWork(examId);
|
|
String fileName = "复核工作量.xlsx";
|
|
String fileName = "复核工作量.xlsx";
|
|
- new ExportExcel("复核工作量", InspectWorkVo.class).setDataList(list).write(response, fileName)
|
|
|
|
- .dispose();
|
|
|
|
|
|
+ new ExportExcel("复核工作量", InspectWorkVo.class).setDataList(list).write(response, fileName).dispose();
|
|
return null;
|
|
return null;
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
- addErrMessage(redirectAttributes,e, "导出数据失败");
|
|
|
|
|
|
+ addErrMessage(redirectAttributes, e, "导出数据失败");
|
|
}
|
|
}
|
|
return "redirect:/admin/exam/inspected/list";
|
|
return "redirect:/admin/exam/inspected/list";
|
|
}
|
|
}
|