package com.zhiqiyun.open.core.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.zhiqiyun.open.core.models.settings.SystemConfig;
import com.zhiqiyun.open.core.models.settings.SystemConfigItem;

import java.math.BigDecimal;
import java.util.List;

public interface SystemConfigService extends IService<SystemConfig> {
    /**
     * 查询配置项
     *
     * @param configKey
     * @return
     */
    List<SystemConfigItem> findAllItems(String configKey);

    /**
     * 保存配置
     *
     * @param config
     * @param listItems
     */
    void updateConfig(SystemConfig config, List<SystemConfigItem> listItems);



    /**
     * 查询一个Boolean配置
     *
     * @param configKey
     * @param itemKey
     * @return
     */
    boolean getBoolValue(String configKey, String itemKey);

    /**
     * 查询数字配置
     *
     * @param configKey
     * @param itemKey
     * @return
     */
    BigDecimal getNumberValue(String configKey, String itemKey);

    /**
     * 查询字符配置
     *
     * @param configKey
     * @param itemKey
     * @return
     */
    String getStringValue(String configKey, String itemKey);
}
