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