package com.muyu.system.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.muyu.common.core.web.page.PageQueryModel;
import com.muyu.system.domain.SysConfig;
import com.muyu.system.domain.model.SysConfigPageQueryModel;

import java.util.List;

/**
 * @author DongZl
 * @description: 配置plus业务层
 * @Date 2023-11-13 上午 10:06
 */
public interface SysConfigService extends IService<SysConfig> {


    /**
     * 分页查询
     * @param pageQueryModel 查询模型
     * @return 查询结果
     */
    PageQueryModel<SysConfig> pageQuery (SysConfigPageQueryModel pageQueryModel);

    /**
     * 通过Key进行查询值
     * @param configKey
     * @return
     */
    String selectConfigByKey (String configKey);

    /**
     * 检测参数是否唯一
     * @param configKey 配置唯一Key
     * @return 重复：true 不重复：false
     */
    boolean checkConfigKeyUnique (String configKey);

    /**
     * 刷新缓存
     */
    void resetConfigCache ();

    /**
     * 清空参数缓存数据
     */
    public void clearConfigCache ();

    /**
     * 加载参数缓存数据
     */
    public void loadingConfigCache ();
}
