them seed data

parent 4a0a9896
import os
from pymongo import MongoClient
from dotenv import load_dotenv
# Load biến môi trường từ file .env
load_dotenv()
MONGO_URI = os.getenv("MONGO_URI", "mongodb://localhost:27017/")
MONGO_DB_NAME = os.getenv("MONGO_DB_NAME", "meu_rca")
# 5 Dữ liệu mẫu dành riêng cho project "meu-marketing"
MARKETING_PROJECTS = [
{
"project_id": "meu-marketing",
"name": "Chiến dịch Chào Hè 2026",
"team": "Digital Marketing",
"status": "active",
"budget": 50000,
"is_deleted": False
},
{
"project_id": "meu-marketing",
"name": "Tối ưu hóa SEO Website",
"team": "Content Marketing",
"status": "planning",
"budget": 10000,
"is_deleted": False
},
{
"project_id": "meu-marketing",
"name": "Booking KOLs Tiktok",
"team": "Social Media",
"status": "completed",
"budget": 120000,
"is_deleted": False
},
{
"project_id": "meu-marketing",
"name": "Khảo sát thị trường Gen Z",
"team": "Market Research",
"status": "planning",
"budget": 30000,
"is_deleted": False
},
{
"project_id": "meu-marketing",
"name": "Chuỗi Email Khách hàng VIP",
"team": "CRM",
"status": "active",
"budget": 5000,
"is_deleted": False
}
]
def seed_marketing():
print("⏳ Đang kết nối MongoDB để cấy dữ liệu Marketing...")
try:
# Kết nối DB
client = MongoClient(MONGO_URI, serverSelectionTimeoutMS=5000)
db = client[MONGO_DB_NAME]
# BẢO VỆ: Chỉ xóa data cũ của project "meu-marketing", giữ nguyên data của "meu-rca-nextjs"
deleted = db.projects.delete_many({"project_id": "meu-marketing"})
print(f"🧹 Đã dọn dẹp {deleted.deleted_count} bản ghi cũ của meu-marketing.")
# Chèn 5 data mới
result = db.projects.insert_many(MARKETING_PROJECTS)
print(f"✅ Đã cấy thành công {len(result.inserted_ids)} dự án Marketing mẫu!")
print("🚀 Hệ thống đã sẵn sàng để AI Agent test!")
except Exception as e:
print(f"❌ Lỗi khi cấy dữ liệu: {e}")
if __name__ == "__main__":
seed_marketing()
\ No newline at end of file
import os
from pymongo import MongoClient
from dotenv import load_dotenv
load_dotenv()
MONGO_URI = os.getenv("MONGO_URI", "mongodb://localhost:27017/")
MONGO_DB_NAME = os.getenv("MONGO_DB_NAME", "meu_rca")
# Dữ liệu mẫu dành riêng cho project "meu-rca-nextjs"
MOCK_PROJECTS = [
{
"project_id": "meu-rca-nextjs",
"name": "Hệ thống phân tích RCA",
"team": "Team Backend",
"status": "active",
"is_deleted": False
},
{
"project_id": "meu-rca-nextjs",
"name": "Tích hợp AI Agent",
"team": "Team AI",
"status": "pending",
"is_deleted": False
}
]
def seed():
print("⏳ Đang kết nối MongoDB để cấy dữ liệu mẫu...")
try:
client = MongoClient(MONGO_URI, serverSelectionTimeoutMS=5000)
db = client[MONGO_DB_NAME]
# Xóa data cũ (nếu có) để tránh chèn trùng lặp khi chạy nhiều lần
db.projects.delete_many({"project_id": "meu-rca-nextjs"})
# Chèn data mới
result = db.projects.insert_many(MOCK_PROJECTS)
print(f"✅ Đã tạo Database mới và cấy thành công {len(result.inserted_ids)} dự án mẫu!")
print("Bây giờ bạn có thể dùng AI Agent để test thao tác Select, Update, Delete.")
except Exception as e:
print(f"❌ Lỗi: Không thể kết nối hoặc cấy dữ liệu. Chi tiết: {e}")
if __name__ == "__main__":
seed()
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment