package com.lunhan.water.entity.enums; import java.util.Arrays; import java.util.Objects; /** * 退款状态枚举 待退款=10,退款中=20,退款成功=200,退款失败=300,退款取消=400 */ public enum ERefundState { /** * 待退款=10, */ WAITING("待退款", 10), /** * 退款中=20, */ REFUNDING("退款中", 20), /** * 退款成功=200, */ SUCCESS("退款成功", 200), /** * 退款失败=300, */ FAILED("退款失败", 300), /** * 退款取消=400, */ CANCELED("退款取消", 400) ; /** * 枚举描述 */ private String desc; /** * 枚举值 */ private Integer value; public Integer getValue() { return value; } public String getDesc() { return desc; } /** * 构造方法 * @param desc 枚举描述 * @param value 枚举值 */ ERefundState(String desc, Integer value) { this.desc = desc; this.value = value; } /** * 根据值获取枚举 * * @param value 枚举值 * @return */ public static ERefundState getByValue(Integer value) { return Arrays.stream(ERefundState.values()) .filter(e -> Objects.equals(e.getValue(), value)) .findAny() .orElse(null); } @Override public String toString() { return "ERefundState{" + "desc='" + desc + '\'' + ", value=" + value + '}'; } }