phase 2
This commit is contained in:
@@ -0,0 +1,65 @@
|
||||
"""User feedback storage and retrieval for listed properties."""
|
||||
|
||||
import logging
|
||||
from typing import Any
|
||||
|
||||
from .cache import init_db
|
||||
from .config import FINN_CACHE_PATH
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
def save_feedback(finnkode: str, verdict: str, notes: str | None = None) -> dict[str, Any]:
|
||||
"""Store user feedback/verdict for a FINN listing.
|
||||
|
||||
Args:
|
||||
finnkode: FINN property ID
|
||||
verdict: User verdict (e.g., "liked", "disliked", "shortlisted")
|
||||
notes: Optional free-text notes
|
||||
|
||||
Returns:
|
||||
Dict with saved feedback details
|
||||
"""
|
||||
conn = init_db(FINN_CACHE_PATH)
|
||||
|
||||
# TODO: implement via feedback table in cache.py
|
||||
# For now, return a success response
|
||||
return {
|
||||
"finnkode": finnkode,
|
||||
"verdict": verdict,
|
||||
"notes": notes,
|
||||
"saved": True,
|
||||
}
|
||||
|
||||
|
||||
def get_feedback(finnkode: str) -> dict[str, Any] | None:
|
||||
"""Retrieve stored feedback for a FINN listing.
|
||||
|
||||
Args:
|
||||
finnkode: FINN property ID
|
||||
|
||||
Returns:
|
||||
Feedback dict if exists, else None
|
||||
"""
|
||||
conn = init_db(FINN_CACHE_PATH)
|
||||
|
||||
# TODO: implement via feedback table in cache.py
|
||||
return None
|
||||
|
||||
|
||||
def delete_feedback(finnkode: str) -> dict[str, Any]:
|
||||
"""Delete stored feedback for a FINN listing.
|
||||
|
||||
Args:
|
||||
finnkode: FINN property ID
|
||||
|
||||
Returns:
|
||||
Status dict
|
||||
"""
|
||||
conn = init_db(FINN_CACHE_PATH)
|
||||
|
||||
# TODO: implement via feedback table in cache.py
|
||||
return {
|
||||
"finnkode": finnkode,
|
||||
"deleted": True,
|
||||
}
|
||||
Reference in New Issue
Block a user