package com.qiaoba.module.tenant.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.qiaoba.api.tenant.entity.SysTenantDatasource;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 租户数据源 数据层
 *
 * @author ailanyin
 * @version 1.0
 * @since 2023/6/7 14:47
 */
public interface SysTenantDatasourceMapper extends BaseMapper<SysTenantDatasource> {

    /**
     * 通过IP查询租户数据源信息 todo select *
     *
     * @param tenantId 租户ID
     * @param ip       ip
     * @return 数据源信息
     */
    SysTenantDatasource selectByIp(@Param("tenantId") String tenantId, @Param("ip") String ip);

    /**
     * 将租户下的除datasourceId之外的其他数据源设置为备用
     *
     * @param tenantId  tenantId
     * @param excludeId 排除Id
     * @param code      否
     */
    void setBackupDatasourceExcludeId(@Param("tenantId") String tenantId, @Param("excludeId") String excludeId, @Param("code") String code);
}
