package pwc.taxtech.atms.common;

public enum OperationModule {

    BasicDataOrganizationStructure(1), 
    BasicDataRegion(2), 
    BasicDataStandardAccount(3), 
    BasicDataWordLibrary(4), 
    BasicDataKeyValue(5), 
    Project(6), 
    ProjectServiceType(7), 
    User(8), 
    Organization(9), 
    Role(10), 
    UserRole(11), 
    BasicDataEnterpriceAccount(12), 
    TemplateFormula(13), 
    Template(14), 
    TemplateGroup(15), 
    ReportConfiguration(16), 
    BasicDataArea(17), 
    BasicDataCustomer(18), 
    BasicDataBusinessUnit(19),
    /** 科目对应 */
    SubjectCorresponding(20),
    /** THE BASIC DATA DIMENSION */
    BasicDataDimension(21), 
    BasicDataDimensionValue(22),
    /** 用户机构上的权限 */
    UserOrganization(23),
    /** 用户维度上的权限 */
    UserDimensionValue(24),
    /** 用户在机构上的额外角色 */
    UserOrganizationRole(25),
    /** 用户在维度上的额外角色 */
    UserDimensionValueRole(26),
    /** 用户在维度上是否可继承 */
    UserDimensionValueOrg(27), 
    ModelConfiguration(28), 
    BasicDataStatisticAttribute(29), 
    RuleEngineConfig(30), 
    KeyValueConfig(31), 
    Workflow(32), 
    Stock(33);

    private int value;

    OperationModule(int value) {
        this.value = value;
    }

    public Integer value() {
        return value;
    }
    
    public static String getName(int value) {
        for(OperationModule module:OperationModule.values()) {
            if(module.value() == value) {
                return module.name();
            }
        }
        return null;
    }
}