欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java枚举根据key获取value

程序员文章站 2022-03-24 13:16:54
...
package com.utcip.crm.common.constants;  
  
import com.utcip.crm.common.base.process.ScheduleStatusEnum;  
  
/** 
 * 合同变更存储mongodb 状态值 
 * @author jingfangnan 
 * 
 */  
public enum ConstractMongoStatus {  
      
    NEW(3,"新增"),  
      
    UPDATE(2,"修改"),  
      
    DELETE(1,"删除"),  
      
    GENERATOR(0,"普通无状态"),  
      
    // 是否提交审核  
    REVIEW(5,"提交审核"),  
      
    NO_REVIEW(-5,"不提交审核"),  
      
    //变更流程相关  
      
    ONLY_CONTRACT_MATERIAL(6,"仅涉及合同材料修改"),  
      
    NOT_ONLY_CONTRACT_MATERIAL(7,"需要合同档案部审核"),  
      
    CRM_ACC_EXPEN_CHANGE(8,"涉及实收款变更"),  
      
    NO_CRM_ACC_EXPEN_CHANGE(9,"不涉及实收款变更"),  
      
    //历史版本列表  
      
    UPDATE_PRODUCT(10,"变更商品"),  
      
    UPDATE_ACC_EXPEN(11,"变更实收款"),  
      
    UPDATE_RECEIVAL(20,"变更收款计划"),  
      
    UPDATE_ATTACHMENT(12,"变更附件"),  
      
    UPDATE_CONTRACT(13,"变更合同基本信息"),  
      
    UPDATE_APPROVAL(14,"变更审批单"),  
      
    //变更历史状态描述  
      
    MODIFY_NOMORE(19,"初始状态"),  
      
    MODIFY_UPDATE(15,"已更新"),  
      
    MODIFY_REVIEW_ING(16,"审核中"),  
      
    MODIFY_REVIEW_PASS(17,"审核通过"),  
      
    MODIFY_REVIEW_NO_PASS(18,"审核未通过")  
      
    ;  
      
    private final Integer status;  
      
    private final String desc;  
      
    private ConstractMongoStatus(final Integer status,final String desc){  
        this.status = status;  
        this.desc = desc;  
    }  
      
    public static Integer getValue(Integer value) {  
        ConstractMongoStatus[] businessModeEnums = values();  
        for (ConstractMongoStatus businessModeEnum : businessModeEnums) {  
            if (businessModeEnum.status().equals(value)) {  
                return businessModeEnum.status();  
            }  
        }  
        return null;  
    }   
      
    public static String getDesc(Integer value) {  
        ConstractMongoStatus[] businessModeEnums = values();  
        for (ConstractMongoStatus businessModeEnum : businessModeEnums) {  
            if (businessModeEnum.status().equals(value)) {  
                return businessModeEnum.desc();  
            }  
        }  
        return null;  
    }  
      
    public Integer status(){  
        return this.status;  
    }  
      
    public String desc(){  
        return this.desc;  
    }  
      
}