package com.yuchen.saas.payment.api.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;
import org.nest.springwrap.core.tool.api.IResultCode;

@Getter
@AllArgsConstructor
public enum SaasPaymentErrorEnums implements IResultCode {

    REFUND_DATA_NOT_EXIST(1000, "退款审核数据不存在"),

    REFUND_RECORD_DATA_NOT_EXIST(1001, "退款记录数据不存在"),

    PAY_DATA_NOT_EXIST(1002, "支付数据不存在"),

    DATA_NOT_EXIST(10000, "数据不存在"),

    APPLY_ID_NOT_EXIST(1004, "应用id不存在"),

    DATA_PRIVACY_PROTECTION_NOT_SELECT(1003, "数据隐私保护，无法查看"),

    WALLET_DATA_NOT_EXIST(10001, "钱包数据不存在"),

    EXPORT_DATA_IS_EMPTY(10002, "导出的数据为空"),

    REFUND_TASK_DATA_IS_EMPTY(10003, "获取退款审核任务失败"),

    REFUND_TASK_IS_OVER(10004, "退款任务已经结束"),

    REFUND_TASK_AUDIT_ERROR(10005, "退款任务审核异常"),

    WALLET_COST_DATA_ERROR(10006, "钱包可用金额不正确，无法发起退款"),

    WALLET_BILL_PAY_DATA_IS_EMPTY(10007, "钱包无充值记录，无法发起退款"),

    PAY_DATA_IS_EMPTY(10008, "无支付记录，无法发起退款"),

    WALLET_REFUND_COST_DATA_ERROR(10009, "钱包退款金额不能大于可退金额，无法发起退款"),

    WALLET_ACCOUNT_DATA_ERROR(10010, "当前账户存在异常，请联系管理员"),

    USER_DATA_ERROR(20001, "用户不存在"),

    WALLET_DATA_ERROR(20002, "钱包数据不存在"),

    WALLET_NOT_AVAILABLE(22222, "当前应用未开通钱包功能"),

    ENUMS_NOT_EXIST_ERROR(20003,"枚举编码不存在"),

    WALLET_FREEZE_COST_DATA_ERROR(20004, "冻结金额不正确，无法进行冻结"),

    WALLET_FREEZE_STATE_DATA_ERROR(20005, "金额状态不正确，无法进行冻结"),

    WALLET_FREEZE_ERROR(20006, "钱包已被冻结，无法使用钱包"),

    WALLET_FREEZE_EXIST_ERROR(20066, "钱包已被冻结，无需继续冻结"),

    WALLET_THAW_EXIST_ERROR(20067, "钱包已被解冻，无需继续解冻"),

    WALLET_FREEZE_COST_EXIST_ERROR(20068, "钱包存在冻结金额，请处理完在进行冻结"),

    WALLET_REFUND_SUBMITTED_ERROR(20007, "退款信息已提交,请勿频繁提交"),

    WALLET_COST_LESS_PAY_COST_ERROR(20008, "钱包可用金额小于支付金额，无法发起钱包支付"),

    ORDER_PAY_SUBMITTED_ERROR(20009, "支付信息已提交,请勿频繁提交"),

    ORDER_SUBMITTED_ERROR(20010, "订单信息已提交,请勿频繁提交"),

    ORDER_REFUND_SUBMITTED_ERROR(20011, "退款信息已提交,请勿频繁提交"),

    VERIFY_REFUND_SUBMITTED_ERROR(20012, "确认退款信息已提交,请勿频繁提交"),

    VERIFY_REFUND_ERROR(20013, "已确认退款,无需再次确认退款"),

    WALLET_FREEZE_COUNT_STATE_DATA_ERROR(20014, "冻结金额时，可用金额计算不能小于0"),

    WALLET_THAW_COUNT_STATE_DATA_ERROR(20015, "解冻金额时, 冻结金额计算不能小于0"),

    ORG_WALLET_TYPE_ERROR(20017, "机构钱包类型参数错误"),

    WALLET_TYPE_ERROR(20018, "钱包类型参数错误"),

    ORG_WALLET_COST_LESS_DISTRIBUTION_COST_ERROR(20007, "机构钱包可用金额小于分配金额，无法发起分配"),

    ORG_CHILD_WALLET_COST_LESS_DEDUCT_COST_ERROR(20008, "机构子钱包可用金额小于扣回金额，无法发起扣回"),

    ORG_CHILD_WALLET_NOT_PAY_ERROR(20009, "机构子钱包无法后台充值和后台扣款"),

    ORG_PARENT_WALLET_MISMATCH_ERROR(20020, "分配的子钱包与当前机构钱包不匹配"),

    WALLET_EXIST_NOT_ADD_ERROR(20021, "钱包已存在，不能重复添加"),

    USER_NOT_BELONG_TO_ORG_ERROR(20022, "该成员不属于机构内部成员"),

    ORG_NOT_EXIST_MATCH_ERROR(20023, "机构匹配不存在，无法匹配成员"),

    USER_NOT_EXIST_ERROR(20024, "用户不存在"),

    WALLET_REFUND_COST_PARAM_ERROR(20025, "钱包退款金额不正确，无法发起退款"),

    BACK_PAY_TO_USER_WALLET_ERROR(20026, "后台充值只限于个人钱包"),

    BACK_DEDUCT_MONEY_TO_USER_WALLET_ERROR(20027, "后台扣款只限于个人钱包"),

    WALLET_CONFIG_IS_EMPTY(30000, "配置为空"),

    DATA_SUBMITTED_ERROR(20028, "信息已提交,请勿频繁提交"),

    WALLET_CONFIG_COST_ERROR(20029, "配置金额错误"),

    ORG_WALLET_EXIST_NOT_ADD_ERROR(20030, "信用代码重复，不能重复添加相同信用代码的机构钱包"),

    APPLET_CONFIG_ERROR(20031, "应用未进行商户配置，请联系管理员"),
    ADD_Vehicle_ERROR(20032, "平台用户车辆更新失败"),
    ;

    private final int code;
    private final String message;

}
