package com.lunhan.xxx.common.validator; import java.util.Arrays; import java.util.Objects; /** * 参数验证类型 枚举 * @author linliu * @date 2019-04-19 */ public enum EParameterValidateType { /** * 不能为空 */ NOT_NULLOREMPTY(", 不能为空 ", 1), /** * 必须大于 */ MUST_GREATER(", 必须大于 ", 2), /** * 必须大于等于 */ MUST_GREATER_THAN(", 必须大于等于 ", 3), /** * 必须小于 */ MUST_LESS(", 必须小于 ", 4), /** * 必须小于等于 */ MUST_LESS_THAN(", 必须小于等于 ", 5), /** * 必须是枚举 */ MUST_ENUM(", 必须是合法的枚举值", 6), /** * 必须是有效的日期(yyyy-MM-dd) */ MUST_DATE(", 必须是有效的日期格式(yyyy-MM-dd)", 7), /** * 必须是有效的时间(yyyy-MM-dd HH:mm:ss) */ MUST_DATE_TIME(", 必须是有效的日期格式(yyyy-MM-dd HH:mm:ss)", 8), /** * 必须是有效电话号码 */ MUST_PHONE_NUMBER(", 必须是有效的联系方式", 9), /** * 必须是有效座机号码 */ MUST_TELEPHONE_NUMBER(", 必须是有效的座机号码", 10), /** * 必须是有效手机号码 */ MUST_MOBILE_NUMBER(", 必须是有效的手机号码", 11), /** * 必须是有效电子邮箱地址 */ MUST_EMAIL(", 必须是有效的电子邮箱", 12), /** * 不能超出取值范围 */ MUST_IN_RANGE(", 取值超出允许范围 ", 13), /** * 长度不能小于 */ MUST_LENGTH_MIN(", 字符长度不能少于 ", 14), /** * 长度不能大于 */ MUST_LENGTH_MAX(", 字符长度不能超过 ", 15), /** * 必须满足正则表达式规则 */ MUST_PASS_REGEX(", 必须满足正则表达式规则 ", 16) ; private String desc;//枚举描述 private Integer value;//枚举值 public Integer getValue() { return value; } public String getDesc() { return desc; } /** * 构造方法 * @param desc 枚举描述 * @param value 枚举值 */ private EParameterValidateType(String desc, Integer value) { this.desc = desc; this.value = value; } /** * 根据值获取枚举 * * @param value 枚举值 * @return */ public static EParameterValidateType getByValue(Integer value) { return Arrays.stream(EParameterValidateType.values()) .filter(e -> Objects.equals(e.getValue(), value)) .findFirst() .orElse(null); } @Override public String toString() { return "EParameterValidateType{" + "desc='" + desc + '\'' + ", value=" + value + '}'; } }