这就是我们通过Stream流把枚举值返回前端的具体实现(优雅)
public List<CodeVO> getContractType() {
return Stream.of(ContractTypeEnum.values())
.map(a -> {
CodeVO codeVO = new CodeVO();//返回前端的实体
codeVO.setCode(a.getCode());
codeVO.setName(a.getName());
return codeVO;
})
.collect(Collectors.toList());
}
ContractTypeEnum 就是我们的枚举
public enum ContractTypeEnum {
PREPAID(0, "预付"),
CREDIT(1, "垫资"),
CASH(2, "现付");
private final Integer code;
private final String name;
private ContractTypeEnum(Integer code, String name) {
this.code = code;
this.name = name;
}
public static ContractTypeEnum getByCode(Integer code) {
ContractTypeEnum[] values = values();
ContractTypeEnum[] var2 = values;
int var3 = values.length;
for(int var4 = 0; var4 < var3; ++var4) {
ContractTypeEnum item = var2[var4];
if (item.code.equals(code)) {
return item;
}
}
return null;
}
public Integer getCode() {
return this.code;
}
public String getName() {
return this.name;
}
}
CodeVO 就是我们要返回前端的实体VO
@Data
public class CodeVO {
private int code;
private String name;
}
结果:
大概就是这样的结果,只不过当前我的这个下拉框对应的不是上边的枚举