|
@@ -33,6 +33,8 @@ import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
import java.math.BigDecimal;
|
|
import java.math.BigDecimal;
|
|
|
|
+import java.text.ParseException;
|
|
|
|
+import java.text.SimpleDateFormat;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
import java.util.concurrent.atomic.AtomicReference;
|
|
import java.util.concurrent.atomic.AtomicReference;
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
@@ -67,7 +69,7 @@ public class TEExamController {
|
|
|
|
|
|
@Resource
|
|
@Resource
|
|
RedisUtil redisUtil;
|
|
RedisUtil redisUtil;
|
|
-
|
|
|
|
|
|
+
|
|
@Resource
|
|
@Resource
|
|
TBTaskHistoryService taskHistoryService;
|
|
TBTaskHistoryService taskHistoryService;
|
|
|
|
|
|
@@ -139,7 +141,7 @@ public class TEExamController {
|
|
teExamActivityList.forEach(s -> {
|
|
teExamActivityList.forEach(s -> {
|
|
s.setPrepareSeconds(finalTeExam.getPrepareSeconds());
|
|
s.setPrepareSeconds(finalTeExam.getPrepareSeconds());
|
|
s.setMaxDurationSeconds(finalTeExam.getMaxDurationSeconds());
|
|
s.setMaxDurationSeconds(finalTeExam.getMaxDurationSeconds());
|
|
- s.setOpeningSeconds(finalTeExam.getOpeningSeconds());
|
|
|
|
|
|
+ s.setOpeningSeconds((int) ((finalTeExam.getEndTime().getTime() - finalTeExam.getStartTime().getTime()) / 1000));
|
|
s.setStartTime(finalTeExam.getStartTime());
|
|
s.setStartTime(finalTeExam.getStartTime());
|
|
s.setFinishTime(finalTeExam.getEndTime());
|
|
s.setFinishTime(finalTeExam.getEndTime());
|
|
s.setUpdateId(tbUser.getId());
|
|
s.setUpdateId(tbUser.getId());
|
|
@@ -156,7 +158,7 @@ public class TEExamController {
|
|
teExamActivityService.updateExamActivityCacheBean(s.getId());
|
|
teExamActivityService.updateExamActivityCacheBean(s.getId());
|
|
});
|
|
});
|
|
} else {
|
|
} else {
|
|
- TEExamActivity teExamActivity = new TEExamActivity(teExam.getId(), teExam.getPrepareSeconds(), teExam.getMaxDurationSeconds(), teExam.getOpeningSeconds(), teExam.getStartTime(), teExam.getEndTime(), tbUser.getId());
|
|
|
|
|
|
+ TEExamActivity teExamActivity = new TEExamActivity(teExam.getId(), teExam.getPrepareSeconds(), teExam.getMaxDurationSeconds(), (int) ((teExam.getEndTime().getTime() - teExam.getStartTime().getTime()) / 1000), teExam.getStartTime(), teExam.getEndTime(), tbUser.getId());
|
|
teExamActivity.setCode(String.valueOf(redisUtil.getRedisActivityCodeSequence(teExam.getId())));
|
|
teExamActivity.setCode(String.valueOf(redisUtil.getRedisActivityCodeSequence(teExam.getId())));
|
|
activityCode = teExamActivity.getCode();
|
|
activityCode = teExamActivity.getCode();
|
|
teExamActivity.setEnable(1);
|
|
teExamActivity.setEnable(1);
|
|
@@ -444,13 +446,13 @@ public class TEExamController {
|
|
ExamPropCountDto examPropCountDto = new ExamPropCountDto(examId, allCount, prepareCount.get(), examCount.get(), clientWebsocketStatusCount.get(), monitorStatusSourceCount.get(), alreadyComplete.get(), notComplete, completionRate);
|
|
ExamPropCountDto examPropCountDto = new ExamPropCountDto(examId, allCount, prepareCount.get(), examCount.get(), clientWebsocketStatusCount.get(), monitorStatusSourceCount.get(), alreadyComplete.get(), notComplete, completionRate);
|
|
return ResultUtil.ok(examPropCountDto);
|
|
return ResultUtil.ok(examPropCountDto);
|
|
}
|
|
}
|
|
-
|
|
|
|
|
|
+
|
|
@ApiOperation(value = "考试重新算分")
|
|
@ApiOperation(value = "考试重新算分")
|
|
@RequestMapping(value = "/score/calculate", method = RequestMethod.POST)
|
|
@RequestMapping(value = "/score/calculate", method = RequestMethod.POST)
|
|
@Transactional
|
|
@Transactional
|
|
@ApiResponses({@ApiResponse(code = 200, message = "{\"taskId\":0}", response = Result.class)})
|
|
@ApiResponses({@ApiResponse(code = 200, message = "{\"taskId\":0}", response = Result.class)})
|
|
public Result scoreCalculate(@ApiParam(value = "批次ID", required = true) @RequestParam Long examId) {
|
|
public Result scoreCalculate(@ApiParam(value = "批次ID", required = true) @RequestParam Long examId) {
|
|
- //先查询考试相关信息
|
|
|
|
|
|
+ //先查询考试相关信息
|
|
TEExam teExam = teExamService.getById(examId);
|
|
TEExam teExam = teExamService.getById(examId);
|
|
if (Objects.isNull(teExam)) {
|
|
if (Objects.isNull(teExam)) {
|
|
throw new BusinessException(ExceptionResultEnum.EXAM_NO);
|
|
throw new BusinessException(ExceptionResultEnum.EXAM_NO);
|