package com.ycl.jxkg.enums.general;
|
|
import com.baomidou.mybatisplus.annotation.EnumValue;
|
import com.fasterxml.jackson.annotation.JsonValue;
|
import lombok.Getter;
|
|
import java.util.Date;
|
import java.util.Objects;
|
|
/**
|
* 考试状态
|
*
|
* @author:xp
|
* @date:2024/6/4 9:35
|
*/
|
@Getter
|
public enum ExamStatusEnum {
|
|
NOT_START("not_start", "未开始"),
|
ING("ing", "进行中"),
|
FINISHED("finished", "已结束"),
|
;
|
|
@EnumValue
|
private final String value;
|
|
@JsonValue
|
private final String desc;
|
|
ExamStatusEnum(String value, String desc) {
|
this.value = value;
|
this.desc = desc;
|
}
|
|
/**
|
* 判断当前时间对应的考试状态
|
*
|
* @param start
|
* @param end
|
* @param now
|
* @return
|
*/
|
public static ExamStatusEnum getStatusByTime(Date start, Date end, Date now) {
|
if (Objects.isNull(now)) {
|
now = new Date();
|
}
|
if (now.after(end)) {
|
return FINISHED;
|
} else if (now.before(start)) {
|
return NOT_START;
|
} else {
|
return ING;
|
}
|
}
|
}
|