lohir
2024-10-17 1d23adb2fa62ab836aca1a6d47f8a5ab5b12938f
优化考试时间创建和修改会向后推8小时的问题
2个文件已修改
9 ■■■■ 已修改文件
src/main/java/com/ycl/jxkg/domain/form/ExamForm.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ycl/jxkg/service/impl/ExamServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ycl/jxkg/domain/form/ExamForm.java
@@ -46,12 +46,12 @@
    @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) {
src/main/java/com/ycl/jxkg/service/impl/ExamServiceImpl.java
@@ -91,8 +91,6 @@
    @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());
        // 设置乐观锁版本
@@ -118,9 +116,6 @@
        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消息