From ba1d14f40a1590930a36817ecd4b83cf9993101e Mon Sep 17 00:00:00 2001 From: LXW <1264174498@qq.com> Date: Wed, 18 Oct 2023 21:29:28 +0800 Subject: [PATCH] (improvement)(chat) show case filter empty result (#259) Co-authored-by: jolunoluo --- .../chat/service/impl/ChatServiceImpl.java | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/chat/core/src/main/java/com/tencent/supersonic/chat/service/impl/ChatServiceImpl.java b/chat/core/src/main/java/com/tencent/supersonic/chat/service/impl/ChatServiceImpl.java index 723f9c2e1..220d10bce 100644 --- a/chat/core/src/main/java/com/tencent/supersonic/chat/service/impl/ChatServiceImpl.java +++ b/chat/core/src/main/java/com/tencent/supersonic/chat/service/impl/ChatServiceImpl.java @@ -163,12 +163,28 @@ public class ChatServiceImpl implements ChatService { @Override public ShowCaseResp queryShowCase(PageQueryInfoReq pageQueryInfoReq, int agentId) { ShowCaseResp showCaseResp = new ShowCaseResp(); + showCaseResp.setCurrent(pageQueryInfoReq.getCurrent()); + showCaseResp.setPageSize(pageQueryInfoReq.getPageSize()); List queryResps = chatQueryRepository.queryShowCase(pageQueryInfoReq, agentId); + if (CollectionUtils.isEmpty(queryResps)) { + return showCaseResp; + } + queryResps.removeIf(queryResp -> { + if (queryResp.getQueryResult() == null) { + return true; + } + if (queryResp.getQueryResult().getResponse() != null) { + return false; + } + if (CollectionUtils.isEmpty(queryResp.getQueryResult().getQueryResults())) { + return true; + } + Map data = queryResp.getQueryResult().getQueryResults().get(0); + return CollectionUtils.isEmpty(data); + }); Map> showCaseMap = queryResps.stream() .collect(Collectors.groupingBy(QueryResp::getChatId)); showCaseResp.setShowCaseMap(showCaseMap); - showCaseResp.setCurrent(pageQueryInfoReq.getCurrent()); - showCaseResp.setPageSize(pageQueryInfoReq.getPageSize()); return showCaseResp; }