package com.epmet.enums; import lombok.AllArgsConstructor; /** * @Description 描述 * @Author wangxianzhang * @Date 2021/11/5 10:37 上午 * @Version 1.0 */ @AllArgsConstructor public enum IcResiUserTableEnum { /** * 注释 */ IC_RESI_USER("ic_resi_user","社区居民基本信息录入表", 0, 3, null, true), IC_PARTY_MEMBER("ic_party_member","党员信息录入表", 1, 2, "IS_PARTY", true), IC_ENSURE_HOUSE("ic_ensure_house","保障房人员信息录入表", 2, 2, "IS_ENSURE_HOUSE", true), IC_UNEMPLOYED("ic_unemployed","失业人员信息录入表", 3, 2, "IS_UNEMPLOYED", true), IC_VETERANS("ic_veterans","退役军人信息录入表", 4, 2, "IS_VETERANS", true), IC_UNITED_FRONT("ic_united_front","统战人员信息录入表", 5, 2, "IS_UNITED_FRONT", true), IC_VOLUNTEER("ic_volunteer","志愿者信息录入表", 6, 3, "IS_VOLUNTEER", true), IC_OLD_PEOPLE("ic_old_people","老年人信息录入表", 7, 2, "IS_OLD_PEOPLE", true), IC_SPECIAL("ic_special","特殊人群信息录入表", 8, 3, "IS_SPECIAL", true), IC_TENANT("ic_resi_rent_contract_info","租户信息录入表", null, 2, "IS_TENANT", true), // 下面的是:没有实际数据库表,在ic_resi_user中有一个标记,但是导入的时候是有单独的sheet的 IC_DBH("virtual_dbh","低保人员信息录入表", null, 2, "IS_DBH", false), IC_YLFN("virtual_ylfn","育龄妇女信息录入表", null, 2, "IS_YLFN", false), IC_XFRY("virtual_xfry","信访人员信息录入表", null, 2, "IS_XFRY", false), IC_KC("virtual_kc","空巢老人信息录入表", null, 2, "IS_KC", false), IC_SD("virtual_sd","失独人员信息录入表", null, 2, "IS_SD", false), IC_SN("virtual_sn","失能人员信息录入表", null, 2, "IS_SN", false), IC_SZ("virtual_sz","失智人员信息录入表", null, 2, "IS_SZ", false), IC_CJ("virtual_cj","残疾人员信息录入表", null, 2, "IS_CJ", false), IC_DB("virtual_db","大病人员信息录入表", null, 2, "IS_DB", false), IC_MB("virtual_mb","慢病人员信息录入表", null, 2, "IS_MB", false), IC_FLOATING("virtual_floating","流动人口信息录入表", null, 2, "IS_FLOATING", false), IC_XJC("virtual_xjc","新阶层人士信息录入表", null, 2, "IS_XJC", false); private String tableName; /** * 表描述 && sheet名称 */ private String tableComment; private Integer sheetNo; private int headRowNo; private String mainTableFlagColumnName; /** * 该sheet是否有数据库表 */ private boolean existsDBTable; /** * 根据表名获取枚举对象 * @param tableName * @return */ public static IcResiUserTableEnum getObjectByTableName(String tableName) { for (IcResiUserTableEnum i : IcResiUserTableEnum.values()) { if (i.tableName.equals(tableName)) { return i; } } return null; } /** * 根据表comment(sheet名称)获取枚举对象 * @param tableComment * @return */ public static IcResiUserTableEnum getObjectByTableComment(String tableComment) { for (IcResiUserTableEnum i : IcResiUserTableEnum.values()) { if (i.tableComment.equals(tableComment)) { return i; } } return null; } /** * 判断是否有这一列 * @param columnName * @return */ public static boolean existsColumn(String columnName) { for (IcResiUserTableEnum i : IcResiUserTableEnum.values()) { String mainTableColumnName = i.mainTableFlagColumnName; if (mainTableColumnName != null && mainTableColumnName.equals(columnName)) { return true; } } return false; } public String getTableName() { return tableName; } public String getTableComment() { return tableComment; } public Integer getSheetNo() { return sheetNo; } public int getHeadRowNo() { return headRowNo; } public String getMainTableFlagColumnName() { return mainTableFlagColumnName; } public void setMainTableFlagColumnName(String mainTableFlagColumnName) { this.mainTableFlagColumnName = mainTableFlagColumnName; } public boolean isExistsDBTable() { return existsDBTable; } }