package com.zjty.inspect.enums;

import io.swagger.annotations.ApiModel;
import lombok.Getter;

import java.util.HashMap;
import java.util.Map;

@ApiModel(value = "打包方式")
@Getter
public enum OpgaEnum {
    NONE(-1,"无"),
    SETUPINSHEILD(1,"SetUp/InstallSheild封装"),
    MAVEN(2,"Maven打包方式"),
    GRADLE(3,"Gradle打包方式"),
    QITA(4,"其他：请在备注中填写,如需填写多个,请以逗号分隔");

    private Integer code;
    private String name;
    private static Map<String,OpgaEnum> opgaEnumMap=new HashMap<>();
    private static Map<Integer,OpgaEnum> opgaEnumCodeMap=new HashMap<>();

    static {
        for (OpgaEnum opgaEnum : OpgaEnum.values()) {
            opgaEnumMap.put(opgaEnum.getName(),opgaEnum);
            opgaEnumCodeMap.put(opgaEnum.getCode(),opgaEnum);
        }
    }

    OpgaEnum(Integer code, String name) {
        this.code = code;
        this.name = name;
    }

    public static OpgaEnum getByName(String name){
        OpgaEnum opgaEnum = opgaEnumMap.get(name);
        if(opgaEnum==null){
            return NONE;
        }
        return opgaEnum;
    }
    public static OpgaEnum getByCode(Integer code){
        OpgaEnum opgaEnum = opgaEnumCodeMap.get(code);
        if(opgaEnum==null){
            return NONE;
        }
        return opgaEnum;
    }
}
