package enumeration;
|
|
import com.baomidou.mybatisplus.annotation.EnumValue;
|
import lombok.Getter;
|
|
import java.util.ArrayList;
|
import java.util.Arrays;
|
import java.util.List;
|
import java.util.stream.Collectors;
|
|
/**
|
* @author:xp
|
* @date:2024/8/19 11:39
|
*/
|
@Getter
|
public enum ErrorType {
|
//通用
|
// PLATFORM_OFFLINE("PLATFORMOFFLINE", "平台离线","COMMON"),
|
// SEVER_INTERRUPT("SEVERINTERRUPT", "服务中断","COMMON"),
|
DEVICE_OFFLINE("DEVICEOFFLINE", "设备离线","COMMON"),
|
POINT_INFO_ERROR("POINTINFOERRO", "点位信息错误","COMMON"),
|
//视频
|
CLOCK_SKEW("CLOCKSKEW", "时钟偏差","VIDEO"),
|
SIGNAL_LOSS("SIGNALMISS", "信号缺失","VIDEO"),
|
SCREEN_COLOR_DEVIATION("SCREENCOLOR", "画面偏色","VIDEO"),
|
SNOW_STORM("SCREENSNOW", "雪花干扰","VIDEO"),
|
STRIPE_INTERFERENCE("SCREENSTRIP", "条纹干扰","VIDEO"),
|
SCREEN_OCCLUSION("SCREENSHADE", "画面遮挡","VIDEO"),
|
ABNORMAL_CLARITY("SCREENBLUR", "清晰度异常","VIDEO"),
|
//新增的图像异常,合并前面所有异常类型
|
ABNORMAL_PIC("ABNORMALPIC", "图像异常","VIDEO"),
|
// ABNORMAL_BRIGHTNESS("SCREENLIGHT", "亮度异常","VIDEO"),
|
OSD_ERROR("OSD", "osd异常","VIDEO"),
|
// VIDEO_LOSS("VIDEOMISS", "录像缺失","VIDEO"),
|
// VIDEO_NONE("NOVIDEO", "无录像","VIDEO"),
|
// POINT_INFO_MISS("POINTINFOMISS", "点位信息不全","COMMON"),
|
// UNKNOWN("UNKNOWN", "未知"),
|
// PIC_URLABNORMAL("PICURLABNORMAL","图片访问异常",""),
|
// MONITOR_UNQUALIFY("MONITORUNQUALIFY", "一机一档不合格"),
|
// PIC_UNUSEFUL("PICUNUSEFUL", "大图不可用"),
|
// VIDEO_ORPIC_UNNORMAL("VIDEOORPICUNNORMAL", "视频拉流、图片获取异常"),
|
|
// 阈值
|
//车辆人脸通用
|
CLOCK_RIGHT("CLOCK_RIGHT", "时钟准确率异常","CARORFACE"),
|
LONG_DAY_NO_DATA("LONG_DAY_NO_DATA", "长时间无数据","CARORFACE"),
|
DATA_TIMELY_ERROR("DATA_TIMELY_ERROR", "数据及时性异常","CARORFACE"),
|
NOT_UNIQUE_DATA_VOLUME("NOT_UNIQUE_DATA_VOLUME", "不唯一数据量异常","CARORFACE"),
|
UNRECOGNIZED_DAY_VOLUME("UNRECOGNIZED_DAY_VOLUME", "白天未识别数据量异常","CARORFACE"),
|
//车辆
|
CAR_SIX("CAR_SIX", "车辆六项属性不完整","CAR"),
|
//人脸
|
MODELING_FAIL("MODELING_FAIL", "建模失败率异常","FACE"),
|
FACE_LOW("FACE_LOW", "人脸低分率异常","FACE"),
|
;
|
|
private String value;
|
|
private String desc;
|
|
private String category;
|
|
ErrorType(String value, String desc,String category) {
|
this.value = value;
|
this.desc = desc;
|
this.category = category;
|
}
|
|
// 根据分类获取错误类型列表
|
public static List<ErrorType> getErrorTypesByCategory(String category) {
|
return Arrays.stream(values())
|
.filter(errorType -> errorType.getCategory() == category)
|
.collect(Collectors.toList());
|
}
|
|
// 根据value获取desc
|
public static List<String> getDescriptionList() {
|
List<String> list = new ArrayList<>();
|
for (ErrorType errorType : ErrorType.values()) {
|
list.add(errorType.getDesc());
|
}
|
return list;
|
}
|
// 根据value获取desc
|
public static String getDescriptionByValue(String value) {
|
for (ErrorType errorType : ErrorType.values()) {
|
if (errorType.getValue().equals(value)) {
|
return errorType.getDesc();
|
}
|
}
|
return null;
|
}
|
// 根据desc获取value
|
public static String getValueByDescription(String desc) {
|
for (ErrorType errorType : ErrorType.values()) {
|
if (errorType.getDesc().equals(desc)) {
|
return errorType.getValue();
|
}
|
}
|
return null;
|
}
|
}
|