|
@@ -16,6 +16,7 @@ import net.sf.json.JSONArray;
|
|
|
import net.sf.json.JSONObject;
|
|
|
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
+import org.apache.poi.ss.formula.functions.T;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Qualifier;
|
|
|
import org.springframework.core.task.AsyncTaskExecutor;
|
|
@@ -137,7 +138,7 @@ public class PaperController extends BaseExamController {
|
|
|
@Logging(menu = "科目详情", type = LogType.QUERY)
|
|
|
@RequestMapping("/detail")
|
|
|
public String detail(Model model, HttpServletRequest request, @RequestParam String subjectCode,
|
|
|
- @RequestParam(required = false) Boolean objective) {
|
|
|
+ @RequestParam(required = false) Boolean objective, ExamSubjectSearchQuery query) {
|
|
|
int examId = getSessionExamId(request);
|
|
|
ExamSubject subject = subjectService.find(examId, subjectCode);
|
|
|
if (subject != null) {
|
|
@@ -155,6 +156,7 @@ public class PaperController extends BaseExamController {
|
|
|
model.addAttribute("questionList", list);
|
|
|
model.addAttribute("subject", subject);
|
|
|
model.addAttribute("objective", objective);
|
|
|
+ model.addAttribute("query", query);
|
|
|
return "modules/exam/paperDetail";
|
|
|
} else {
|
|
|
return "redirect:/admin/exam/paper";
|
|
@@ -426,26 +428,33 @@ public class PaperController extends BaseExamController {
|
|
|
|
|
|
@RequestMapping(value = "/question-edit/{questionId}", method = RequestMethod.GET)
|
|
|
@RoleRequire(Role.SCHOOL_ADMIN)
|
|
|
- public String edit(Model model, @PathVariable Integer questionId) {
|
|
|
+ public String edit(Model model, @PathVariable Integer questionId, ExamSubjectSearchQuery query,
|
|
|
+ @RequestParam(required = false) Boolean upload) {
|
|
|
ExamQuestion examQuestion = questionService.findById(questionId);
|
|
|
model.addAttribute("examQuestion", examQuestion);
|
|
|
model.addAttribute("objectivePolicyList", ObjectivePolicy.values());
|
|
|
+ model.addAttribute("query", query);
|
|
|
+ model.addAttribute("upload", upload);
|
|
|
return "modules/exam/questionEdit";
|
|
|
}
|
|
|
|
|
|
@Logging(menu = "编辑题目判分策略", type = LogType.UPDATE)
|
|
|
@RequestMapping(value = "/question-edit", method = RequestMethod.POST)
|
|
|
@RoleRequire(Role.SCHOOL_ADMIN)
|
|
|
- public String update(@RequestParam Integer id, @RequestParam ObjectivePolicy objectivePolicy) {
|
|
|
+ public String update(@RequestParam Integer id, @RequestParam ObjectivePolicy objectivePolicy,
|
|
|
+ ExamSubjectSearchQuery query, @RequestParam(required = false) Boolean upload) {
|
|
|
ExamQuestion question = questionService.updateObjectivePolicy(id, objectivePolicy);
|
|
|
- return "redirect:/admin/exam/paper/detail?subjectCode=" + question.getSubjectCode();
|
|
|
+ return "redirect:/admin/exam/paper/detail?subjectCode=" + question.getSubjectCode() + "&pageNumber="
|
|
|
+ + query.getPageNumber() + "&code=" + query.getCode() + "&category=" + query.getCategory() + "&level="
|
|
|
+ + query.getLevel() + "&upload=" + upload + "&totalScoreNotEqual=" + query.getTotalScoreNotEqual();
|
|
|
}
|
|
|
|
|
|
@Logging(menu = "删除题目", type = LogType.DELETE)
|
|
|
@RequestMapping(value = "/question-delete/{questionId}", method = RequestMethod.GET)
|
|
|
@RoleRequire(Role.SCHOOL_ADMIN)
|
|
|
public String delete(HttpServletRequest request, RedirectAttributes redirectAttributes,
|
|
|
- @PathVariable Integer questionId) {
|
|
|
+ @PathVariable Integer questionId, ExamSubjectSearchQuery query,
|
|
|
+ @RequestParam(required = false) Boolean upload) {
|
|
|
ExamQuestion question = questionService.findById(questionId);
|
|
|
String subjectCode = question.getSubjectCode();
|
|
|
if (markService.deleteByQuestion(question)) {
|
|
@@ -453,7 +462,9 @@ public class PaperController extends BaseExamController {
|
|
|
} else {
|
|
|
addMessage(redirectAttributes, "删除失败,该题目已有分组或选做题存在选做题分组");
|
|
|
}
|
|
|
- return "redirect:/admin/exam/paper/detail?subjectCode=" + subjectCode;
|
|
|
+ return "redirect:/admin/exam/paper/detail?subjectCode=" + subjectCode + "&pageNumber=" + query.getPageNumber()
|
|
|
+ + "&code=" + query.getCode() + "&category=" + query.getCategory() + "&level=" + query.getLevel()
|
|
|
+ + "&upload=" + upload + "&totalScoreNotEqual=" + query.getTotalScoreNotEqual();
|
|
|
}
|
|
|
|
|
|
@Logging(menu = "客观题统分", type = LogType.UPDATE)
|
|
@@ -547,13 +558,15 @@ public class PaperController extends BaseExamController {
|
|
|
@RequestMapping("/question/delete")
|
|
|
@RoleRequire({ Role.SCHOOL_ADMIN, Role.SUBJECT_HEADER })
|
|
|
public String delete(HttpServletRequest request, Model model, RedirectAttributes redirectAttributes,
|
|
|
- @RequestParam Integer[] ids) {
|
|
|
+ @RequestParam Integer[] ids, ExamSubjectSearchQuery query, @RequestParam(required = false) Boolean upload) {
|
|
|
String subjectCode = "";
|
|
|
for (Integer id : ids) {
|
|
|
ExamQuestion question = questionService.findById(id);
|
|
|
subjectCode = question.getSubjectCode();
|
|
|
markService.deleteByQuestion(question);
|
|
|
}
|
|
|
- return "redirect:/admin/exam/paper/detail?subjectCode=" + subjectCode;
|
|
|
+ return "redirect:/admin/exam/paper/detail?subjectCode=" + subjectCode + "&pageNumber=" + query.getPageNumber()
|
|
|
+ + "&code=" + query.getCode() + "&category=" + query.getCategory() + "&level=" + query.getLevel()
|
|
|
+ + "&upload=" + upload + "&totalScoreNotEqual=" + query.getTotalScoreNotEqual();
|
|
|
}
|
|
|
}
|