| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- package com.nju.edu.eval.web.controller;
- import cn.seecoder.codejudge.client.JudgeDTO;
- import com.fasterxml.jackson.annotation.JsonUnwrapped;
- import com.nju.edu.eval.aspect.auth.Authorized;
- import com.nju.edu.eval.data.entity.User;
- import com.nju.edu.eval.model.vo.judge.CodeJudgeVO;
- import com.nju.edu.eval.model.vo.judge.ObjectiveJudgeVO;
- import com.nju.edu.eval.publicdatas.enums.UserRole;
- import com.nju.edu.eval.service.JudgeService;
- import com.nju.edu.eval.web.Response;
- import io.swagger.annotations.Api;
- import io.swagger.annotations.ApiOperation;
- import io.swagger.annotations.ApiParam;
- import org.apache.commons.lang3.StringEscapeUtils;
- import org.springframework.context.annotation.Role;
- import org.springframework.web.bind.annotation.*;
- import springfox.documentation.annotations.ApiIgnore;
- import java.util.List;
- import static org.apache.commons.text.StringEscapeUtils.unescapeHtml4;
- /**
- * @author mars
- */
- @RestController
- @RequestMapping(path = "/api/judge")
- @Api(tags = {"判题"})
- public class JudgeController {
- private JudgeService judgeService;
- public JudgeController(JudgeService judgeService) {
- this.judgeService = judgeService;
- }
- @ApiOperation("考试中的客观题判题")
- @PostMapping(value = "/objective")
- @Authorized(roles = {UserRole.STUDENT})
- public Response judgeObjectiveQuestionAnswers(@ApiIgnore User user, @RequestParam(value = "examId") Integer examId,
- @RequestBody ObjectiveJudgeVO objectiveJudgeVO) {
- return Response.buildSuccess(judgeService.judgeObjectiveQuestionAnswers(user.getId(), examId, objectiveJudgeVO));
- }
- @ApiOperation("考试中的代码题判题")
- @PostMapping("/code")
- @Authorized(roles = {UserRole.STUDENT})
- public Response judgeCodeQuestionAnswers(@ApiIgnore User user, @RequestParam(value = "examId") Integer examId,
- @RequestParam(value = "questionId") String questionId,
- @RequestBody CodeJudgeVO codeJudgeVO) {
- return Response.buildSuccess(judgeService.judgeCodeQuestionAnswers(user.getId(), examId, questionId, codeJudgeVO));
- }
- @ApiOperation("练习中的客观题判题")
- @PostMapping(value = "/objective/test")
- @Authorized(roles = {UserRole.STUDENT})
- public Response judgeObjectiveQuestionAnswersOfExercise(@ApiIgnore User user,
- @RequestBody ObjectiveJudgeVO objectiveJudgeVO) {
- return Response.buildSuccess(judgeService.judgeObjectiveQuestionAnswersOfExercise(user.getId(), objectiveJudgeVO));
- }
- @ApiOperation("练习中的代码题判题")
- @PostMapping("/code/test")
- @Authorized(roles = {UserRole.STUDENT})
- public Response judgeCodeQuestionAnswersOfExercise(@ApiIgnore User user,
- @RequestParam(value = "questionId") String questionId,
- @RequestBody CodeJudgeVO codeJudgeVO) {
- return Response.buildSuccess(judgeService.judgeCodeQuestionAnswersOfExercise(user.getId(), questionId, codeJudgeVO));
- }
- // @ApiOperation("针对某次考试的判题")
- // @PostMapping("/exam/{examId}")
- }
|