注解
@Getter
@AllArgsConstructor
实例
package com.kamowl.kamo.cloud.user.open.define;
import com.google.common.collect.Lists;
import com.kamowl.kamo.cloud.base.open.vo.EnumVo;
import lombok.Getter;
import java.util.List;
/**
* @author aluohe
* @className VerifyStateEnum
* @projectName kamo-cloud
* @date 2019/11/8 15:25
* @description 审核状态枚举类
* @modified_by
* @version: 1.0.0
*/
@Getter
public enum VerifyStateEnum {
/**
* 未认证
*/
UN_AUTH(0, "未认证"),
/**
* 审核中
*/
//AUTH_ING(1, "审核中"),
/**
* 初审通过
*/
AUTH_PRE_SUCCESS(2, "待审核"),
/**
* 审核成功
*/
AUTH_SUCCESS(3, "审核成功"),
/**
* 审核失败
*/
AUTH_FAIL(4, "审核失败"),
;
public static VerifyStateEnum ofValue(Integer value) {
for (VerifyStateEnum anEnum : VerifyStateEnum.values()) {
if (anEnum.code.equals(value)) {
return anEnum;
}
}
return null;
}
private Integer code;
private String name;
VerifyStateEnum(Integer code, String name) {
this.code = code;
this.name = name;
}
public static boolean contains(Integer code) {
for (VerifyStateEnum state : values()) {
if (state.getCode() == code) {
return true;
}
}
return false;
}
public static List<EnumVo> toList() {
List<EnumVo> list = Lists.newArrayList();
for (VerifyStateEnum verifyStateEnum : VerifyStateEnum.values()) {
list.add(
new EnumVo()
.setCode(verifyStateEnum.getCode())
.setValue(verifyStateEnum.getName())
);
}
return list;
}
public static String ofNameByCode(Integer code) {
if (code == null) {
return "";
}
VerifyStateEnum[] values = VerifyStateEnum.values();
for (VerifyStateEnum value : values) {
if (value.code .equals(code)) {
return value.name;
}
}
return "";
}
}
1、通过code 查询 枚举名
public static VerifyStateEnum ofValue(Integer value) {
for (VerifyStateEnum anEnum : VerifyStateEnum.values()) {
if (anEnum.code.equals(value)) {
return anEnum;
}
}
return null;
}
例如:通过 2
查询出AUTH_PRE_SUCCESS
2、是否等于枚举里的某个code,相等返回true,否则返回false
public static boolean contains(Integer code) {
for (VerifyStateEnum state : values()) {
if (state.getCode() == code) {
return true;
}
}
return false;
}
3、把枚举转变成List
public static List<EnumVo> toList() {
List<EnumVo> list = Lists.newArrayList();
for (VerifyStateEnum verifyStateEnum : VerifyStateEnum.values()) {
list.add(
new EnumVo()
.setCode(verifyStateEnum.getCode())
.setValue(verifyStateEnum.getName())
);
}
return list;
}
配合调用
List<BaseEnumVo> list = new ArrayList<>();
//余额
list.add(new BaseEnumVo()
.setEnumName("余额")
.setEnumVos(AmountTypeEnum.toList())
);
//交易收入支付枚举
list.add(new BaseEnumVo()
.setEnumName("交易收入支付枚举")
.setEnumVos(TmsChangeTypeEnum.toList())
);
//交易收入支付枚举
list.add(new BaseEnumVo()
.setEnumName("用户类型")
.setEnumVos(TmsUserTypeEnum.toList())
);
4、通过code获取name
public static String ofNameByCode(Integer code) {
if (code == null) {
return "";
}
VerifyStateEnum[] values = VerifyStateEnum.values();
for (VerifyStateEnum value : values) {
if (value.code .equals(code)) {
return value.name;
}
}
return "";
}
例如:通过2
, 获取待审核