package org.ts.ddcs.common.enums;

/***
 * Date:2022/3/9
 * Title:规约枚举类
 * Description：对本文件的详细描述，原则上不能少于30字
 * @author swp
 * @mender：（文件的修改者，文件创建者之外的人）
 * @version 1.0
 * Remark：认为有必要的其他信息
 */
public enum AgreementEnum {

    /**
     * 水文规约
     */
    AGREEMENT_SW(0, "SW2014"),

    /**
     * 水资源规约
     */
    AGREEMENT_SZY(1, "SZY2012"),

    /**
     * 水文扩展规约 测站编码为16位
     */
    AGREEMENT_SW_EXT(2, "SWEXT2014"),

    /**
     * 水文扩展规约 内蒙 特殊数据处理
     */
    AGREEMENT_SW_NM_EXT(3, "SWNMEXT2014"),

    /**
     * DTU透传规约
     */
    AGREEMENT_DTU(4, "DTU"),

    /**
     * 交通808规约
     */
    AGREEMENT_JT808(5, "JT808"),
    ;

    private int code;

    private String name;

    AgreementEnum(int code, String name) {
        this.code = code;
        this.name = name;
    }

    public int getCode() {
        return code;
    }

    public void setCode(int code) {
        this.code = code;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    /**
     * 根据CODE查名称
     *
     * @param code
     * @return
     */
    public static String getName(int code) {
        for (AgreementEnum point : AgreementEnum.values()) {
            if (point.code == code) {
                return point.name;
            }
        }
        return "";
    }

    /**
     * 根据名称查代码
     * @param name
     * @return
     */
    public static int getCode(String name) {
        for (AgreementEnum point : AgreementEnum.values()) {
            if (point.name.equals(name)) {
                return point.code;
            }
        }
        return -1;
    }
}
