package com.sptg.permissions.api.enums;

import com.sptg.common.core.beans.ResultBean;
import lombok.Getter;

/**
 * title: PermissionsEnum
 * package: com.sptg.permissions.api.enums
 * description: 权限返回值
 *
 *                  
 *                 
 */
@Getter
public enum PermissionsEnum implements ResultBean.BaseResultEnum {

    /* ---------------------------------------------- 400.数据相关异常 ---------------------------------------------- */

    /**
     * 菜单Token已存在
     */
    MENU_TOKEN_IS_EXIST("400.1","菜单Token已存在"),

    /**
     * 菜单含有子节点,不能被删除
     */
    MENU_HAVE_CLIENT("400.2","此菜单含有子节点,请先删除子节点"),

    /**
     * 父级机构不存在
     */
    PARENT_ORGANIZATION_NOT_EXIST("400.3","父级机构不存在"),

    /**
     * 机构含有子节点,不能被删除
     */
    ORGANIZATION_HAVE_CLIENT("400.4","该机构拥有下级机构，请先删除所有下级机构"),

    /**
     * 上级机构被禁用
     */
    ORGANIZATION_PARENT_DISABLE("400.5","上级机构被禁用"),

    /**
     * 角色已存在
     */
    ROLE_IS_EXIST("400.6","该角色名已存在，请重新添加其它名称"),

    /**
     * 该角色已绑定用户
     */
    ROLE_WAS_USE("400.7","该角色已绑定用户，请先解除所有绑定用户"),

    /**
     * 登陆名已存在
     */
    LOGIN_NAME_IS_EXIST("400.8","该登录名已存在，请重新添加其它名称"),

    /* ---------------------------------------------- 401.登陆相关异常 ---------------------------------------------- */

    /**
     * 认证失败
     */
    AUTHENTICATION_ERROR("401.1","用户名或密码错误"),

    AUTHENTICATION_OAUTH_ERROR("401.2","用户授权登录失败"),

    /* ---------------------------------------------- 403.数据权限异常 ---------------------------------------------- */

    /**
     * 当前用户机构不可用
     */
    USER_ORGANIZATION_NOT_ENABLE("403.1","用户机构不可用"),

    /**
     * 账号不可用
     */
    USER_NOT_ENABLE("403.2","账号不可用")
    ;


    /**
     * 状态吗
     */
    private String code;

    /**
     * 消息
     */
    private String msg;

    PermissionsEnum(String code, String msg) {
//        this.code = "smart-house-permissions" + "." + code;
        this.code = code;
        this.msg = msg;
    }
}
