package com.jeequan.jeepay.core.service;

import cn.hutool.crypto.symmetric.SM4;
import com.jeequan.jeepay.core.model.*;

public interface ISysConfigService {

    /** 获取应用的配置参数 **/
    DBApplicationConfig getDBApplicationConfig();

    /** 获取公众号消息配置参数 **/
    DBWxMpConfig getDBWxMpConfig();

    /** 获取OCR配置参数 **/
    DBOCRConfig getOcrConfig();

    /** 获取OSS配置参数 **/
    DBOSSConfig getOssConfig();

    /** 获取OSS配置参数 **/
    DBOEMConfig getOemConfig();

    /** 获取app  push配置参数 **/
    DBAppPushConfig getDBAppPushConfig();

    /** 获取百度语音配置参数 **/
    DBBaiduBceConfig getDBBaiduBceConfig();

    /** 获取隐私政策与服务协议配置参数 **/
    DBTreatyConfig getTreatyConfig();

    /** 高德地图 配置参数 **/
    DBApiMapConfig getDBApiMapConfig();

    /** 系统安全 配置参数 **/
    DBsecurityConfig getDBSecurityConfig();

    /** 默认配置 配置参数 **/
    DBDefaultConfig getDBDefaultConfig();

    /** 获取SM4对象（http请求参数相关） **/
    SM4 getHttpMessageSM4();

    /** 获取邮件配置参数 **/
    DBEmailConfig getEmailConfig();

    /** 获取营销 配置参数 **/
    DBMarketingConfig getDBMarketingConfig();

    /**
     * 获取付款配置参数
     * @return
     */
    DBPaymentConfig getDbPaymentConfig();


    /**
     * 获取平台营销红包是否配置
     * @return
     */
    Boolean getDbMarketPlatRedPacket();

    /**
     * 生成token
     * @param type
     * @param id
     * @param amt
     * @return
     */
    String genQrToken(Byte type, String id,Long amt);
}
