diff --git a/app/backend/dummy_data.py b/app/backend/dummy_data.py index 07fa31d7735a17e6ff45807f093b98ceb1925ad3..0cfe6e282477c65528fe19ebac5087f385ab7d61 100644 --- a/app/backend/dummy_data.py +++ b/app/backend/dummy_data.py @@ -44,37 +44,44 @@ def insert_dummy_data(session: Session): session.commit() print("Default admin user created successfully!") - if not session.exec(select(User)).first(): - users = [ - User( - username="string", - email="user@example.com", - password=hash_password("string"), - phone_number="1234567890", - role="customer", - ), - User( - username="shop_owner", - email="owner@example.com", - password=hash_password("string"), - phone_number="0987654321", - role="shop_owner", - ), - ] - session.add_all(users) + # Create regular users + users = {} + if not session.exec(select(User).where(User.email == "user@example.com")).first(): + customer = User( + username="string", + email="user@example.com", + password=hash_password("string"), + phone_number="1234567890", + role="customer", + ) + session.add(customer) session.commit() + users["customer"] = customer + if not session.exec(select(User).where(User.email == "owner@example.com")).first(): + owner = User( + username="shop_owner", + email="owner@example.com", + password=hash_password("string"), + phone_number="0987654321", + role="shop_owner", + ) + session.add(owner) + session.commit() + users["owner"] = owner + + # Create payments after users if not session.exec(select(Payment)).first(): payments = [ Payment( - user_id=1, + user_id=users["customer"].id, payment_method="Visa", card_number="**** **** **** 1234", cvv="123", expiry_date="12/25", ), Payment( - user_id=1, + user_id=users["customer"].id, payment_method="MasterCard", card_number="**** **** **** 5678", cvv="456", @@ -84,10 +91,11 @@ def insert_dummy_data(session: Session): session.add_all(payments) session.commit() - if not session.exec(select(Shop)).first(): + # Create shops with valid owner_id + if not session.exec(select(Shop)).first() and "owner" in users: shops = [ Shop( - owner_id=2, + owner_id=users["owner"].id, name="Google HQ", description="Google Headquarters", image_url="app/static/default/default_shop.png", @@ -161,6 +169,7 @@ def insert_dummy_data(session: Session): ] session.add_all(shops) session.commit() + print("Dummy shops created successfully!") if not session.exec(select(Category)).first(): categories = [Category(name=f"Category{i}") for i in range(1, 6)]