package com.zt.plat.module.qms.iot.tcpserver.core;

/**
 * <b>Command</b>
 * 命令
 * <p>更新历史：</p>
 * <pre> 版本         更新时间            更新者        更新内容
 * V1.0      2021-6-28          王兴荣         Add</pre>
 * <b>Copyright (C)  云南志者竟成科技有限公司</b> 
 * @author 王兴荣 &lt;xingrong_wang@will-way.cn&gt;
 * @version V1.0 
 * @since 2021-6-28
 */
public enum Command {
    
    REGISTER("register", "注册"),
    REPLY_REGISTER("replyRegister", "回复注册"),
    DEVICE_STATUS("deviceStatus", "设备状态"),
    DEVICE_DATA("deviceData", "设备数据"),
    CONTROL_DEVICE("controlDevice", "控制设备"),
    REPLY_CONTROL_DEVICE("replyControlDevice", "设备控制"),
    LOG_DATA("logData", "日志数据"),
    CHECK_CONTROL("checkControl", "检查计量点由谁控制");

    /** 名称 **/
    private String name;
    
    /** 描述 **/
    private String desc;
    
    private Command(String name, String desc) {
        this.name = name;
        this.desc = desc;
    }

    public String getName() {
        return name;
    }

    public String getDesc() {
        return desc;
    }
    
    /**
     * 根据名称获取类型枚举
     * @param name 名称
     * @return
     */
    public static Command getByName(String name) {
        Command[] values = Command.values();
        for (Command command : values) {
            if (command.getName().equalsIgnoreCase(name)) {
                return command;
            }
        }
        return null;
    }
}
