| | |
| | | |
| | | @NotNull(message = "开始时间不能为空", groups = {Add.class, Update.class}) |
| | | @ApiModelProperty("开始时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | private Date startTime; |
| | | |
| | | @NotNull(message = "结束时间不能为空", groups = {Add.class, Update.class}) |
| | | @ApiModelProperty("结束时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "UTC") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | private Date endTime; |
| | | |
| | | public static Exam getEntityByForm(@NonNull ExamForm form, Exam entity) { |
| | |
| | | @Override |
| | | public Result add(ExamForm form) { |
| | | Exam entity = ExamForm.getEntityByForm(form, null); |
| | | form.getStartTime().setTime(form.getStartTime().getTime() - 8 * 60 * 60 * 1000); |
| | | form.getEndTime().setTime(form.getEndTime().getTime() - 8 * 60 * 60 * 1000); |
| | | entity.setStatus(ExamStatusEnum.getStatusByTime(form.getStartTime(), form.getEndTime(), null)); |
| | | entity.setTeacherId(webContext.getCurrentUser().getId()); |
| | | // 设置乐观锁版本 |
| | |
| | | if (!ExamStatusEnum.NOT_START.equals(entity.getStatus())) { |
| | | throw new RuntimeException("只能修改还未开始的考试"); |
| | | } |
| | | // 将开始考试时间想前推8小时 |
| | | form.getStartTime().setTime(form.getStartTime().getTime() - 8 * 60 * 60 * 1000); |
| | | form.getEndTime().setTime(form.getEndTime().getTime() - 8 * 60 * 60 * 1000); |
| | | BeanUtils.copyProperties(form, entity); |
| | | entity.setStatus(ExamStatusEnum.getStatusByTime(form.getStartTime(), form.getEndTime(), new Date())); |
| | | // 如果修改成功发送mq消息 |