33 lines
1.3 KiB
Python
33 lines
1.3 KiB
Python
import firebase_admin
|
|
from firebase_admin import credentials, firestore
|
|
import os
|
|
from google.cloud.firestore_v1.base_query import FieldFilter
|
|
|
|
key_path = os.getcwd() + '/scripts/keys/hpos-preprod-firebase-adminsdk-d6jjt-ae42ad0f67.json'
|
|
# Replace 'path/to/your/serviceAccountKey.json' with the actual path to your service account JSON file
|
|
cred = credentials.Certificate(key_path)
|
|
firebase_admin.initialize_app(cred)
|
|
def move_documents(source_collection):
|
|
db = firestore.client()
|
|
|
|
# Get all documents from the source collection
|
|
source_docs = db.collection(source_collection).where(filter=FieldFilter("testStatus", "==", False)).stream()
|
|
for doc in source_docs:
|
|
# Extract the document ID
|
|
doc_id = doc.id
|
|
print(doc_id)
|
|
|
|
# Get the document data
|
|
doc_data = doc.to_dict()
|
|
|
|
try:
|
|
# Delete the document from the source collection
|
|
db.collection(source_collection).document(doc_id).update({"testStatus": True})
|
|
print(f"Document with ID '{doc_id}' updated")
|
|
except Exception as e:
|
|
print(f"Error deleting document with ID '{doc_id}' from the source collection: {e}")
|
|
|
|
if __name__ == "__main__":
|
|
# Replace 'source_collection' and 'destination_collection' with your collection names
|
|
move_documents("patientData")
|