# AI配置管理模块 ## 概述 基于t_ai_config表结构生成的完整AI配置管理模块,提供AI接口配置的增删改查功能。 ## 生成的文件 ### 1. 实体类 - `com.emotion.entity.AiConfig` - AI配置实体类,继承BaseEntity ### 2. 数据访问层 - `com.emotion.mapper.AiConfigMapper` - MyBatis-Plus Mapper接口 ### 3. 业务逻辑层 - `com.emotion.service.AiConfigService` - 服务接口 - `com.emotion.service.impl.AiConfigServiceImpl` - 服务实现类 ### 4. 控制器层 - `com.emotion.controller.AiConfigController` - REST API控制器 ### 5. 请求对象 - `com.emotion.dto.request.aiconfig.AiConfigCreateRequest` - 创建请求 - `com.emotion.dto.request.aiconfig.AiConfigUpdateRequest` - 更新请求 - `com.emotion.dto.request.aiconfig.AiConfigPageRequest` - 分页查询请求 - `com.emotion.dto.request.aiconfig.AiConfigEnableRequest` - 启用/禁用请求 - `com.emotion.dto.request.aiconfig.AiConfigDefaultRequest` - 默认配置设置请求 ### 6. 响应对象 - `com.emotion.dto.response.aiconfig.AiConfigResponse` - 响应对象 ## API接口列表 ### 基础CRUD操作 - `GET /aiConfig/page` - 分页查询AI配置 - `GET /aiConfig/detail?id={id}` - 根据ID获取AI配置详情 - `POST /aiConfig/create` - 创建AI配置 - `PUT /aiConfig/update` - 更新AI配置 - `DELETE /aiConfig/delete?id={id}` - 删除AI配置 ### 条件查询接口 - `GET /aiConfig/byConfigType?configType={type}` - 根据配置类型查询 - `GET /aiConfig/byProvider?provider={provider}` - 根据服务提供商查询 - `GET /aiConfig/byUsageScenario?usageScenario={scenario}` - 根据使用场景查询 - `GET /aiConfig/byEnvironment?environment={env}` - 根据环境查询 - `GET /aiConfig/byConfigKey?configKey={key}` - 根据配置键值查询 ### 状态管理接口 - `GET /aiConfig/enabled` - 查询已启用的配置 - `GET /aiConfig/disabled` - 查询已禁用的配置 - `GET /aiConfig/default` - 查询默认配置 - `PUT /aiConfig/enable?id={id}` - 启用配置 - `PUT /aiConfig/disable?id={id}` - 禁用配置 - `PUT /aiConfig/setDefault?id={id}` - 设置为默认配置 - `PUT /aiConfig/unsetDefault?id={id}` - 取消默认配置 ### 智能查询接口 - `GET /aiConfig/bestConfig?usageScenario={scenario}&environment={env}` - 查询最优配置 ### 统计接口 - `GET /aiConfig/countEnabled` - 统计已启用配置数量 - `GET /aiConfig/countDisabled` - 统计已禁用配置数量 - `GET /aiConfig/countDefault` - 统计默认配置数量 - `GET /aiConfig/countByConfigType?configType={type}` - 根据配置类型统计数量 - `GET /aiConfig/countByProvider?provider={provider}` - 根据服务提供商统计数量 ## 特性 ### 1. 遵循项目规范 - 继承BaseEntity,包含公共字段 - 使用雪花算法生成ID - 使用LambdaQueryWrapper构造查询条件 - 统一的异常处理和返回格式 ### 2. 安全特性 - API Token脱敏显示 - 参数校验 - 逻辑删除 ### 3. 查询优化 - 支持关键词搜索 - 支持多条件过滤 - 支持排序 - 支持分页 ### 4. 业务功能 - 配置启用/禁用管理 - 默认配置设置 - 智能配置选择(根据场景和环境) - 优先级排序 ## 使用示例 ### 创建AI配置 ```json POST /aiConfig/create { "configName": "Coze聊天配置", "configKey": "coze_chat_default", "configType": "coze", "provider": "coze", "apiBaseUrl": "https://api.coze.cn", "apiToken": "your_api_token", "usageScenario": "chat", "isEnabled": 1, "environment": "production" } ``` ### 分页查询 ``` GET /aiConfig/page?current=1&size=10&keyword=coze&configType=coze&isEnabled=1 ``` ### 查询最优配置 ``` GET /aiConfig/bestConfig?usageScenario=chat&environment=production ``` ## 注意事项 1. 所有接口都遵循统一的返回格式Result 2. API Token在响应中会进行脱敏处理 3. 删除操作使用逻辑删除 4. 配置键值(configKey)必须唯一 5. 最优配置查询会优先返回默认配置,然后按优先级排序