package com.xinelu.manage.mapper.systemsettingsinfo;


import com.xinelu.manage.domain.systemsettingsinfo.SystemSettingsInfo;

import java.util.List;


/**
 * 泉医到家平台系统业务设置信息Mapper接口
 *
 * @author xinyilu
 * @date 2023-02-23
 */
public interface SystemSettingsInfoMapper {
    /**
     * 查询泉医到家平台系统业务设置信息
     *
     * @param id 泉医到家平台系统业务设置信息主键
     * @return 泉医到家平台系统业务设置信息
     */
    SystemSettingsInfo selectSystemSettingsInfoById(Long id);

    /**
     * 查询泉医到家平台系统业务设置信息列表
     *
     * @param systemSettingsInfo 泉医到家平台系统业务设置信息
     * @return 泉医到家平台系统业务设置信息集合
     */
    List<SystemSettingsInfo> selectSystemSettingsInfoList(SystemSettingsInfo systemSettingsInfo);

    /**
     * 新增泉医到家平台系统业务设置信息
     *
     * @param systemSettingsInfo 泉医到家平台系统业务设置信息
     * @return 结果
     */
    int insertSystemSettingsInfo(SystemSettingsInfo systemSettingsInfo);

    /**
     * 修改泉医到家平台系统业务设置信息
     *
     * @param systemSettingsInfo 泉医到家平台系统业务设置信息
     * @return 结果
     */
    int updateSystemSettingsInfo(SystemSettingsInfo systemSettingsInfo);

    /**
     * 删除泉医到家平台系统业务设置信息
     *
     * @param id 泉医到家平台系统业务设置信息主键
     * @return 结果
     */
    int deleteSystemSettingsInfoById(Long id);

    /**
     * 批量删除泉医到家平台系统业务设置信息
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    int deleteSystemSettingsInfoByIds(Long[] ids);

    /**
     * 根据类型查询规则信息
     *
     * @param settingType 积分规则类型
     * @return 规则信息
     */
    SystemSettingsInfo getSystemSettingsInfoByType(String settingType);

    /**
     *根据settingsType类型查询数量
     *
     *
     * @param settingsType 系统设置类型
     * @return int
     **/
    int selectSystemSettingsInfoByCount(String settingsType);
}
