fuliqi
2024-07-04 b911167866ad611a7f266d846bb15c21ae7540f4
Merge remote-tracking branch 'origin/dev' into dev
4个文件已修改
23 ■■■■■ 已修改文件
src/main/java/com/ycl/jxkg/domain/form/AddTimeForm.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ycl/jxkg/domain/vo/ExamSubmitTempVO.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ycl/jxkg/server/WebsocketServer.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ycl/jxkg/service/impl/ExamServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/ycl/jxkg/domain/form/AddTimeForm.java
@@ -3,6 +3,7 @@
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
/**
 * @author:xp
@@ -21,6 +22,6 @@
    /** 添加多少时间:秒 */
    @NotNull(message = "请填写加时秒数")
    private Integer addTimeSecond;
    private BigDecimal addTimeM;
}
src/main/java/com/ycl/jxkg/domain/vo/ExamSubmitTempVO.java
@@ -1,5 +1,6 @@
package com.ycl.jxkg.domain.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ycl.jxkg.domain.base.AbsVo;
import com.ycl.jxkg.domain.entity.ExamSubmitTemp;
import lombok.Data;
@@ -31,6 +32,7 @@
    /** 提交的试卷内容 */
    private String examSubmit;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /** 状态:临时、保存 */
src/main/java/com/ycl/jxkg/server/WebsocketServer.java
@@ -20,6 +20,7 @@
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import java.util.concurrent.CopyOnWriteArraySet;
/**
@@ -133,4 +134,15 @@
        }
    }
    /**
     * 校验用户是否在线
     *
     * @param userId
     * @return
     */
    public Boolean checkUserOnline(Integer userId) {
        Session session = SESSION_POOL.get(userId);
        return Objects.nonNull(session);
    }
}
src/main/java/com/ycl/jxkg/service/impl/ExamServiceImpl.java
@@ -885,6 +885,9 @@
        WebsocketDataVO websocket = new WebsocketDataVO();
        websocket.setCommend(WebsocketCommendEnum.DELAYED.getCommend());
        websocket.setData(form);
        if (! websocketServer.checkUserOnline(form.getUserId())) {
            throw new RuntimeException("该学员不在线,无法执行该操作");
        }
        // 发送websocket消息
        websocketServer.sendOneMessage(form.getUserId(), JSON.toJSONString(form));
        return Result.ok("操作成功");
@@ -895,6 +898,9 @@
        WebsocketDataVO websocket = new WebsocketDataVO();
        websocket.setCommend(WebsocketCommendEnum.FORCE_SUBMIT.getCommend());
        websocket.setData(form);
        if (! websocketServer.checkUserOnline(form.getUserId())) {
            throw new RuntimeException("该学员不在线,无法执行该操作");
        }
        // 发送websocket消息
        websocketServer.sendOneMessage(form.getUserId(), JSON.toJSONString(form));
        return Result.ok("操作成功");