Files
jusfutura/app/services/preference_service.py
T

32 lines
1.1 KiB
Python

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()