
package com.lideeyunji.tool.framework.yunji.enums;


import com.lideeyunji.tool.framework.yunji.utils.FuncBase;

import java.util.Arrays;
import java.util.Optional;

/**
 * 表单开发-认证类型
 */
public enum DataConfigEnum {

    DATA_AUTH("dataAuth", "数据权限"),
    ;

    private final String type;
    private final String name;

    public String getType() {
        return type;
    }

    public String getName() {
        return name;
    }

    DataConfigEnum(String type, String name) {
        this.type = type;
        this.name = name;
    }

    public static DataConfigEnum getByType(String type) {
        // 使用流来查找匹配的
        Optional<DataConfigEnum> matchingEnum = Arrays.stream(DataConfigEnum.values())
                .filter(dbFormTypeEnum -> FuncBase.equals(dbFormTypeEnum.getType(), type))
                .findFirst(); // findFirst()会返回第一个匹配的元素，或者如果找不到则返回一个空的Optional
        // 检查是否找到了匹配的枚举项
        if (matchingEnum.isPresent()) {
            return matchingEnum.get();
        }
        return null;

    }
}
