mirror of
https://github.com/xinnan-tech/xiaozhi-esp32-server.git
synced 2026-07-29 17:23:57 +08:00
提取重复代码合并
This commit is contained in:
+27
-50
@@ -133,35 +133,40 @@ public class AgentServiceImpl extends BaseServiceImpl<AgentDao, AgentEntity> imp
|
|||||||
QueryWrapper<AgentEntity> wrapper = new QueryWrapper<>();
|
QueryWrapper<AgentEntity> wrapper = new QueryWrapper<>();
|
||||||
wrapper.eq("user_id", userId);
|
wrapper.eq("user_id", userId);
|
||||||
List<AgentEntity> agents = agentDao.selectList(wrapper);
|
List<AgentEntity> agents = agentDao.selectList(wrapper);
|
||||||
return agents.stream().map(agent -> {
|
return agents.stream().map(this::buildAgentDTO).collect(Collectors.toList());
|
||||||
AgentDTO dto = new AgentDTO();
|
}
|
||||||
dto.setId(agent.getId());
|
|
||||||
dto.setAgentName(agent.getAgentName());
|
|
||||||
dto.setSystemPrompt(agent.getSystemPrompt());
|
|
||||||
|
|
||||||
// 获取 TTS 模型名称
|
/**
|
||||||
dto.setTtsModelName(modelConfigService.getModelNameById(agent.getTtsModelId()));
|
* 将AgentEntity转换为AgentDTO
|
||||||
|
*/
|
||||||
|
private AgentDTO buildAgentDTO(AgentEntity agent) {
|
||||||
|
AgentDTO dto = new AgentDTO();
|
||||||
|
dto.setId(agent.getId());
|
||||||
|
dto.setAgentName(agent.getAgentName());
|
||||||
|
dto.setSystemPrompt(agent.getSystemPrompt());
|
||||||
|
|
||||||
// 获取 LLM 模型名称
|
// 获取 TTS 模型名称
|
||||||
dto.setLlmModelName(modelConfigService.getModelNameById(agent.getLlmModelId()));
|
dto.setTtsModelName(modelConfigService.getModelNameById(agent.getTtsModelId()));
|
||||||
|
|
||||||
// 获取 VLLM 模型名称
|
// 获取 LLM 模型名称
|
||||||
dto.setVllmModelName(modelConfigService.getModelNameById(agent.getVllmModelId()));
|
dto.setLlmModelName(modelConfigService.getModelNameById(agent.getLlmModelId()));
|
||||||
|
|
||||||
// 获取记忆模型名称
|
// 获取 VLLM 模型名称
|
||||||
dto.setMemModelId(agent.getMemModelId());
|
dto.setVllmModelName(modelConfigService.getModelNameById(agent.getVllmModelId()));
|
||||||
|
|
||||||
// 获取 TTS 音色名称
|
// 获取记忆模型名称
|
||||||
dto.setTtsVoiceName(timbreModelService.getTimbreNameById(agent.getTtsVoiceId()));
|
dto.setMemModelId(agent.getMemModelId());
|
||||||
|
|
||||||
// 获取智能体最近的最后连接时长
|
// 获取 TTS 音色名称
|
||||||
dto.setLastConnectedAt(deviceService.getLatestLastConnectionTime(agent.getId()));
|
dto.setTtsVoiceName(timbreModelService.getTimbreNameById(agent.getTtsVoiceId()));
|
||||||
|
|
||||||
// 获取设备数量
|
// 获取智能体最近的最后连接时长
|
||||||
dto.setDeviceCount(getDeviceCountByAgentId(agent.getId()));
|
dto.setLastConnectedAt(deviceService.getLatestLastConnectionTime(agent.getId()));
|
||||||
|
|
||||||
return dto;
|
// 获取设备数量
|
||||||
}).collect(Collectors.toList());
|
dto.setDeviceCount(getDeviceCountByAgentId(agent.getId()));
|
||||||
|
|
||||||
|
return dto;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -511,34 +516,6 @@ public class AgentServiceImpl extends BaseServiceImpl<AgentDao, AgentEntity> imp
|
|||||||
List<AgentEntity> agentEntities = baseDao.selectList(queryWrapper);
|
List<AgentEntity> agentEntities = baseDao.selectList(queryWrapper);
|
||||||
|
|
||||||
// 转换为DTO并设置所有必要字段
|
// 转换为DTO并设置所有必要字段
|
||||||
return agentEntities.stream().map(agent -> {
|
return agentEntities.stream().map(this::buildAgentDTO).collect(Collectors.toList());
|
||||||
AgentDTO dto = new AgentDTO();
|
|
||||||
dto.setId(agent.getId());
|
|
||||||
dto.setAgentName(agent.getAgentName());
|
|
||||||
dto.setSystemPrompt(agent.getSystemPrompt());
|
|
||||||
|
|
||||||
// 获取 TTS 模型名称
|
|
||||||
dto.setTtsModelName(modelConfigService.getModelNameById(agent.getTtsModelId()));
|
|
||||||
|
|
||||||
// 获取 LLM 模型名称
|
|
||||||
dto.setLlmModelName(modelConfigService.getModelNameById(agent.getLlmModelId()));
|
|
||||||
|
|
||||||
// 获取 VLLM 模型名称
|
|
||||||
dto.setVllmModelName(modelConfigService.getModelNameById(agent.getVllmModelId()));
|
|
||||||
|
|
||||||
// 获取记忆模型名称
|
|
||||||
dto.setMemModelId(agent.getMemModelId());
|
|
||||||
|
|
||||||
// 获取 TTS 音色名称
|
|
||||||
dto.setTtsVoiceName(timbreModelService.getTimbreNameById(agent.getTtsVoiceId()));
|
|
||||||
|
|
||||||
// 获取智能体最近的最后连接时长
|
|
||||||
dto.setLastConnectedAt(deviceService.getLatestLastConnectionTime(agent.getId()));
|
|
||||||
|
|
||||||
// 获取设备数量
|
|
||||||
dto.setDeviceCount(getDeviceCountByAgentId(agent.getId()));
|
|
||||||
|
|
||||||
return dto;
|
|
||||||
}).collect(Collectors.toList());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -386,12 +386,8 @@ export default {
|
|||||||
// 搜索智能体
|
// 搜索智能体
|
||||||
searchAgent(keyword, searchType, callback) {
|
searchAgent(keyword, searchType, callback) {
|
||||||
RequestService.sendRequest()
|
RequestService.sendRequest()
|
||||||
.url(`${getServiceUrl()}/agent/list`)
|
.url(`${getServiceUrl()}/agent/list?keyword=${encodeURIComponent(keyword)}&searchType=${searchType}`)
|
||||||
.method('GET')
|
.method('GET')
|
||||||
.data({
|
|
||||||
keyword: keyword,
|
|
||||||
searchType: searchType // searchType: 'name' 或 'mac'
|
|
||||||
})
|
|
||||||
.success((res) => {
|
.success((res) => {
|
||||||
RequestService.clearRequestTime();
|
RequestService.clearRequestTime();
|
||||||
callback(res);
|
callback(res);
|
||||||
|
|||||||
Reference in New Issue
Block a user