package net.northking.cctp.scriptcase.enums;

import net.northking.cctp.common.exception.PlatformError;

public enum ElementLibraryError implements PlatformError {
    //元素库目录管理
    TREE_NAME_VALID("目录名称不可包含【/】或者【\\】"),
    TREE_NO_EXISTS("当前目录不存在，请刷新列表"),
    TREE_NAME_EXISTS("当前目录名称已存在"),
    TREE_ADD_DATA_EXISTS("所选父目录存在数据，不可新建目录"),
    TREE_DEL_DIR_EXISTS("该目录下有子目录，不允许删除！"),
    TREE_DEL_DATA_EXISTS("该目录下存在数据，不允许删除！"),
    TREE_MOVE_DATA_EXISTS("目标目录存在数据，不可拖拽"),
    TREE_LEVEL_LIMIT("超过树节点层级上限10级"),
    //元素库管理
    ELEMENT_FILE_IS_NULL("上传图片不存在，请重试"),
    ELEMENT_FILE_FORMART_IS_ERROR("上传图像文件格式不正确！"),
    ELEMENT_FILE_UPLOAD_IS_FAIL("上传图像文件失败"),
    ELEMENT_DIR_IS_VALID("所选目录非存在的叶子节点，不可新建元素"),
    ELEMENT_MOVE_NO_LEAF("请选择叶子节点目录移动！"),
    ELEMENT_VALUE_IS_TOO_LONG("元素属性值超出长度限制！"),
    ELEMENT_NO_EXISTS("当前元素不存在，请刷新列表"),
    ELEMENT_FETCH_TYPE_NO_EXISTS("元素获取方式为空，请检查");
    private static final int START_CODE = 220000;

    private final Integer code;
    private final String msg;

    ElementLibraryError(Integer code, String msg) {
        this.code = code;
        this.msg = msg;
    }

    ElementLibraryError(String msg) {
        this.code = ordinal() + START_CODE;
        this.msg = msg;
    }

    @Override
    public Integer getCode() {
        return code;
    }

    @Override
    public String getMsg() {
        return msg;
    }
}
