Java 中枚举类封装成下拉列表
枚举类
*/**
* 订单状态 枚举类
*
* @author AJIN
* @version 1.0
* @since v7.0.0
* 2019年08月10日下午2:44:54
*/
public enum OrderStatusEnum {
/**
* 新订单
*/
NEW("新订单"),
/**
* 出库失败
*/
INTO_DB_ERROR("出库失败"),
/**
* 已确认 待付款
*/
CONFIRM("已确认"),
/**
* 已付款 待发货
*/
PAID_OFF("已付款"),
/**
* 已发货 待收货
*/
SHIPPED("已发货"),
/**
* 已收货
*/
ROG("已收货"),
/**
* 已完成
*/
COMPLETE("已完成"),
/**
* 已取消
*/
CANCELLED("已取消"),
/**
* 售后中
*/
AFTER_SERVICE("售后中");
private String description;
OrderStatusEnum(String description) {
this.description = description;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public String description() {
return this.description;
}
public String value() {
return this.name();
}
public static String getOrderName(String code){
for(OrderStatusEnum order:OrderStatusEnum.values()){
if(code.equals(order.value())){
return order.getDescription();
}
}
return "";
}
} *
新建一个实体类 用于存储 key value
/**
* Description: zhuox-shop-trade
* <p>
* Created by Administrator on 2019/8/10 9:37
*/
@Data
public class LabelValueBeanVO implements Serializable {
private String key;
private String value;
private List<LabelValueBeanVO> subObj;
}
web controller 层 遍历枚举类
List<LabelValueBeanVO> list = new ArrayList<LabelValueBeanVO>();
try{
LabelValueBeanVO bean ;
for(OrderStatusEnum e: OrderStatusEnum.values()){
bean = new LabelValueBeanVO();
if ("NEW".equals(e.value()) || "INTO_DB_ERROR".equals(e.value())){
}
bean.setKey(e.value());
bean.setValue(e.description());
list.add(bean);
}
}catch (Exception e) {
logger.error(e.getMessage());
}
