一、类型名称一个字段小例
public enum TableNameEnum {
TABLE_trade_BASE("tradeBase"),
TABLE_trade("trade"),
TABLE_BUILDING_BASE("BuildingBase"),
TABLE_BUILDING("Building"),
TABLE_ROOM("Room"),
TABLE_PropertyFollow("PropertyFollow"),
TABLE_CustomerFollow("CustomerFollow"),
TABLE_PropertyWorkFlow("PropertyWorkFlow"),
TABLE_PropertyTakeLook("PropertyTakeLook")
;
private String tableName;
TableNameEnum(String tableName) {
this.tableName = tableName;
}
public String getTableName() {
return tableName;
}
public void setTableName(String flowName) {
this.tableName = tableName;
}
}
使用方式
//表名
callrecord.setTableName(TableNameEnum.TABLE_PropertyFollow.getTableName());
二、类型名称两个字段小例
public enum VacationEum {
NEW_YEARS_DAY("1","元旦节"),
SPRING_FESTIVAL("2","春节"),
QINGMING_FESTIVAL("3","清明节"),
LABOR_DAY("4","劳动节"),
DRAGON_BOAT_FESTIVAL("5","端午节"),
MID_AUTUMN_FESTIVAL("6","中秋节"),
NATIONAL_DAY("7","国庆节");
/**
* 假期类型
*/
private String type;
/**
* 假期名称
*/
private String name;
VacationEum(String type,String name){
this.type = type;
this.name = name;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
}
使用方式
vacationParam.setVacationType(VacationEum.SPRING_FESTIVAL.getType());
三、类型名称三个字段小例
public enum WorkFlowCodeEnum {
//流程 flowType:1(简单流程),2(k2流程)
PROPERTY_EFFECTIVE("1","房源登盘/上架申请","1")
,PROPERTY_ADDRESS_CHANGE("2","意向合同产证地址变更流程","1")
,PROPERTY_ENTRUST("3", "房源控盘申请", "2")
,INTENTCONTRACT_PRINTOUT("4", "意向合同超限打印流程", "1")
,PROPERTY_ENTRUST_KEY("5","钥匙委托申请","2")
,PROPERTY_ATTACH_KEY("8","房源实勘变更","1")
,PROPERTY_PASS("9", "房源PASS申请", "2")
,ADD_OWNER_PHONE("11","添加业主电话申请", "1")
,PROPERTY_PRICE_CHANGE("12", "房源价变申请", "1")
,PROPERTY_UNBLOCK("13","房源解封","1")
,PROPERTY_GENERAL_ENTRUST("14", "房源一般委托", "2")
,PROPERTY_LABLE("15","房源标签申请","1")
,PROPERTY_CONTROL_TRUE("16","房源真控申请","2")
,INTENT_CONTRACT_APPLY("17","意向合同申请流程","1")
,INTENT_CONTRACT_EXAM("18","意向合同审核流程","1")
,INTENT_CONTRACT_RETURN("19","意向合同解约流程","1")
,PROPERTY_ASSISTANCE("20","房源协助流程","1")
,PROPERTY_SET_EFFECTIVE("21","房源置为有效流程","1")
,PROPERTY_SET_INVALID("22","房源置为无效流程","1")
,Risk_Manage_FLOW("103","客源风控申请","1")
,CUSTOMER_PASS_FLOW("104","客源PASS申请","1")
,CUSTOMER_Unblock_FLOW("105","客源解封申请","1")
,CUSTOMER_ADD_FLOW("106","新增客源申请","1")
,SHARE_ESTATE("111", "楼盘共享","2")
,CHILDREN_SHARE_ESTATE("112", "跨部门楼盘共享","2");
;
public static Map<String, WorkFlowCodeEnum> workFlowCodeMap = Maps.newHashMap();
static {
workFlowCodeMap.put(PROPERTY_PRICE_CHANGE.getCode(), PROPERTY_PRICE_CHANGE);
workFlowCodeMap.put(ADD_OWNER_PHONE.getCode(), ADD_OWNER_PHONE);
workFlowCodeMap.put(PROPERTY_ENTRUST_KEY.getCode(), PROPERTY_ENTRUST_KEY);
workFlowCodeMap.put(PROPERTY_EFFECTIVE.getCode(), PROPERTY_EFFECTIVE);
workFlowCodeMap.put(PROPERTY_ENTRUST.getCode(), PROPERTY_ENTRUST);
workFlowCodeMap.put(PROPERTY_GENERAL_ENTRUST.getCode(), PROPERTY_GENERAL_ENTRUST);
workFlowCodeMap.put(PROPERTY_LABLE.getCode(), PROPERTY_LABLE);
workFlowCodeMap.put(PROPERTY_UNBLOCK.getCode(), PROPERTY_UNBLOCK);
workFlowCodeMap.put(PROPERTY_PASS.getCode(), PROPERTY_PASS);
workFlowCodeMap.put(PROPERTY_CONTROL_TRUE.getCode(), PROPERTY_CONTROL_TRUE);
workFlowCodeMap.put(INTENT_CONTRACT_APPLY.getCode(), INTENT_CONTRACT_APPLY);
workFlowCodeMap.put(INTENT_CONTRACT_EXAM.getCode(), INTENT_CONTRACT_EXAM);
workFlowCodeMap.put(INTENT_CONTRACT_RETURN.getCode(), INTENT_CONTRACT_RETURN);
workFlowCodeMap.put(PROPERTY_SET_EFFECTIVE.getCode(), PROPERTY_SET_EFFECTIVE);
workFlowCodeMap.put(PROPERTY_SET_INVALID.getCode(), PROPERTY_SET_INVALID);
workFlowCodeMap.put(PROPERTY_ADDRESS_CHANGE.getCode(), PROPERTY_ADDRESS_CHANGE);
workFlowCodeMap.put(INTENTCONTRACT_PRINTOUT.getCode(), INTENTCONTRACT_PRINTOUT);
workFlowCodeMap.put(PROPERTY_ASSISTANCE.getCode(), PROPERTY_ASSISTANCE);
workFlowCodeMap.put(Risk_Manage_FLOW.getCode(), Risk_Manage_FLOW);
workFlowCodeMap.put(CUSTOMER_PASS_FLOW.getCode(), CUSTOMER_PASS_FLOW);
workFlowCodeMap.put(CUSTOMER_Unblock_FLOW.getCode(), CUSTOMER_Unblock_FLOW);
workFlowCodeMap.put(CUSTOMER_ADD_FLOW.getCode(), CUSTOMER_ADD_FLOW);
workFlowCodeMap.put(PROPERTY_ATTACH_KEY.getCode(), PROPERTY_ATTACH_KEY);
workFlowCodeMap.put(SHARE_ESTATE.getCode(), SHARE_ESTATE);
workFlowCodeMap.put(CHILDREN_SHARE_ESTATE.getCode(), CHILDREN_SHARE_ESTATE);
}
private String code;
private String flowName;
private String flowType;
WorkFlowCodeEnum(String code, String flowName, String flowType) {
this.code = code;
this.flowName = flowName;
this.flowType = flowType;
}
public String getFlowType() {
return flowType;
}
public void setFlowType(String flowType) {
this.flowType = flowType;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getFlowName() {
return flowName;
}
public void setFlowName(String flowName) {
this.flowName = flowName;
}
public static String getFlowName(String code) {
WorkFlowCodeEnum flowCodeEnum = workFlowCodeMap.get(code);
return flowCodeEnum.getFlowName();
}
public static String getFlowType(String code) {
WorkFlowCodeEnum flowCodeEnum = workFlowCodeMap.get(code);
return flowCodeEnum.getFlowType();
}
public static String val(String type) {
for (WorkFlowCodeEnum workFlowTypeEnum : values()) {
if (type.equalsIgnoreCase(workFlowTypeEnum.getCode())) {
return workFlowTypeEnum.getFlowName();
}
}
return null;
}
}
使用方式
/**
* 返回流程类型枚举
* @return
*/
@Override
public WorkFlowCodeEnum getWorkFlowCode() {
return WorkFlowCodeEnum.PROPERTY_EFFECTIVE;
}
private static Map<String, IBizWorkFlowService> flowServiceBeanMap;
@Override
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
Map<String, IBizWorkFlowService> map = applicationContext.getBeansOfType(IBizWorkFlowService.class);
flowServiceBeanMap = Maps.newHashMap();
map.forEach((key, value) -> flowServiceBeanMap.put(value.getWorkFlowCode().getCode(), value));
}
=====================================================================