diff --git a/app/backend/dummy_data.py b/app/backend/dummy_data.py index fe3755682e8f6af1a981e04d458c00090e082304..07fa31d7735a17e6ff45807f093b98ceb1925ad3 100644 --- a/app/backend/dummy_data.py +++ b/app/backend/dummy_data.py @@ -31,6 +31,19 @@ def insert_dummy_data(session: Session): print("Dummy data already exists, skipping insertion") return + # Create admin user first + if not session.exec(select(User).where(User.role == "admin")).first(): + admin_user = User( + username="admin", + email="admin@example.com", + password=hash_password("admin"), + phone_number="1234567890", + role="admin", + ) + session.add(admin_user) + session.commit() + print("Default admin user created successfully!") + if not session.exec(select(User)).first(): users = [ User( diff --git a/app/backend/scripts/__init__.py b/app/backend/scripts/__init__.py deleted file mode 100644 index d089d7f8cf9257c24fd29ef9ab1b7d17988c7b13..0000000000000000000000000000000000000000 --- a/app/backend/scripts/__init__.py +++ /dev/null @@ -1,2 +0,0 @@ -# Scripts for backend initialization and maintenance -from .admin_init import init_admin \ No newline at end of file diff --git a/app/backend/scripts/admin_init.py b/app/backend/scripts/admin_init.py deleted file mode 100644 index 5a52ec5d0d2c1cf0d936b00a1a2a50701e13b785..0000000000000000000000000000000000000000 --- a/app/backend/scripts/admin_init.py +++ /dev/null @@ -1,47 +0,0 @@ -import sys -import os - -# Add the parent directory to the path to allow importing from the backend -sys.path.append( - os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) -) - -from backend.database import get_session, engine -from backend.models.models import SQLModel, User -from backend.utils.hashing import hash_password -from sqlmodel import select, Session - - -def init_admin(): - """Initialize a default admin user if no admin user exists""" - print("Initializing admin user...") - - # Create all tables if they don't exist - SQLModel.metadata.create_all(engine) - - with Session(engine) as session: - # Check if admin user already exists - admin = session.exec(select(User).where(User.role == "admin")).first() - - if admin: - print("Admin user already exists.") - return - - print("Creating default admin user...") - # Create default admin user with username and password both "admin" - hashed_password = hash_password("admin") - admin_user = User( - username="admin", - email="admin@example.com", - password=hashed_password, - phone_number="1234567890", - role="admin", - ) - - session.add(admin_user) - session.commit() - print("Default admin user created successfully!") - - -if __name__ == "__main__": - init_admin() diff --git a/requirements.txt b/requirements.txt index 8bce77cb9555277ac11381eadb381a2ddc28e46e..a9d3dfb1d98fe88cebd319979cae7b7c670868cf 100644 Binary files a/requirements.txt and b/requirements.txt differ diff --git a/run_app.py b/run_app.py index e6c697f2d1706070b8f3f9589ce4c8c094618b13..523ca5b5dfc9c244f2bc780dcd31179b840aaaa0 100644 --- a/run_app.py +++ b/run_app.py @@ -2,7 +2,6 @@ import threading import uvicorn from app.backend.main import app # Your FastAPI app import os -from app.backend.scripts.admin_init import init_admin def run_fastapi(): @@ -14,11 +13,6 @@ def start_tkinter_app(): if __name__ == "__main__": - # Initialize admin user - print("Initializing admin user...") - init_admin() - print("Admin initialization complete!") - # Start FastAPI in a separate thread fastapi_thread = threading.Thread(target=run_fastapi, daemon=True) fastapi_thread.start()