jack před 1 měsícem
rodič
revize
a11f7755d2
1 změnil soubory, kde provedl 13 přidání a 6 odebrání
  1. 13 6
      app/services/file/impl/r2r_file.py

+ 13 - 6
app/services/file/impl/r2r_file.py

@@ -73,12 +73,19 @@ class R2RFileService(OSSFileService):
         query: str, file_keys: List[str], folder_keys: List[str] = None
     ) -> dict:
         files = {}
-        filters = {
-            "$or": [
-                {"file_key": {"$in": file_keys}},
-                {"document_id": {"$in": file_keys}},
-            ]
-        }
+        file_key = {"$in": []}
+        document_id = {"$in": []}
+        filters = {"$or": []}
+        for key in file_keys:
+            if len(key) == 36:
+                document_id["$in"].append(key)
+            else:
+                file_key["$in"].append(key)
+        if len(document_id["$in"]) > 0:
+            filters["$or"].append(document_id)
+        if len(file_key["$in"]) > 0:
+            filters["$or"].append(file_key)
+
         if folder_keys:
             filters = filters["$or"].append(
                 {"collection_ids": {"$in": folder_keys}}