|
@@ -7,6 +7,9 @@ import java.util.*;
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
|
|
+import cn.com.qmth.stmms.biz.exam.bean.ResultMessage;
|
|
|
+import io.swagger.annotations.Api;
|
|
|
+import io.swagger.annotations.ApiOperation;
|
|
|
import org.apache.commons.io.IOUtils;
|
|
|
import org.apache.commons.lang.StringUtils;
|
|
|
import org.slf4j.Logger;
|
|
@@ -60,6 +63,7 @@ import cn.com.qmth.stmms.common.utils.RequestUtils;
|
|
|
import net.sf.json.JSONArray;
|
|
|
import net.sf.json.JSONObject;
|
|
|
|
|
|
+@Api(tags = "科目管理")
|
|
|
@Controller("adminSubjectController")
|
|
|
@RequestMapping("/api/admin/subject")
|
|
|
public class SubjectController extends BaseApiController {
|
|
@@ -122,6 +126,7 @@ public class SubjectController extends BaseApiController {
|
|
|
@Value("${file.temp}")
|
|
|
private String tempFile;
|
|
|
|
|
|
+ @ApiOperation(value = "科目下拉列表")
|
|
|
@RequestMapping(value = "/list", method = RequestMethod.POST)
|
|
|
@ResponseBody
|
|
|
public List<ExamSubject> list(HttpServletRequest request) {
|
|
@@ -129,13 +134,14 @@ public class SubjectController extends BaseApiController {
|
|
|
return getExamSubject(examId, RequestUtils.getApiUser(request));
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation(value = "科目层次下拉列表")
|
|
|
@RequestMapping(value = "/level/list", method = RequestMethod.POST)
|
|
|
@ResponseBody
|
|
|
public List<String> levelList(HttpServletRequest request) {
|
|
|
int examId = getSessionExamId(request);
|
|
|
return subjectService.listLevel(examId);
|
|
|
}
|
|
|
-
|
|
|
+ @ApiOperation(value = "科目专业下拉列表")
|
|
|
@RequestMapping(value = "/category/list", method = RequestMethod.POST)
|
|
|
@ResponseBody
|
|
|
public List<String> categoryList(HttpServletRequest request) {
|
|
@@ -143,6 +149,7 @@ public class SubjectController extends BaseApiController {
|
|
|
return subjectService.listCategory(examId);
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation(value = "科目查询")
|
|
|
@RequestMapping(value = "/query", method = RequestMethod.POST)
|
|
|
@ResponseBody
|
|
|
public PageResult<ExamSubject> list(HttpServletRequest request, ExamSubjectSearchQuery query) {
|
|
@@ -158,16 +165,18 @@ public class SubjectController extends BaseApiController {
|
|
|
return PageUtil.of(query);
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation(value = "获取指定科目")
|
|
|
@RequestMapping(value = "/find", method = RequestMethod.POST)
|
|
|
@ResponseBody
|
|
|
public ExamSubject find(HttpServletRequest request, @RequestParam Integer examId, @RequestParam String code) {
|
|
|
return subjectService.find(examId, code);
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation(value = "科目修改")
|
|
|
@Logging(menu = "科目设置修改", type = LogType.UPDATE)
|
|
|
@RequestMapping(value = "/update", method = RequestMethod.POST)
|
|
|
@ResponseBody
|
|
|
- public JSONObject save(HttpServletRequest request, ExamSubject subject) {
|
|
|
+ public ResultMessage save(HttpServletRequest request, ExamSubject subject) {
|
|
|
ExamSubject previous = subjectService.find(getSessionExamId(request), subject.getCode());
|
|
|
if (previous == null) {
|
|
|
throw new StatusException("科目不存在");
|
|
@@ -179,12 +188,13 @@ public class SubjectController extends BaseApiController {
|
|
|
previous.setDisplayQuestionName(
|
|
|
subject.getDisplayQuestionName() == null ? false : subject.getDisplayQuestionName());
|
|
|
subjectService.save(previous);
|
|
|
- return result(true);
|
|
|
+ return resultOk();
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation(value = "科目总分统计")
|
|
|
@RequestMapping(value = "/statistic", method = RequestMethod.POST)
|
|
|
@ResponseBody
|
|
|
- public JSONObject statistic(HttpServletRequest request) {
|
|
|
+ public ResultMessage statistic(HttpServletRequest request) {
|
|
|
int examId = getSessionExamId(request);
|
|
|
List<Double> totalScoreList = subjectService.distinctTotalScore(examId);
|
|
|
List<Long> subjectCountList = new ArrayList<Long>();
|
|
@@ -194,9 +204,10 @@ public class SubjectController extends BaseApiController {
|
|
|
querys.setTotalScore(totalScore);
|
|
|
subjectCountList.add(subjectService.countByQuery(querys));
|
|
|
}
|
|
|
- return result(true);
|
|
|
+ return resultOk();
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation(value = "卷型下拉列表")
|
|
|
@RequestMapping(value = "/getPaperType", method = RequestMethod.POST)
|
|
|
@ResponseBody
|
|
|
public List<String> query(HttpServletRequest request, @RequestParam String subjectCode) {
|
|
@@ -206,6 +217,7 @@ public class SubjectController extends BaseApiController {
|
|
|
return list;
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation(value = "客or主观题导入模版")
|
|
|
@RequestMapping(value = "/template", method = RequestMethod.POST)
|
|
|
public void importTemplate(HttpServletResponse response, @RequestParam Boolean objective) {
|
|
|
try {
|
|
@@ -222,9 +234,10 @@ public class SubjectController extends BaseApiController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation(value = "客观题统分")
|
|
|
@Logging(menu = "客观题统分", type = LogType.UPDATE)
|
|
|
@RequestMapping(value = "/calculate", method = RequestMethod.POST)
|
|
|
- public JSONObject calculate(HttpServletRequest request, @RequestParam(required = false) String subjectCode) {
|
|
|
+ public ResultMessage calculate(HttpServletRequest request, @RequestParam(required = false) String subjectCode) {
|
|
|
ApiUser wu = RequestUtils.getApiUser(request);
|
|
|
Exam exam = examService.findById(getSessionExamId(request));
|
|
|
if (exam == null || !exam.getSchoolId().equals(wu.getUser().getSchoolId())) {
|
|
@@ -245,7 +258,7 @@ public class SubjectController extends BaseApiController {
|
|
|
taskExecutor.submit(thread);
|
|
|
}
|
|
|
}
|
|
|
- return result(true);
|
|
|
+ return resultOk();
|
|
|
}
|
|
|
|
|
|
private Set<String> getCalculateSubjectCodes(Integer examId) {
|
|
@@ -258,7 +271,7 @@ public class SubjectController extends BaseApiController {
|
|
|
}
|
|
|
return set;
|
|
|
}
|
|
|
-
|
|
|
+ @ApiOperation(value = "导出客or主观题")
|
|
|
@Logging(menu = "导出客/主观题", type = LogType.EXPORT)
|
|
|
@RequestMapping(value = "/export", method = RequestMethod.POST)
|
|
|
public void exportFile(HttpServletRequest request, HttpServletResponse response, @RequestParam Boolean objective) {
|
|
@@ -300,6 +313,7 @@ public class SubjectController extends BaseApiController {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation(value = "导入客or主观题")
|
|
|
@Logging(menu = "导入客/主观题", type = LogType.IMPORT_FILE)
|
|
|
@RequestMapping(value = "/import", method = RequestMethod.POST)
|
|
|
public JSONObject importFile(HttpServletRequest request, MultipartFile file, @RequestParam Boolean objective) {
|
|
@@ -420,7 +434,7 @@ public class SubjectController extends BaseApiController {
|
|
|
}
|
|
|
return map;
|
|
|
}
|
|
|
-
|
|
|
+ @ApiOperation(value = "导入主观题评卷分组")
|
|
|
@Logging(menu = "导入主观题分组", type = LogType.IMPORT_FILE)
|
|
|
@RequestMapping(value = "/importGroup", method = RequestMethod.POST)
|
|
|
public JSONObject importGroupFile(HttpServletRequest request, MultipartFile file) {
|
|
@@ -504,10 +518,10 @@ public class SubjectController extends BaseApiController {
|
|
|
RequestUtils.setLog(request, success + "个科目导入成功;");
|
|
|
return result(StringUtils.join(error, " "));
|
|
|
}
|
|
|
-
|
|
|
+ @ApiOperation(value = "科目成绩分析计算")
|
|
|
@Logging(menu = "科目成绩分析计算", type = LogType.UPDATE)
|
|
|
@RequestMapping(value = "/report", method = RequestMethod.POST)
|
|
|
- public JSONObject report(HttpServletRequest request, @RequestParam(required = false) String subjectCode) {
|
|
|
+ public ResultMessage report(HttpServletRequest request, @RequestParam(required = false) String subjectCode) {
|
|
|
ApiUser wu = RequestUtils.getApiUser(request);
|
|
|
Exam exam = examService.findById(getSessionExamId(request));
|
|
|
if (exam == null || !exam.getSchoolId().equals(wu.getUser().getSchoolId())) {
|
|
@@ -534,12 +548,13 @@ public class SubjectController extends BaseApiController {
|
|
|
taskExecutor.submit(thread);
|
|
|
}
|
|
|
}
|
|
|
- return result(true);
|
|
|
+ return resultOk();
|
|
|
}
|
|
|
|
|
|
+ @ApiOperation(value = "客观题分析计算")
|
|
|
@Logging(menu = "客观题分析计算", type = LogType.UPDATE)
|
|
|
@RequestMapping(value = "/report/objective", method = RequestMethod.POST)
|
|
|
- public JSONObject reportObjective(HttpServletRequest request) {
|
|
|
+ public ResultMessage reportObjective(HttpServletRequest request) {
|
|
|
ApiUser wu = RequestUtils.getApiUser(request);
|
|
|
Exam exam = examService.findById(getSessionExamId(request));
|
|
|
if (exam == null || !exam.getSchoolId().equals(wu.getUser().getSchoolId())) {
|
|
@@ -561,12 +576,12 @@ public class SubjectController extends BaseApiController {
|
|
|
taskExecutor.submit(thread);
|
|
|
}
|
|
|
}
|
|
|
- return result(true);
|
|
|
+ return resultOk();
|
|
|
}
|
|
|
-
|
|
|
+ @ApiOperation(value = "导入数据包")
|
|
|
@Logging(menu = "导入数据包", type = LogType.IMPORT_FILE)
|
|
|
@RequestMapping(value = "/importData", method = RequestMethod.POST)
|
|
|
- public JSONObject importData(HttpServletRequest request, MultipartFile file) {
|
|
|
+ public ResultMessage importData(HttpServletRequest request, MultipartFile file) {
|
|
|
int examId = getSessionExamId(request);
|
|
|
List<String> error = new ArrayList<String>();
|
|
|
try {
|
|
@@ -597,9 +612,12 @@ public class SubjectController extends BaseApiController {
|
|
|
error.add("zip文件解析失败");
|
|
|
}
|
|
|
if (error.size() > 0) {
|
|
|
- return result(StringUtils.join(error, " "));
|
|
|
+ ResultMessage resultMessage = new ResultMessage();
|
|
|
+ resultMessage.setMessage(StringUtils.join(error, " "));
|
|
|
+ resultMessage.setSuccess(false);
|
|
|
+ return resultMessage;
|
|
|
}
|
|
|
- return result(true);
|
|
|
+ return resultOk();
|
|
|
}
|
|
|
|
|
|
private List<String> parseCard(int examId, List<String> error, ZipReader zipReader) throws IOException {
|