package com.sunyard.chsm.constant;

/**
 * @author:fyc
 * @date:2020/3/17
 * @description: 业务参数key值常量
 */
public interface ParamConfKeyConstant {

    /**
     * 白名单开关
     */
    String IP_WHITELIST_SWITCH = "ipWhitelistSwitch";

    String TMK_INIT = "tmk_init";

    String ENABLE_SOFT_DEVICE = "enable_soft_device";

    String SOFT_ENC_TMK = "soft_enc_tmk";

    /**
     * 通讯超时时间
     */
    String COMMUNICATE_TIME_OUT = "communicateTimeOut";

    /**
     * 心跳检测时间
     */
    String HEART_DETECT_TIME = "heartDetectTime";

    /**
     * 心跳包
     */
    String HEART_PACKAGE = "heartPackage";

    /**
     * ftp传输路径设置
     */
    String FTP_UPLOAD_PATH = "ftpUploadPath";

    /**
     * B端界面超时时间
     */
    String B_INTERFACE_TIMEOUT = "BInterfaceTimeOut";

    /**
     * 加密机操作审批
     */
    String ENCRYPTION_MACHINE_APPROVAL = "encryptionMachineApproval";

    /**
     * 秘钥操作审批
     */
    String SECRET_KEY_APPROVAL = "secretKeyApproval";

    /**
     * 登入模式
     */
    String LOGIN_METHOD = "loginMethod";

    /**
     * 是否开启图形码登入
     */
    String IS_USE_GRAPHIC_CODE = "isUseGraphicCode";

    /**
     * IP白名单配置类目数值
     */
    Integer IP_WHITELIST_ITEM = 0;

    /**
     * 通讯参数类目数值
     */
    Integer COMMUNICATE_PARAM_ITEM = 1;

    /**
     * 终端UI参数类目数值
     */
    Integer TERMINAL_PARAM_ITEM = 2;

    /**
     * 权限审批类目数值
     */
    Integer AUTHORITY_APPROVAL_PARAM_ITEM = 3;

    /**
     * 登入选项类目数值
     */
    Integer LOGIN_PARAM_ITEM = 4;

    /**
     * 审批结果true
     */
    String APPROVAL_TRUE = "true";

    /**
     * 审批结果false
     */
    String APPROVAL_FALSE = "false";

    /**
     * 调试模式类目数值
     */
    Integer SYS_PARAM_ITEM = 7;

    /**
     * 调试模式开关
     */
    String SYS_DEBUG_SWITCH = "sysDebugSwitch";

    /**
     * 系统初始化配置文件路劲
     */
    String SYS_PARAM_CONFIG_FILE_PATH = System.getProperty("user.dir") + "/config/sysParam.config.json";

    /**
     * 调试模式开关枚举
     */
    enum SYS_DEBUG_SWITCH_VALUE {
        DEV("dev"), CONFIG("config"), PRODUCT("product");
        private String value;

        private SYS_DEBUG_SWITCH_VALUE(String value) {
            this.value = value;
        }

        public String getValue() {
            return value;
        }
    }

}
