refactor(headless): 优化维度值映射处理逻辑并添加查询响应中的代理ID字段
Some checks failed
supersonic CentOS CI / build (21) (push) Has been cancelled
supersonic mac CI / build (21) (push) Has been cancelled
supersonic ubuntu CI / build (21) (push) Has been cancelled
supersonic windows CI / build (21) (push) Has been cancelled

- 简化了维度值映射列表的删除操作代码结构
- 移除了不必要的空行以提高代码可读性
- 在查询响应对象中添加了agentId字段
- 优化了流式处理的链式调用方式
- 调整了数据集服务查询方法的参数构建方式
This commit is contained in:
jerryjzhang
2026-04-01 14:24:31 +08:00
parent 507af43b73
commit 8a4bccab10
3 changed files with 15 additions and 17 deletions

View File

@@ -13,6 +13,7 @@ public class QueryResp {
private Long questionId; private Long questionId;
private Date createTime; private Date createTime;
private Long chatId; private Long chatId;
private Integer agentId;
private Integer score; private Integer score;
private String feedback; private String feedback;
private String queryText; private String queryText;

View File

@@ -490,14 +490,13 @@ public class DimensionServiceImpl extends ServiceImpl<DimensionDOMapper, Dimensi
// 收集需要删除的 valuesalias 为空的) // 收集需要删除的 valuesalias 为空的)
Set<String> valuesToDelete = req.getDimValueMaps().stream() Set<String> valuesToDelete = req.getDimValueMaps().stream()
.filter(dimValueMap -> CollectionUtils.isEmpty(dimValueMap.getAlias())) .filter(dimValueMap -> CollectionUtils.isEmpty(dimValueMap.getAlias()))
.map(DimValueMap::getValue) .map(DimValueMap::getValue).collect(Collectors.toSet());
.collect(Collectors.toSet());
// 一次性删除所有需要删除的数据 // 一次性删除所有需要删除的数据
if (!valuesToDelete.isEmpty()) { if (!valuesToDelete.isEmpty()) {
dimValueMapList = dimValueMapList.stream() dimValueMapList =
.filter(map -> !valuesToDelete.contains(map.getValue())) dimValueMapList.stream().filter(map -> !valuesToDelete.contains(map.getValue()))
.collect(Collectors.toList()); .collect(Collectors.toList());
// 同时从 existingMap 中移除 // 同时从 existingMap 中移除
existingMap.keySet().removeAll(valuesToDelete); existingMap.keySet().removeAll(valuesToDelete);
} }

View File

@@ -413,13 +413,11 @@ public class SchemaServiceImpl implements SchemaService {
public List<ItemResp> getDomainDataSetTree() { public List<ItemResp> getDomainDataSetTree() {
List<DomainResp> domainResps = domainService.getDomainList(); List<DomainResp> domainResps = domainService.getDomainList();
List<ItemResp> itemResps = domainResps.stream().map(domain -> new ItemResp(domain.getId(), List<ItemResp> itemResps = domainResps.stream().map(domain -> new ItemResp(domain.getId(),
domain.getParentId(), domain.getName(), TypeEnums.DOMAIN)) domain.getParentId(), domain.getName(), TypeEnums.DOMAIN)).toList();
.toList();
Map<Long, ItemResp> itemRespMap = Map<Long, ItemResp> itemRespMap =
itemResps.stream().collect(Collectors.toMap(ItemResp::getId, item -> item)); itemResps.stream().collect(Collectors.toMap(ItemResp::getId, item -> item));
List<DataSetResp> dataSetResps = dataSetService.getDataSetList(MetaFilter.builder() List<DataSetResp> dataSetResps = dataSetService
.status(StatusEnum.ONLINE.getCode()) .getDataSetList(MetaFilter.builder().status(StatusEnum.ONLINE.getCode()).build());
.build());
for (DataSetResp dataSetResp : dataSetResps) { for (DataSetResp dataSetResp : dataSetResps) {
ItemResp itemResp = itemRespMap.get(dataSetResp.getDomainId()); ItemResp itemResp = itemRespMap.get(dataSetResp.getDomainId());
if (itemResp != null) { if (itemResp != null) {