/**
 * 常量模块
 * @date 2022-03
 * @author 何华东
 */

/**
 * 常量
 */
 export default class Contants {
    /**
     * 是否为调试环境
     * 
     * 成立条件：process.env['NODE_ENV'] = 'DEBUG'，不区分大小写
     * 
     * 中台调试时，IS_DEBUG=true
     */
    static IS_DEBUG = process.env['NODE_ENV']?.toUpperCase() === 'DEBUG';

    /**
     * 是否为本地调试环境
     * 
     * 成立条件：process.env['NODE_ENV'] = 'DEBUG' && process.env['SUB_NODE_ENV'] = 'LOCAL'，不区分大小写
     */
    static IS_LOCAL_DEBUG = Contants.IS_DEBUG && process.env['SUB_NODE_ENV']?.toUpperCase() === 'LOCAL';

    /**
     * 是否为测试环境
     * 
     * 成立条件：process.env['NODE_ENV'] = 'TEST'，不区分大小写
     * 
     * 中台部署到测试环境时，IS_TEST=true
     */
    static IS_TEST = process.env['NODE_ENV']?.toUpperCase() === 'TEST';

    /**
     * 是否为生产环境
     * 
     * 成立条件：process.env['NODE_ENV'] = 'PROD'，不区分大小写
     * 
     * 中台部署到正式环境时，IS_PROD=true
     */
    static IS_PROD = process.env['NODE_ENV']?.toUpperCase() === 'PROD';

    /**
     * 统一API根地址(测试环境)
     */
    static TEST_UNITE_API_BASE_URL = 'https://tsktapps.keytop.cn/unite-api';

    /**
     * 统一API根地址(生产环境)
     */
    static PROD_UNITE_API_BASE_URL = 'http://kp-open.keytop.cn/unite-api';

    /**
     * 统一API根地址
     * 
     * 根据node运行环境自动配置
     */
    static UNITE_API_BASE_URL = Contants.IS_PROD ? Contants.PROD_UNITE_API_BASE_URL : Contants.TEST_UNITE_API_BASE_URL;

    /**
     * 独立服务根地址(测试环境)
     */
    static TEST_SS_SERVICE_BASE_URL = 'https://ss-service-test.keytop.cn';

    /**
     * 独立服务根地址(生产环境)
     */
    static PROD_SS_SERVICE_BASE_URL = 'https://ss-service.keytop.cn';

    /**
     * 独立服务根地址
     * 
     * 根据配置的node环境自动配置
     */
    static SS_SERVICE_BASE_URL = Contants.IS_PROD ? Contants.PROD_SS_SERVICE_BASE_URL : Contants.TEST_SS_SERVICE_BASE_URL;

    /**
     * 前台服务根地址(测试环境)
     */
    static TEST_FMS_SERVICE_BASE_URL = 'https://fms-service-test.keytop.cn';

    /**
     * 前台服务根地址(生产环境)
     */
    static PROD_FMS_SERVICE_BASE_URL = 'https://fms-service.keytop.cn';

    /**
     * 前台服务根地址
     * 
     * 根据配置的node环境自动配置
     */
    static FMS_SERVICE_BASE_URL = Contants.IS_PROD ? Contants.PROD_FMS_SERVICE_BASE_URL : Contants.TEST_FMS_SERVICE_BASE_URL;

    /**
     * 代理服务根地址(测试环境)
     */
    static TEST_PROXY_BASE_URL = 'https://service-proxy-test.keytop.cn';

    /**
     * 代理服务根地址(生产环境)
     */
    static PROD_PROXY_BASE_URL = 'https://service-proxy.keytop.cn';

    /**
     * 代理服务根地址
     * 
     * 根据配置的node环境自动配置
     */
    static PROXY_API_BASE_URL = Contants.IS_PROD ? Contants.PROD_PROXY_BASE_URL : Contants.TEST_PROXY_BASE_URL;
}

export { Contants }
