使用 getList() 方法即可获取 List<Map<Integer, String>> 结构数据
import org.apache.commons.lang3.StringUtils;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public enum StepTypeEnum {
AGREE_AGREEMENT(1, "同意协议"),
OCR_DOCUMENT_IDENTIFY(2, "OCR证件识别核验"),
OCR_WITNESS_IDENTIFY(3, "OCR人证识别"),
LIVENESS_VERIFICATION(4, "活体检测"),
WITNESS_DOCUMENT_COMPARISON(5, "人证比对");
private final Integer code;
private final String explain;
StepTypeEnum(Integer code, String explain) {
this.code = code;
this.explain = explain;
}
public Integer getCode() {
return code;
}
public String getExplain() {
for (StepTypeEnum r : StepTypeEnum.values()) {
if (r.getCode().equals(code)) {
return r.explain;
}
}
return null;
}
public static String getExplain(Integer code) {
for (StepTypeEnum r : StepTypeEnum.values()) {
if (r.getCode().equals(code)) {
return r.explain;
}
}
return null;
}
public static List<Map<String, String>> getList() {
return getList(null, null);
}
public static List<Map<String, String>> getList(String keyName, String valName) {
List<Map<String, String>> dataList = new ArrayList<>();
for (StepTypeEnum c : StepTypeEnum.values()) {
Map<String, String> data = new HashMap<>();
data.put(StringUtils.isNotBlank(keyName) ? keyName : "value", String.valueOf(c.getCode()));
data.put(StringUtils.isNotBlank(valName) ? valName : "label", c.getExplain());
dataList.add(data);
}
return dataList;
}
}