package com.qdb.sdk;

/**
 * 企得宝ERP SDK 异常类
 * <p>
 * 封装 SDK 调用过程中发生的所有异常，包括网络异常、业务异常、签名异常等。
 * </p>
 *
 * @author qdb-sdk
 * @version 1.0.0
 */
public class QdbException extends Exception {

    /**
     * 错误编码，对应企得宝API返回的 errorCode
     */
    private String errorCode;

    /**
     * 构造方法
     *
     * @param message 异常信息
     */
    public QdbException(String message) {
        super(message);
    }

    /**
     * 构造方法
     *
     * @param message 异常信息
     * @param cause   原始异常
     */
    public QdbException(String message, Throwable cause) {
        super(message, cause);
    }

    /**
     * 构造方法
     *
     * @param errorCode 错误编码
     * @param message   异常信息
     */
    public QdbException(String errorCode, String message) {
        super(message);
        this.errorCode = errorCode;
    }

    /**
     * 获取错误编码
     *
     * @return 错误编码
     */
    public String getErrorCode() {
        return errorCode;
    }
}
