Ver Fonte

Revert "fix: an issue of keyword search feature in application log list" (#7949)

takatost há 7 meses atrás
pai
commit
161cc0cda9
1 ficheiros alterados com 15 adições e 12 exclusões
  1. 15 12
      api/controllers/console/app/conversation.py

+ 15 - 12
api/controllers/console/app/conversation.py

@@ -173,18 +173,21 @@ class ChatConversationApi(Resource):
 
         if args["keyword"]:
             keyword_filter = "%{}%".format(args["keyword"])
-            message_subquery = (
-                db.session.query(Message.conversation_id)
-                .filter(or_(Message.query.ilike(keyword_filter), Message.answer.ilike(keyword_filter)))
-                .subquery()
-            )
-            query = query.join(subquery, subquery.c.conversation_id == Conversation.id).filter(
-                or_(
-                    Conversation.id.in_(message_subquery),
-                    Conversation.name.ilike(keyword_filter),
-                    Conversation.introduction.ilike(keyword_filter),
-                    subquery.c.from_end_user_session_id.ilike(keyword_filter),
-                ),
+            query = (
+                query.join(
+                    Message,
+                    Message.conversation_id == Conversation.id,
+                )
+                .join(subquery, subquery.c.conversation_id == Conversation.id)
+                .filter(
+                    or_(
+                        Message.query.ilike(keyword_filter),
+                        Message.answer.ilike(keyword_filter),
+                        Conversation.name.ilike(keyword_filter),
+                        Conversation.introduction.ilike(keyword_filter),
+                        subquery.c.from_end_user_session_id.ilike(keyword_filter),
+                    ),
+                )
             )
 
         account = current_user