package com.mortals.xhx.common.code;

import java.util.LinkedHashMap;
import java.util.Map;

/**
* 设备类型（1.呼叫器，2.窗口屏, 3.评价器，4.集中屏, 5.排号机，6.im设备, 7.样表设备，8.取件柜, 9.信息发布,10.导视机,11.开标室设备,12.背靠背）枚举类
*
* @author zxfei
*/
public enum DeviceTypeEnum {
    呼叫器(1, "呼叫器"),
    窗口屏(2, "窗口屏"),
    评价器(3, "评价器"),
    集中屏(4, "集中屏"),
    排号机(5, "排号机"),
    im设备(6, "im设备"),
    样表设备(7, "样表设备"),
    取件柜(8, "取件柜"),
    信息发布(9, "信息发布"),
    导视机(10, "导视机"),
    开标室设备(11, "开标室设备"),
    背靠背(12, "背靠背"),
    无感一码通(13, "无感一码通"),
    桌面式自助终端(14, "桌面式自助终端"),
    可视化触控大屏(15, "可视化触控大屏"),
    人脸识别考勤机(16, "人脸识别考勤机"),
    ;
    private Integer value;
    private String desc;

    DeviceTypeEnum(Integer value, String desc) {
        this.value = value;
        this.desc = desc;
    }

    public Integer getValue() {
        return this.value;
    }

    public String getDesc() {
        return this.desc;
    }

    public static DeviceTypeEnum getByValue(Integer value) {
        for (DeviceTypeEnum deviceTypeEnum : DeviceTypeEnum.values()) {
            if (deviceTypeEnum.getValue() == value) {
                return deviceTypeEnum;
            }
        }
        return null;
    }

    /**
    * 获取Map集合
    *
    * @param eItem 不包含项
    * @return
    */
    public static Map<String, String> getEnumMap(Integer... eItem) {
        Map<String, String> resultMap = new LinkedHashMap<>();
        for (DeviceTypeEnum item : DeviceTypeEnum.values()) {
            try {
                boolean hasE = false;
                for (Integer e : eItem) {
                    if (item.getValue() == e) {
                        hasE = true;
                        break;
                    }
                }
                if (!hasE) {
                    resultMap.put(item.getValue() + "", item.getDesc());
                }
            } catch (Exception ex) {

            }
        }
        return resultMap;
    }
}