package com.mortals.xhx.common.code;

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

/**
* 事项类型名称（行政许可.行政许可，行政处罚.行政处罚，行政强制.行政强制，行政征收.行政征收，行政给付.行政给付，行政检查.行政检查，行政确认.行政确认，行政奖励.行政奖励，行政裁决.行政裁决，其他行政权力.其他行政权力，主动服务.主动服务，依申请服务.依申请服务，咨询查询.咨询查询，未归类事项.未归类事项）枚举类
*
* @author zxfei
*/
public enum EventTypeShowEnum {
    行政许可("行政许可", "行政许可"),
    行政处罚("行政处罚", "行政处罚"),
    行政强制("行政强制", "行政强制"),
    行政征收("行政征收", "行政征收"),
    行政给付("行政给付", "行政给付"),
    行政检查("行政检查", "行政检查"),
    行政确认("行政确认", "行政确认"),
    行政奖励("行政奖励", "行政奖励"),
    行政裁决("行政裁决", "行政裁决"),
    其他行政权力("其他行政权力", "其他行政权力"),
    主动服务("主动服务", "主动服务"),
    依申请服务("依申请服务", "依申请服务"),
    咨询查询("咨询查询", "咨询查询"),
    未归类事项("未归类事项", "未归类事项");
    private String value;
    private String desc;

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

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

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

    public static EventTypeShowEnum getByValue(String value) {
        for (EventTypeShowEnum eventTypeShowEnum : EventTypeShowEnum.values()) {
            if (eventTypeShowEnum.getValue() == value) {
                return eventTypeShowEnum;
            }
        }
        return null;
    }

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

            }
        }
        return resultMap;
    }
}