from db import SessionLocal from models import Preferences class PreferenceService: def get_preferences(self, user_id: str) -> dict: db = SessionLocal() prefs = db.query(Preferences).filter_by(user_id=user_id).first() if not prefs: prefs = Preferences(user_id=user_id) db.add(prefs) db.commit() db.close() return { "preferred_mode": prefs.preferred_mode, "auto_search": prefs.auto_search, "auto_monitoring": prefs.auto_monitoring, "preferred_export": prefs.preferred_export, "likes_suggestions": prefs.likes_suggestions, "likes_quick_actions": prefs.likes_quick_actions, } def update_preferences(self, user_id: str, data: dict): db = SessionLocal() prefs = db.query(Preferences).filter_by(user_id=user_id).first() if not prefs: prefs = Preferences(user_id=user_id) db.add(prefs) for k, v in data.items(): setattr(prefs, k, v) db.commit() db.close()