package com.yushu.system.service;

import com.yushu.system.domain.AiService;
import java.util.List;

/**
 * AI服务Service接口
 * 
 * @author yushu
 * @date 2024-12-12
 */
public interface IAiServiceService {
    
    /**
     * 查询AI服务（API Key已脱敏，用于前端展示）
     */
    AiService selectAiServiceByServiceId(Long serviceId);

    /**
     * 获取完整的服务配置（含解密后的API Key，仅内部调用）
     */
    AiService selectFullServiceById(Long serviceId);

    /**
     * 根据服务代码查询
     */
    AiService selectAiServiceByServiceCode(String serviceCode);

    /**
     * 查询AI服务列表
     */
    List<AiService> selectAiServiceList(AiService aiService);

    /**
     * 查询已启用的AI服务列表（前端下拉框使用）
     */
    List<AiService> selectEnabledServiceList();

    /**
     * 新增AI服务
     */
    int insertAiService(AiService aiService);

    /**
     * 修改AI服务
     */
    int updateAiService(AiService aiService);

    /**
     * 删除AI服务
     */
    int deleteAiServiceByServiceId(Long serviceId);

    /**
     * 批量删除AI服务
     */
    int deleteAiServiceByServiceIds(Long[] serviceIds);

    /**
     * 获取默认服务
     */
    AiService selectDefaultService();

    /**
     * 设置默认服务
     */
    int setDefaultService(Long serviceId);
}
