package com.smppw.common.pojo.enums.status;

import lombok.Getter;

/**
 * @author Administrator
 */

@Getter
public enum ResultCode implements StatusCode {
    /**
     * 请求成功
     */
    SUCCESS(20000, ""),
    /**
     * 参数错误
     */
    VALIDATE_ERROR(20005, "参数校验失败"),
    ARGS_NOT_READABLE_ERROR(200020, "参数类型不匹配"),

    /**
     * 请求失败
     */
    COMMON_ERROR(20006, "请求失败"),
    /**
     * 权限不足
     */
    PERMISSION_DENIED(20004, "拒绝访问"),
    /**
     * 用户名或密码错误
     */
    AUTH_FAILD(20003, "用户名或密码错误"),
    /**
     * 用户名或密码错误
     */
    LOGIN_TIME_OUT(401, "登录已过期，请重新登录"),
    /**
     * 用户不存在
     */
    USER_NOT_EXIST(20007, "用户不存在"),

    DEL_GROUP_PERMISSION_PLAN_FAILED(20000, "不可删除，已有团队配置该权限方案，请将相关团队变更权限方案后删除此权限方案"),

    DEL_PERSON_PERMISSION_PLAN_FAILED(20000, "不可删除，已有用户配置该权限方案，请将相关用户变更权限方案后删除此权限方案"),

    PERMISSION_PLAN_FAILED_DONT_EXIST(20009, "当前方案不存在"),

    DEL_DEFAULT_PERMISSION_PLAN_FAILED(20000, "当前方案为默认方案，删除失败"),

    CREATE_NEW_GROUP_FAILED(20010, "已存在相同名称的团队，请修改名称"),

    NEW_PERMISSION_PLAN_IS_NULL(20011, "当前选择的权限方案为空，请重新选择权限方案"),

    EDIT_USER_GROUP_FAILED(20012, "该用户为当前所在团队的最后一位管理员，更换团队失败"),

    PERMISSION_PLAN_NAME_EXIST(20013, "方案名重复，请重新输入"),

    EDIT_USER_ROLE_FAILED(20014, "该用户为当前所在团队的最后一位管理员，更换角色失败"),

    DEL_ROLE_FAILED(20000, "该角色已关联至如下用户：{}，请解除该角色与以上用户关联后再删除角色。"),

    ROLE_NAME_EXIST(20016, "角色名称不可重复"),

    COLUMN_NAME_EXIST(20017, "模板列名称不可重复"),

    TEMPLATE_NOT_EXIST(20018, "模板不存在"),

    DUPLICATE_ERROR(20019, "名称已存在"),

    SAVE_SUCCESS(20000, "保存成功"),

    OPERATE_SUCCESS(20000, "操作成功"),

    PRIVATE_FUND_COPY_SUCCESS(20000, "复制成功，复制内容不包含估值信息"),

    UPDATE_SUCCESS(20000, "更新成功"),

    DELETE_SUCCESS(20000, "删除成功"),

    SUBMIT_SUCCESS(20000, "提交成功，感谢您的反馈！"),

    SUBMIT_FAILED(20006, "提交失败,提交策略纠偏申请仅限于私募基金"),

    SUBMIT_FAILED_CONFIRMED(20006, "提交失败,该基金策略已确认"),

    UPDATE_FAILED(20001, "更新失败"),

    ECOSPHERE_UPDATE_FAILED(20001, "请先维护机构信息,再开启展示"),

    DELETE_FAILED(20002, "删除失败"),

    PARSE_FAILED(20020, "解析失败"),

    FILE_SIZE_EXCEED_LIMIT_ERROR(20021, "文件大小超过%s限制"),

    FILE_TYPE_MISMATCH_ERROR(20022, "文件类型不匹配，请下载最新模板"),

    POOL_UPLOAD_MAX_ERROR(20023, "单次导入不能超过1000只"),

    POOL_FUND_EXCEED_MAX_ERROR(20023, "单个%s最大上限为1000只"),

    OUT_CASH_EXCEED_MAX_ERROR(20024, "%s 出金大于可用现金"),

    PORTFOLIO_NOT_EXIST_ERROR(20025, "组合不存在"),

    SAVE_FAILED(20027, "保存失败"),

    /**
     * 请求失败
     */
    SERVER_ERROR(500, "服务器内部错误"),

    /**
     *
     * 特殊处理  前端需要展示 但是不弹框
     */
    DATA_PRE_SHOW_MESSAGE_ERROR(20026,"");

    private final int code;
    private final String msg;

    ResultCode(int code, String msg) {
        this.code = code;
        this.msg = msg;
    }
}
